Skip to content

Commit cf37169

Browse files
committed
Use mock for android build
1 parent 759c622 commit cf37169

File tree

6 files changed

+59
-12
lines changed

6 files changed

+59
-12
lines changed

.buildbot/android/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ RUN apt-get -y update -qq \
2222
RUN apt-get -y install -qq --no-install-recommends openjdk-17-jdk \
2323
&& apt-get -y autoremove
2424

25-
RUN pip install pip install buildozer cython virtualenv
25+
RUN pip install buildozer cython virtualenv
2626

2727

2828
ENV ANDROID_NDK_HOME="${ANDROID_HOME}/android-ndk"

.buildbot/android/build.sh

+12
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,18 @@
11
#!/bin/bash
22
export LC_ALL=en_US.UTF-8
33
export LANG=en_US.UTF-8
4+
5+
# buildozer OOM workaround
6+
mkdir -p ~/.gradle
7+
echo "org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8" \
8+
> ~/.gradle/gradle.properties
9+
10+
# workaround for symlink
11+
rm -rf src/pybitmessage
12+
mkdir -p src/pybitmessage
13+
cp src/*.py src/pybitmessage
14+
cp -r src/bitmessagekivy src/backend src/mockbm src/pybitmessage
15+
416
pushd packages/android
517

618
BUILDMODE=debug

packages/android/buildozer.spec

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ package.domain = at.bitmessage
1313
source.dir = ../../src
1414

1515
# (list) Source files to include (let empty to include all the files)
16-
source.include_exts = py,png,jpg,kv,atlas,tflite,sql
16+
source.include_exts = py,png,jpg,kv,atlas,tflite,sql,json
1717

1818
# (list) List of inclusions using pattern matching
1919
#source.include_patterns = assets/*,images/*.png
@@ -36,7 +36,7 @@ version = 0.1.1
3636

3737
# (list) Application requirements
3838
# comma separated e.g. requirements = sqlite3,kivy
39-
requirements = python3,kivy
39+
requirements = python3,kivy,sqlite3,kivymd==1.0.2,Pillow,opencv,kivy-garden.qrcode,qrcode,typing_extensions,libpng
4040

4141
# (str) Custom source folders for requirements
4242
# Sets custom source for any requirements with recipes

src/main-android-live.py

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
"""This module is for thread start."""
2+
import state
3+
import sys
4+
from bitmessagemain import main
5+
from termcolor import colored
6+
print(colored('kivy is not supported at the moment for this version..', 'red'))
7+
sys.exit()
8+
9+
10+
if __name__ == '__main__':
11+
state.kivy = True
12+
print("Kivy Loading......")
13+
main()

src/main.py

+27-9
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,31 @@
1-
"""This module is for thread start."""
1+
# pylint: disable=unused-import, wrong-import-position, ungrouped-imports
2+
# flake8: noqa:E401, E402
3+
4+
"""Mock kivy app with mock threads."""
5+
6+
import os
7+
from kivy.config import Config
8+
from mockbm import multiqueue
29
import state
3-
import sys
4-
from bitmessagemain import main
5-
from termcolor import colored
6-
print(colored('kivy is not supported at the moment for this version..', 'red'))
7-
sys.exit()
10+
11+
from mockbm.class_addressGenerator import FakeAddressGenerator # noqa:E402
12+
from bitmessagekivy.mpybit import NavigateApp # noqa:E402
13+
from mockbm import network # noqa:E402
14+
15+
stats = network.stats
16+
objectracker = network.objectracker
17+
18+
19+
def main():
20+
"""main method for starting threads"""
21+
addressGeneratorThread = FakeAddressGenerator()
22+
addressGeneratorThread.daemon = True
23+
addressGeneratorThread.start()
24+
state.kivyapp = NavigateApp()
25+
state.kivyapp.run()
26+
addressGeneratorThread.stopThread()
827

928

10-
if __name__ == '__main__':
11-
state.kivy = True
12-
print("Kivy Loading......")
29+
if __name__ == "__main__":
30+
os.environ['INSTALL_TESTS'] = "True"
1331
main()

src/pyelliptic/openssl.py

+4
Original file line numberDiff line numberDiff line change
@@ -805,6 +805,10 @@ def loadOpenSSL():
805805
'libcrypto.dylib', '/usr/local/opt/openssl/lib/libcrypto.dylib'])
806806
elif 'win32' in sys.platform or 'win64' in sys.platform:
807807
libdir.append('libeay32.dll')
808+
# kivy
809+
elif 'ANDROID_ARGUMENT' in environ:
810+
libdir.append('libcrypto1.1.so')
811+
libdir.append('libssl1.1.so')
808812
else:
809813
libdir.append('libcrypto.so')
810814
libdir.append('libssl.so')

0 commit comments

Comments
 (0)