-
Notifications
You must be signed in to change notification settings - Fork 2k
Description
From @Hubro on May 19, 2016 14:49
I have crystax NDK 10.3.1 installed, and a completely clean Python 3.5.1 virtualenv with no packages installed except pip and setuptools.
I run:
pip install cython==0.21
pip install -r req.txt
Here is req.txt:
appdirs==1.4.0
buildozer==0.32
colorama==0.3.7
Cython==0.21
Jinja2==2.8
sh==1.11
six==1.10.0
kivy==1.9.1
And here is main.py:
from kivy.app import App
from kivy.uix.button import Button
class SignalApp(App):
def build(self):
return Button(text="Signal app!")
SignalApp().run()
It runs fine using python main.py.
Then:
buildozer android_new debug
buildozer android_new deploy
buildozer android_new run
Here is my buildozer.spec:
[app]
# (str) Title of your application
title = Kvantel Signal App
# (str) Package name
package.name = signal_app
# (str) Package domain (needed for android/ios packaging)
package.domain = org.kvantel
# (str) Source code where the main.py live
source.dir = .
# (list) Source files to include (let empty to include all the files)
source.include_exts = py,png,jpg,kv,atlas
# (list) List of inclusions using pattern matching
#source.include_patterns = assets/*,images/*.png
# (list) Source files to exclude (let empty to not exclude anything)
#source.exclude_exts = spec
# (list) List of directory to exclude (let empty to not exclude anything)
#source.exclude_dirs = tests, bin
# (list) List of exclusions using pattern matching
#source.exclude_patterns = license,images/*/*.jpg
# (str) Application versioning (method 1)
version = 0.1
# (str) Application versioning (method 2)
# version.regex = __version__ = ['"](.*)['"]
# version.filename = %(source.dir)s/main.py
# (list) Application requirements
# comma seperated e.g. requirements = sqlite3,kivy
requirements = python3crystax,kivy
# (str) Custom source folders for requirements
# Sets custom source for any requirements with recipes
# requirements.source.kivy = ../../kivy
# (list) Garden requirements
#garden_requirements =
# (str) Presplash of the application
#presplash.filename = %(source.dir)s/data/presplash.png
# (str) Icon of the application
#icon.filename = %(source.dir)s/data/icon.png
# (str) Supported orientation (one of landscape, portrait or all)
orientation = landscape
# (list) List of service to declare
#services = NAME:ENTRYPOINT_TO_PY,NAME2:ENTRYPOINT2_TO_PY
#
# Android specific
#
# (bool) Indicate if the application should be fullscreen or not
fullscreen = 0
# (list) Permissions
#android.permissions = INTERNET
# (int) Android API to use
#android.api = 19
# (int) Minimum API required
#android.minapi = 9
# (int) Android SDK version to use
#android.sdk = 20
# (str) Android NDK version to use
#android.ndk = 10.3.1
# (bool) Use --private data storage (True) or --dir public storage (False)
#android.private_storage = True
# (str) Android NDK directory (if empty, it will be automatically downloaded.)
android.ndk_path = /home/tomas/crystax-ndk-10.3.1
# (str) Android SDK directory (if empty, it will be automatically downloaded.)
#android.sdk_path =
# (str) ANT directory (if empty, it will be automatically downloaded.)
#android.ant_path =
# (str) python-for-android git clone directory (if empty, it will be automatically cloned from github)
#android.p4a_dir =
# (list) python-for-android whitelist
#android.p4a_whitelist =
# (bool) If True, then skip trying to update the Android sdk
# This can be useful to avoid excess Internet downloads or save time
# when an update is due and you just want to test/build your package
# android.skip_update = False
# (str) Android entry point, default is ok for Kivy-based app
#android.entrypoint = org.renpy.android.PythonActivity
# (list) List of Java .jar files to add to the libs so that pyjnius can access
# their classes. Don't add jars that you do not need, since extra jars can slow
# down the build process. Allows wildcards matching, for example:
# OUYA-ODK/libs/*.jar
#android.add_jars = foo.jar,bar.jar,path/to/more/*.jar
# (list) List of Java files to add to the android project (can be java or a
# directory containing the files)
#android.add_src =
# (str) python-for-android branch to use, if not master, useful to try
# not yet merged features.
#android.branch = master
# (str) OUYA Console category. Should be one of GAME or APP
# If you leave this blank, OUYA support will not be enabled
#android.ouya.category = GAME
# (str) Filename of OUYA Console icon. It must be a 732x412 png image.
#android.ouya.icon.filename = %(source.dir)s/data/ouya_icon.png
# (str) XML file to include as an intent filters in <activity> tag
#android.manifest.intent_filters =
# (list) Android additionnal libraries to copy into libs/armeabi
#android.add_libs_armeabi = libs/android/*.so
#android.add_libs_armeabi_v7a = libs/android-v7/*.so
#android.add_libs_x86 = libs/android-x86/*.so
#android.add_libs_mips = libs/android-mips/*.so
# (bool) Indicate whether the screen should stay on
# Don't forget to add the WAKE_LOCK permission if you set this to True
#android.wakelock = False
# (list) Android application meta-data to set (key=value format)
#android.meta_data =
# (list) Android library project to add (will be added in the
# project.properties automatically.)
#android.library_references =
# (str) Android logcat filters to use
#android.logcat_filters = *:S python:D
# (bool) Copy library instead of making a libpymodules.so
#android.copy_libs = 1
[buildozer]
# (int) Log level (0 = error only, 1 = info, 2 = debug (with command output))
log_level = 2
# (int) Display warning if buildozer is run as root (0 = False, 1 = True)
warn_on_root = 1
# (str) Path to build artifact storage, absolute or relative to spec file
# build_dir = ./.buildozer
# (str) Path to build output (i.e. .apk, .ipa) storage
# bin_dir = ./bin
It takes a while, but the build succeeds and deploys the app.
When the app runs on Android, it says "Loading..." for a second and then closes. If I try to bring the app to the foreground it says "Unfortunately, Kvantel Signal App has stopped."
Logcat output when running the app:
05-19 16:46:35.616 1752 2004 I art : Starting a blocking GC Explicit
05-19 16:46:35.833 1752 2004 I art : Explicit concurrent mark sweep GC freed 104234(7MB) AllocSpace objects, 47(1380KB) LOS objects, 30% free, 36MB/52MB, paused 1.054ms total 216.165ms
05-19 16:46:36.156 730 730 I MSM-irqbalance: Decided to move IRQ159 from CPU5 [P:0] to CPU2 [P:1] (banned)
05-19 16:46:36.381 19752 19752 I Process : Sending signal. PID: 19752 SIG: 9
05-19 16:46:36.409 2967 2967 V PhoneStatusBar: setLightsOn(true)
05-19 16:46:36.414 1752 3484 D GraphicsStats: Buffer count: 5
05-19 16:46:36.420 1752 2980 I ActivityManager: Process org.kvantel.signal_app (pid 19752) has died
05-19 16:46:36.439 19873 19873 I art : Late-enabling -Xcheck:jni
05-19 16:46:36.441 1752 2980 V BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@8949e70
05-19 16:46:36.442 1752 2980 I ActivityManager: Start proc 19873:org.kvantel.signal_app/u0a331 for activity org.kvantel.signal_app/org.kivy.android.PythonActivity
05-19 16:46:36.481 19873 19873 V PythonActivity: My oncreate running
05-19 16:46:36.481 19873 19873 V SDL : getting identifier
05-19 16:46:36.482 19873 19873 V SDL : kind is drawable and name presplash
05-19 16:46:36.482 19873 19873 V SDL : result is 2130837506
05-19 16:46:36.491 19873 19873 V PythonActivity: Ready to unpack
05-19 16:46:36.491 19873 19873 V PythonActivity: UNPACKING!!! private files
05-19 16:46:36.491 19873 19873 V SDL : asked to get string private_version
05-19 16:46:36.491 19873 19873 V SDL : getting identifier
05-19 16:46:36.491 19873 19873 V SDL : kind is string and name private_version
05-19 16:46:36.491 19873 19873 V SDL : result is 2130968577
05-19 16:46:36.491 19873 19873 V PythonActivity: Data version is 1463668406.8294966
05-19 16:46:36.492 19873 19873 V PythonActivity: About to do super onCreate
05-19 16:46:36.492 19873 19873 V SDL : Device: E5823
05-19 16:46:36.492 19873 19873 V SDL : Model: E5823
05-19 16:46:36.492 19873 19873 V SDL : onCreate():null
05-19 16:46:36.505 19873 19873 V PythonUtil: Failed to load _io.so or unicodedata.so...but that's okay.
05-19 16:46:36.505 19873 19873 V PythonUtil: Unsatisfied linker when loading ctypes
05-19 16:46:36.505 19873 19873 V PythonUtil: Loaded everything!
05-19 16:46:36.508 19873 19873 V PythonActivity: Did super onCreate
05-19 16:46:36.508 19873 19873 V PythonActivity: Setting env vars for start.c and Python to use
05-19 16:46:36.508 19873 19873 V PythonActivity: Access to our meta-data...
05-19 16:46:36.509 19873 19873 I PythonActivity: Surface will NOT be transparent
05-19 16:46:36.509 19873 19873 V SDL : onResume()
05-19 16:46:36.514 19873 19886 D OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true
05-19 16:46:36.544 19873 19886 I Adreno : QUALCOMM build : 1c8141a, I8f3b63409d
05-19 16:46:36.544 19873 19886 I Adreno : Build Date : 01/12/16
05-19 16:46:36.544 19873 19886 I Adreno : OpenGL ES Shader Compiler Version: XE031.06.00.02
05-19 16:46:36.544 19873 19886 I Adreno : Local Branch :
05-19 16:46:36.544 19873 19886 I Adreno : Remote Branch : refs/tags/AU_LINUX_ANDROID_LA.BF64.1.2.2_RB4.06.00.00.180.011
05-19 16:46:36.544 19873 19886 I Adreno : Remote Branch : NONE
05-19 16:46:36.544 19873 19886 I Adreno : Reconstruct Branch : NOTHING
05-19 16:46:36.556 19873 19886 I OpenGLRenderer: Initialized EGL, version 1.4
05-19 16:46:36.578 1752 2004 W AppOps : Finishing op nesting under-run: uid 1000 pkg android code 24 time=1456845794313 duration=3670 nesting=0
05-19 16:46:36.581 19873 19873 V SDL : surfaceCreated()
05-19 16:46:36.581 19873 19873 V SDL : surfaceChanged()
05-19 16:46:36.581 19873 19873 V SDL : pixel format RGB_565
05-19 16:46:36.581 19873 19873 V SDL : Window size:1196x672
05-19 16:46:36.591 19873 19887 I SDL : SDL_Android_Init()
05-19 16:46:36.592 19873 19887 I SDL : SDL_Android_Init() finished!
05-19 16:46:36.592 19873 19887 I python : Initialize Python for Android
05-19 16:46:36.592 19873 19887 I python : Changing directory to the one provided by ANDROID_ARGUMENT
05-19 16:46:36.592 19873 19887 I python : /data/user/0/org.kvantel.signal_app/files
05-19 16:46:36.592 19873 19887 I python : Preparing to initialize python
05-19 16:46:36.592 19873 19887 I python : crystax_python exists
05-19 16:46:36.592 19873 19887 I python : calculated paths to be...
05-19 16:46:36.592 19873 19887 I python : /data/user/0/org.kvantel.signal_app/files/crystax_python/stdlib.zip:/data/user/0/org.kvantel.signal_app/files/crystax_python/modules
05-19 16:46:36.592 19873 19887 I python : set wchar paths...
05-19 16:46:36.624 19873 19873 V SDL : onWindowFocusChanged(): true
05-19 16:46:36.626 1752 2004 I ActivityManager: Displayed org.kvantel.signal_app/org.kivy.android.PythonActivity: +3s203ms (total +2m30s327ms)
05-19 16:46:36.626 1752 2004 I Timeline: Timeline: Activity_windows_visible id: ActivityRecord{7541fd4 u0 org.kvantel.signal_app/org.kivy.android.PythonActivity t2283} time:32437722
05-19 16:46:36.644 19873 19873 I Timeline: Timeline: Activity_idle id: android.os.BinderProxy@d6955fd time:32437740
05-19 16:46:36.780 19873 19887 I python : Initialized python
05-19 16:46:36.780 19873 19887 I python : AND: Init threads
05-19 16:46:36.781 19873 19887 I python : testing python print redirection
05-19 16:46:36.781 19873 19887 I python : Android path ['.', '/data/user/0/org.kvantel.signal_app/files/crystax_python/stdlib.zip', '/data/user/0/org.kvantel.signal_app/files/crystax_python/modules', '/data/user/0/org.kvantel.signal_app/files/crystax_python/site-packages']
05-19 16:46:36.782 19873 19887 I python : os.environ is environ({'PYTHON_NAME': 'python', 'ANDROID_ASSETS': '/system/app', 'SYSTEMSERVERCLASSPATH': '/system/framework/services.jar:/system/framework/ethernet-service.jar:/system/framework/wifi-service.jar', 'PYTHONHOME': '/data/user/0/org.kvantel.signal_app/files', 'ANDROID_DATA': '/data', 'ANDROID_ENTRYPOINT': 'main.pyo', 'ANDROID_ROOT': '/system', 'ANDROID_PRIVATE': '/data/user/0/org.kvantel.signal_app/files', 'ASEC_MOUNTPOINT': '/mnt/asec', 'EXTERNAL_STORAGE': '/sdcard', 'ANDROID_ARGUMENT': '/data/user/0/org.kvantel.signal_app/files', 'ANDROID_PROPERTY_WORKSPACE': '9,0', 'ANDROID_APP_PATH': '/data/user/0/org.kvantel.signal_app/files', 'ANDROID_STORAGE': '/storage', 'ANDROID_BOOTLOGO': '1', 'LD_PRELOAD': 'libNimsWrap.so', 'PYTHONPATH': '/data/user/0/org.kvantel.signal_app/files:/data/user/0/org.kvantel.signal_app/files/lib', 'PATH': '/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin', 'BOOTCLASSPATH': '/system/framework/core-libart.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/apache-xml.jar:/system/framework/org.apache.http.legacy.boot.jar:/system/framework/tcmiface.jar:/system/framework/WfdCommon.jar:/system/framework/oem-services.jar:/system/framework/com.qti.dpmframework.jar:/system/framework/dpmapi.jar:/system/framework/com.qti.location.sdk.jar:/system/framework/qcmediaplayer.jar:/system/framework/com.sonymobile.tvout.wifidisplay_impl.jar', 'ANDROID_SOCKET_zygote_secondary': '11'})
05-19 16:46:36.782 19873 19887 I python : Android kivy bootstrap done. __name__ is __main__
05-19 16:46:36.782 19873 19887 I python : AND: Ran string
05-19 16:46:36.782 19873 19887 I python : Run user program, change dir and execute entrypoint
05-19 16:46:36.782 19873 19887 I python : main.py
05-19 16:46:37.618 19873 19887 I python : [INFO ] [Logger ] Record log in /data/user/0/org.kvantel.signal_app/files/.kivy/logs/kivy_16-05-19_4.txt
05-19 16:46:37.618 19873 19887 I python : [INFO ] [Kivy ] v1.9.2-dev0
05-19 16:46:37.619 19873 19887 I python : [INFO ] [Python ] v3.5.0 (default, Dec 24 2015, 05:56:40)
05-19 16:46:37.619 19873 19887 I python : [GCC 5.3 20151204]
05-19 16:46:37.779 19873 19887 W linker : /data/data/org.kvantel.signal_app/files/crystax_python/site-packages/kivy/_event.so: is missing DT_SONAME will use basename as a replacement: "_event.so"
05-19 16:46:37.780 19873 19887 I python : Traceback (most recent call last):
05-19 16:46:37.780 19873 19887 I python : File "main.py", line 1, in <module>
05-19 16:46:37.781 19873 19887 I python : from kivy.app import App
05-19 16:46:37.781 19873 19887 I python : File "/data/user/0/org.kvantel.signal_app/files/crystax_python/site-packages/kivy/app.py", line 319, in <module>
05-19 16:46:37.782 19873 19887 I python : from kivy.base import runTouchApp, stopTouchApp
05-19 16:46:37.782 19873 19887 I python : File "/data/user/0/org.kvantel.signal_app/files/crystax_python/site-packages/kivy/base.py", line 30, in <module>
05-19 16:46:37.782 19873 19887 I python : from kivy.event import EventDispatcher
05-19 16:46:37.782 19873 19887 I python : File "/data/user/0/org.kvantel.signal_app/files/crystax_python/site-packages/kivy/event.py", line 8, in <module>
05-19 16:46:37.783 19873 19887 I python : import kivy._event
05-19 16:46:37.783 19873 19887 I python : ImportError: dlopen failed: cannot locate symbol "_Py_NoneStruct" referenced by "/data/data/org.kvantel.signal_app/files/crystax_python/site-packages/kivy/_event.so"...
05-19 16:46:37.812 19873 19887 I python : Python for android ended.
05-19 16:46:37.835 19873 19873 V SDL : onPause()
05-19 16:46:37.835 19873 19873 V SDL : nativePause()
05-19 16:46:37.868 1752 3499 I ActivityManager: Config changes=480 {1.0 242mcc5mnc en_US ldltr sw360dp w360dp h568dp 320dpi nrml port finger -keyb/v/h -nav/h s.41 skinPackageSeq.1}
05-19 16:46:37.881 1752 2855 I InputReader: Reconfiguring input devices. changes=0x00000004
05-19 16:46:37.881 1752 2855 I InputReader: Device reconfigured: id=5, name='clearpad', size 720x1280, orientation 0, mode 1, display id 0
05-19 16:46:37.892 19873 19873 V SDL : onWindowFocusChanged(): false
05-19 16:46:37.920 19873 19873 V SDL : surfaceChanged()
05-19 16:46:37.920 19873 19873 V SDL : pixel format RGB_565
05-19 16:46:37.921 19873 19873 V SDL : Window size:720x1136
05-19 16:46:37.928 19873 19894 I SDL : SDL_Android_Init()
05-19 16:46:37.928 19873 19894 I SDL : SDL_Android_Init() finished!
05-19 16:46:37.928 19873 19894 I python : Initialize Python for Android
05-19 16:46:37.928 19873 19894 I python : Changing directory to the one provided by ANDROID_ARGUMENT
05-19 16:46:37.928 19873 19894 I python : /data/user/0/org.kvantel.signal_app/files
05-19 16:46:37.928 19873 19894 I python : Preparing to initialize python
05-19 16:46:37.928 19873 19894 I python : crystax_python exists
05-19 16:46:37.928 19873 19894 I python : calculated paths to be...
05-19 16:46:37.928 19873 19894 I python : /data/user/0/org.kvantel.signal_app/files/crystax_python/stdlib.zip:/data/user/0/org.kvantel.signal_app/files/crystax_python/modules
05-19 16:46:37.928 19873 19894 I python : set wchar paths...
05-19 16:46:37.925 1003 1003 W ipacm : type=1400 audit(0.0:29280): avc: denied { sendto } for path="/dev/socket/ipacm_log_file" scontext=u:r:ipacm:s0 tcontext=u:r:ipacm-diag:s0 tclass=unix_dgram_socket permissive=0 ppid=1 pcomm="init" pgid=782 pgcomm="ipacm"
05-19 16:46:37.925 1003 1003 W ipacm : type=1400 audit(0.0:29281): avc: denied { sendto } for path="/dev/socket/ipacm_log_file" scontext=u:r:ipacm:s0 tcontext=u:r:ipacm-diag:s0 tclass=unix_dgram_socket permissive=0 ppid=1 pcomm="init" pgid=782 pgcomm="ipacm"
05-19 16:46:37.925 1003 1003 W ipacm : type=1400 audit(0.0:29282): avc: denied { sendto } for path="/dev/socket/ipacm_log_file" scontext=u:r:ipacm:s0 tcontext=u:r:ipacm-diag:s0 tclass=unix_dgram_socket permissive=0 ppid=1 pcomm="init" pgid=782 pgcomm="ipacm"
05-19 16:46:37.925 1002 1002 W ipacm : type=1400 audit(0.0:29283): avc: denied { sendto } for path="/dev/socket/ipacm_log_file" scontext=u:r:ipacm:s0 tcontext=u:r:ipacm-diag:s0 tclass=unix_dgram_socket permissive=0 ppid=1 pcomm="init" pgid=782 pgcomm="ipacm"
05-19 16:46:37.925 1002 1002 W ipacm : type=1400 audit(0.0:29284): avc: denied { sendto } for path="/dev/socket/ipacm_log_file" scontext=u:r:ipacm:s0 tcontext=u:r:ipacm-diag:s0 tclass=unix_dgram_socket permissive=0 ppid=1 pcomm="init" pgid=782 pgcomm="ipacm"
05-19 16:46:37.950 3597 3597 I Timeline: Timeline: Activity_idle id: android.os.BinderProxy@31fdb35 time:32439046
05-19 16:46:37.970 1752 2004 I Timeline: Timeline: Activity_windows_visible id: ActivityRecord{423177e u0 com.sonyericsson.home/com.sonymobile.home.HomeActivity t2228} time:32439066
05-19 16:46:37.973 19873 19873 V SDL : surfaceDestroyed()
05-19 16:46:37.973 1752 1768 I art : Background partial concurrent mark sweep GC freed 9709(517KB) AllocSpace objects, 2(40KB) LOS objects, 30% free, 35MB/51MB, paused 1.335ms total 148.684ms
05-19 16:46:37.981 19873 19873 V SDL : onDestroy()
05-19 16:46:38.021 1752 2004 I WindowManager: Screen frozen for +165ms due to Window{8e31b72 u0 NavigationBar}
05-19 16:46:38.265 19873 19894 I python : Initialized python
05-19 16:46:38.266 19873 19894 I python : AND: Init threads
05-19 16:46:38.266 19873 19894 I python : testing python print redirection
05-19 16:46:38.268 19873 19894 I python : Android path ['.', '/data/user/0/org.kvantel.signal_app/files/crystax_python/stdlib.zip', '/data/user/0/org.kvantel.signal_app/files/crystax_python/modules', '/data/user/0/org.kvantel.signal_app/files/crystax_python/site-packages']
05-19 16:46:38.268 19873 19894 I python : os.environ is environ({'PYTHON_NAME': 'python', 'ANDROID_ASSETS': '/system/app', 'SYSTEMSERVERCLASSPATH': '/system/framework/services.jar:/system/framework/ethernet-service.jar:/system/framework/wifi-service.jar', 'PYTHONHOME': '/data/user/0/org.kvantel.signal_app/files', 'ANDROID_DATA': '/data', 'ANDROID_ENTRYPOINT': 'main.pyo', 'ANDROID_ROOT': '/system', 'ANDROID_PRIVATE': '/data/user/0/org.kvantel.signal_app/files', 'ASEC_MOUNTPOINT': '/mnt/asec', 'EXTERNAL_STORAGE': '/sdcard', 'ANDROID_ARGUMENT': '/data/user/0/org.kvantel.signal_app/files', 'ANDROID_PROPERTY_WORKSPACE': '9,0', 'ANDROID_APP_PATH': '/data/user/0/org.kvantel.signal_app/files', 'ANDROID_STORAGE': '/storage', 'ANDROID_BOOTLOGO': '1', 'LD_PRELOAD': 'libNimsWrap.so', 'PYTHONPATH': '/data/user/0/org.kvantel.signal_app/files:/data/user/0/org.kvantel.signal_app/files/lib', 'PATH': '/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin', 'BOOTCLASSPATH': '/system/framework/core-libart.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/apache-xml.jar:/system/framework/org.apache.http.legacy.boot.jar:/system/framework/tcmiface.jar:/system/framework/WfdCommon.jar:/system/framework/oem-services.jar:/system/framework/com.qti.dpmframework.jar:/system/framework/dpmapi.jar:/system/framework/com.qti.location.sdk.jar:/system/framework/qcmediaplayer.jar:/system/framework/com.sonymobile.tvout.wifidisplay_impl.jar', 'ANDROID_SOCKET_zygote_secondary': '11'})
05-19 16:46:38.268 19873 19894 I python : Android kivy bootstrap done. __name__ is __main__
05-19 16:46:38.268 19873 19894 I python : AND: Ran string
05-19 16:46:38.268 19873 19894 I python : Run user program, change dir and execute entrypoint
05-19 16:46:38.268 19873 19894 I python : main.py
05-19 16:46:39.955 3373 3373 W InputConnectionWrapper.ICC: Timed out waiting on IInputContextCallback
05-19 16:46:40.034 1752 2004 I art : Starting a blocking GC Explicit
05-19 16:46:40.158 19873 19894 I python : [INFO ] [Logger ] Record log in /data/user/0/org.kvantel.signal_app/files/.kivy/logs/kivy_16-05-19_5.txt
05-19 16:46:40.158 19873 19894 I python : [INFO ] [Kivy ] v1.9.2-dev0
05-19 16:46:40.159 19873 19894 I python : [INFO ] [Python ] v3.5.0 (default, Dec 24 2015, 05:56:40)
05-19 16:46:40.159 19873 19894 I python : [GCC 5.3 20151204]
05-19 16:46:40.175 1752 2004 I art : Explicit concurrent mark sweep GC freed 3917(237KB) AllocSpace objects, 1(16KB) LOS objects, 30% free, 35MB/51MB, paused 946us total 141.220ms
05-19 16:46:40.474 19873 19894 W linker : /data/data/org.kvantel.signal_app/files/crystax_python/site-packages/kivy/_event.so: is missing DT_SONAME will use basename as a replacement: "_event.so"
05-19 16:46:40.477 19873 19894 I python : Traceback (most recent call last):
05-19 16:46:40.477 19873 19894 I python : File "main.py", line 1, in <module>
05-19 16:46:40.478 19873 19894 I python : from kivy.app import App
05-19 16:46:40.478 19873 19894 I python : File "/data/user/0/org.kvantel.signal_app/files/crystax_python/site-packages/kivy/app.py", line 319, in <module>
05-19 16:46:40.480 19873 19894 I python : from kivy.base import runTouchApp, stopTouchApp
05-19 16:46:40.480 19873 19894 I python : File "/data/user/0/org.kvantel.signal_app/files/crystax_python/site-packages/kivy/base.py", line 30, in <module>
05-19 16:46:40.481 19873 19894 I python : from kivy.event import EventDispatcher
05-19 16:46:40.482 19873 19894 I python : File "/data/user/0/org.kvantel.signal_app/files/crystax_python/site-packages/kivy/event.py", line 8, in <module>
05-19 16:46:40.482 19873 19894 I python : import kivy._event
05-19 16:46:40.482 19873 19894 I python : ImportError: dlopen failed: cannot locate symbol "_Py_NoneStruct" referenced by "/data/data/org.kvantel.signal_app/files/crystax_python/site-packages/kivy/_event.so"...
05-19 16:46:40.572 19873 19894 I python : Python for android ended.
05-19 16:46:40.605 19873 19873 W IInputConnectionWrapper: getTextBeforeCursor on inactive InputConnection
05-19 16:46:40.605 19873 19873 W IInputConnectionWrapper: getSelectedText on inactive InputConnection
05-19 16:46:40.606 3373 3384 I InputConnectionWrapper.ICC: Got out-of-sequence callback 1338 (expected 1339) in setTextBeforeCursor, ignoring.
05-19 16:46:40.606 19873 19873 W IInputConnectionWrapper: getTextAfterCursor on inactive InputConnection
05-19 16:46:40.607 3373 3373 E InputEventModelImpl: onStartInput event aborted: com.touchtype.keyboard.c.ae: could not obtain extracted text (class com.touchtype.keyboard.c.ae)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: Failed to fetch resource bundle for %s, using fallback bundle
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: java.io.FileNotFoundException: key_label_bundles/nn.dat
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at android.content.res.AssetManager.openAsset(Native Method)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at android.content.res.AssetManager.open(AssetManager.java:339)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at android.content.res.AssetManager.open(AssetManager.java:313)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.touchtype.keyboard.d.k.b(KeyLabelResolver.java:80)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.touchtype.keyboard.d.k.a(KeyLabelResolver.java:64)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.touchtype.keyboard.d.k.a(KeyLabelResolver.java:54)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.touchtype.keyboard.d.d.<init>(KeyFactory.java:283)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.touchtype.keyboard.ak.a(KeyboardLoader.java:677)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.touchtype.keyboard.at.a(KeyboardSwitcher.java:840)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.touchtype.keyboard.at.a(KeyboardSwitcher.java:601)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.touchtype.keyboard.at.a(KeyboardSwitcher.java:413)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.touchtype.keyboard.at.a(KeyboardSwitcher.java:556)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.touchtype.keyboard.service.TouchTypeSoftKeyboard.onConfigurationChanged(TouchTypeSoftKeyboard.java:741)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at android.app.ActivityThread.performConfigurationChanged(ActivityThread.java:4271)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at android.app.ActivityThread.handleConfigurationChanged(ActivityThread.java:4344)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1499)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at android.os.Handler.dispatchMessage(Handler.java:102)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at android.os.Looper.loop(Looper.java:224)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at android.app.ActivityThread.main(ActivityThread.java:5514)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at java.lang.reflect.Method.invoke(Native Method)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
05-19 16:46:40.611 3373 3373 W KeyLabelResolver: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
05-19 16:46:40.643 3373 3373 I Choreographer: Skipped 163 frames! The application may be doing too much work on its main thread.
05-19 16:46:41.165 730 730 I MSM-irqbalance: Decided to move IRQ65 from CPU2 to CPU0
05-19 16:46:41.531 1752 1752 I EntropyMixer: Writing entropy...
I see a couple of exceptions, but I don't know what they mean or how to fix them.
Can you replicate this error?
Copied from original issue: kivy/kivy#4292
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.