Pushwoosh / pushwoosh-appcelerator-titanium

Other
33 stars 16 forks source link

Version > 5.8 is unable to launch app on Android 9 #65

Closed tomgiessel closed 5 years ago

tomgiessel commented 5 years ago

Hey there,

Just created a new Alloy Project and tried to run it without any further changes on my Google Pixel 2 (Android 9) and it works perfectly fine. As soon as I add com.pushwoosh.module (v5.12 or v5.13) to the module list, the app won't start and exit immediately without any error message. When using Pushwoosh v5.8 it works however.

System: Titanium SDK: 8.0.0 (tested all the way down to 7.5, issue remains) Appcelerator CLI: 7.0.10 OS: Mac OS X (10.14.3) Node: 8.10.0

Cheers, Tom

wfhm commented 5 years ago

@tomgiessel Hi,

May I ask you to get the console log when opening your app and share it with us? Also, is it related to Android 9 exclusively or can it be reproduced on earlier versions? Having a reproducer would also be great.

tomgiessel commented 5 years ago

@wfhm Hi,

I do not own other Android devices, but at least on emulators the app exits immediately as well, no matter which Android version I use. Here is the console log from my Pixel 2:

-- Start application log ----------------------------------------------------- [ERROR] : E/om.androidtest: Not starting debugger since process cannot load the jdwp agent. [INFO] : I/om.androidtest: The ClassLoaderContext is a special shared library. [WARN] : W/om.androidtest: resources.arsc in APK '/data/app/com.androidtest-fBZy-Oin_JFiwf3nYi8QPw==/base.apk' is compressed. [INFO] : TiApplication: (main) [0,0] checkpoint, app created. [INFO] : MultiDex: VM with version 2.1.0 has multidex support [INFO] : MultiDex: Installing application [INFO] : MultiDex: VM has multidex support, MultiDex support library is disabled. [DEBUG] : AndroidRuntime: Shutting down VM [TRACE] : updating tiapp metadata with Appcelerator Platform... [TRACE] : Uploaded tiapp metadata with Appcelerator Platform! [INFO] : I/om.androidtest: WaitForGcToComplete blocked HeapTrim on ProfileSaver for 14.947ms

tomgiessel commented 5 years ago

@wfhm This is the error that I can see using adb logcat:

03-25 12:53:50.024 13414 13414 D AndroidRuntime: Shutting down VM 03-25 12:53:50.024 13414 13414 E AndroidRuntime: FATAL EXCEPTION: main 03-25 12:53:50.024 13414 13414 E AndroidRuntime: Process: com.androidtest, PID: 13414 03-25 12:53:50.024 13414 13414 E AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/common/internal/zzbo; 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source:2) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at android.app.ActivityThread.installProvider(ActivityThread.java:6402) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at android.app.ActivityThread.installContentProviders(ActivityThread.java:5949) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5864) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at android.app.ActivityThread.access$1100(ActivityThread.java:200) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1651) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at android.os.Looper.loop(Looper.java:193) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6680) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.common.internal.zzbo" on path: DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.androidtest-5U-PY3wvbOPuxq0MG9tcdg==/base.apk"],nativeLibraryDirectories=[/data/app/com.androidtest-5U-PY3wvbOPuxq0MG9tcdg==/lib/arm64, /data/app/com.androidtest-5U-PY3wvbOPuxq0MG9tcdg==/base.apk!/lib/arm64-v8a, /system/lib64]] 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at java.lang.ClassLoader.loadClass(ClassLoader.java:379) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: at java.lang.ClassLoader.loadClass(ClassLoader.java:312) 03-25 12:53:50.024 13414 13414 E AndroidRuntime: ... 12 more

wfhm commented 5 years ago

@tomgiessel Got it reproduced and created a task to fix it. I will let you know about ETA once there is more information on it.

platanus-xx commented 5 years ago

I'm actually getting the same error here.

Titanium sdk 7.5.1, PW 5.12 and 5.13 with ti.playservices 16.1.2 or 16.1.0. As soon as I downgraded the ti.playservices to 11.0.40, it didn't crash anymore, not sure if it helps.

03-19 15:31:43.692 26927 26927 I MultiDex: Installing application
03-19 15:31:43.692 26927 26927 I MultiDex: VM has multidex support, MultiDex support library is disabled.
03-19 15:31:43.698 26927 26927 D AndroidRuntime: Shutting down VM
03-19 15:31:43.699 26927 26927 E AndroidRuntime: FATAL EXCEPTION: main
03-19 15:31:43.699 26927 26927 E AndroidRuntime: Process: br.com.pinion, PID: 26927
03-19 15:31:43.699 26927 26927 E AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/common/internal/zzbo;
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at android.app.ActivityThread.installProvider(ActivityThread.java:5174)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at android.app.ActivityThread.installContentProviders(ActivityThread.java:4769)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4709)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at android.app.ActivityThread.-wrap1(ActivityThread.java)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1415)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at android.os.Handler.dispatchMessage(Handler.java:102)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at android.os.Looper.loop(Looper.java:148)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at android.app.ActivityThread.main(ActivityThread.java:5443)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at java.lang.reflect.Method.invoke(Native Method)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
03-19 15:31:43.699 26927 26927 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.common.internal.zzbo" on path: DexPathList[[zip file "/data/app/br.com.pinion-1/base.apk"],nativeLibraryDirectories=[/data/app/br.com.pinion-1/lib/arm, /data/app/br.com.pinion-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]]
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    ... 12 more
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    Suppressed: java.lang.ClassNotFoundException: com.google.android.gms.common.internal.zzbo
03-19 15:31:43.699 26927 26927 E AndroidRuntime:        at java.lang.Class.classForName(Native Method)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:        at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:        at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:        at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
03-19 15:31:43.699 26927 26927 E AndroidRuntime:        ... 13 more
03-19 15:31:43.699 26927 26927 E AndroidRuntime:    Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available
03-19 15:31:43.701  2424  2435 W ActivityManager:   Force finishing activity br.com.pinion/.PinionActivity
03-19 15:31:43.702  2424  2435 I ActivityManager: moveHomeStack, setupComplete:true
03-19 15:31:43.766  2424  4145 I OpenGLRenderer: Initialized EGL, version 1.4
03-19 15:31:44.223  2424  2439 W ActivityManager: Activity pause timeout for ActivityRecord{aa1c866 u0 br.com.pinion/.PinionActivity t37 f}
03-19 15:31:44.279 23898 23917 I MicroDetectionWorker: #startMicroDetector [speakerMode: 0]
03-19 15:31:44.287 23898 23917 I AudioController: Created new AudioSource
03-19 15:31:44.293  2424  8797 I ActivityManager: Killing 26615:com.google.android.calendar/u0a62 (adj 15): empty #7
03-19 15:31:44.296 23898 23917 I MicroDetectionWorker: onReady
03-19 15:31:44.303 23898 26884 I MicroRecognitionRunner: Starting detection.
03-19 15:31:44.303 23898 26884 I MultipleReaderAudioSrc: Using micInputStream
03-19 15:31:44.309 23898 26886 I MicrophoneInputStream: mic_starting  SR : 16000 CC : 16 SO : 1999
03-19 15:31:44.310   294   294 D audio_hw_primary: adev_open_input_stream: enter: sample_rate(16000) channel_mask(0x10) devices(0x80000004)        stream_handle(0xb82a93f8) io_handle(582)
03-19 15:31:44.315   294 26945 I AudioFlinger: AudioFlinger's thread 0xb83afbd8 ready to run
03-19 15:31:44.315   294 26945 D audio_hw_primary: in_standby: enter: stream (0xb82a93f8) usecase(7: audio-record)
03-19 15:31:44.316   294 26945 D audio_hw_primary: in_standby: enter: stream (0xb82a93f8) usecase(7: audio-record)
03-19 15:31:44.317   294 26945 D audio_hw_primary: in_set_parameters: enter: kvpairs=input_source=6;routing=-2147483644
03-19 15:31:44.320 23898 26886 I MicrophoneInputStream: mic_started  SR : 16000 CC : 16 SO : 1999
03-19 15:31:44.327   294 26945 V msm8916_platform: platform_update_usecase_from_source: input source :6
03-19 15:31:44.327   294 26945 D audio_hw_primary: start_input_stream: enter: stream(0xb82a93f8)usecase(7: audio-record)
03-19 15:31:44.328   294 26945 V msm8916_platform: platform_get_input_snd_device: enter: out_device(0) in_device(0x4)
03-19 15:31:44.328   294 26945 V msm8916_platform: platform_get_input_snd_device: exit: in_snd_device(voice-rec-mic)
03-19 15:31:44.328   294 26945 D audio_hw_primary: select_devices: out_snd_device(0: ) in_snd_device(64: voice-rec-mic)
03-19 15:31:44.328   294 26945 D hardware_info: hw_info_append_hw_type : device_name = voice-rec-mic
03-19 15:31:44.328   294 26945 V msm8916_platform: platform_get_input_snd_device: enter: out_device(0x2) in_device(0x4)
03-19 15:31:44.328   294 26945 V msm8916_platform: platform_get_input_snd_device: exit: in_snd_device(voice-rec-mic)
03-19 15:31:44.328   294 26945 V msm8916_platform: platform_send_audio_calibration: sending audio calibration for snd_device(64) acdb_id(4)
03-19 15:31:44.328   294 26945 D ACDB-LOADER: ACDB -> send_audio_cal, acdb_id = 4, path =  1
03-19 15:31:44.328   294 26945 D ACDB-LOADER: ACDB -> send_asm_topology
03-19 15:31:44.328   294 26945 D ACDB-LOADER: ACDB -> ACDB_CMD_GET_AUDPROC_STREAM_TOPOLOGY_ID
03-19 15:31:44.329   294 26945 D ACDB-LOADER: ACDB -> send_adm_topology
03-19 15:31:44.329   294 26945 D ACDB-LOADER: ACDB -> ACDB_CMD_GET_AUDPROC_COMMON_TOPOLOGY_ID
03-19 15:31:44.329   294 26945 D ACDB-LOADER: ACDB -> send_audtable
03-19 15:31:44.329   294 26945 D ACDB-LOADER: ACDB -> ACDB_CMD_GET_AUDPROC_COMMON_TABLE
03-19 15:31:44.329   294 26945 D ACDB-LOADER: ACDB -> AUDIO_SET_AUDPROC_CAL
03-19 15:31:44.329   294 26945 D ACDB-LOADER: ACDB -> send_audvoltable
03-19 15:31:44.329   294 26945 D ACDB-LOADER: ACDB -> ACDB_CMD_GET_AUDPROC_GAIN_DEP_STEP_TABLE
tomgiessel commented 5 years ago

@platanus-xx You're right, it works when using ti.playservices v11.0.40. Thanks! 👍

However @wfhm, according to https://github.com/appcelerator-modules/ti.playservices/issues/17 the error mentioned above occurs because the Firebase version is not the most recent one.

platanus-xx commented 5 years ago

Hi @wfhm, do you have a time frame on solving this issue?

wfhm commented 5 years ago

@platanus-xx the fix was not included in the upcoming release, so it will most likely be delivered with the next one, and I cannot provide you with any precise ETA on it right now. As a rough estimation, it can be delivered in the end of next week.

wfhm commented 5 years ago

@tomgiessel @platanus-xx Fixed with the latest release.

platanus-xx commented 5 years ago

That's good news, thank you!