Firebase C++ SDK on Android Crashes with SIGSEGV fault addr 0x0 when creating dynamic link
ForestRingGames opened this issue · 7 comments
We're using the Firebase C++ SDK for our iOS and Android game. On iOS creating dynamic links works just perfectly, but on Android we're getting crashes which we can't resolve even after countless hours of trying various things.
Here's the code that causes the crash:
std::string appBundleId = getAppBundleIdentifier();
firebase::dynamic_links::IOSParameters ios_parameters(appBundleId.c_str());
firebase::dynamic_links::AndroidParameters android_parameters(appBundleId.c_str());
firebase::dynamic_links::DynamicLinkComponents components(
"https://example.com/", "abc123.app.goo.gl");
components.android_parameters = &android_parameters;
components.ios_parameters = &ios_parameters;
// This log shows that the app is not nullptr
MLLOG("Firebase Instance %s", firebase::App::GetInstance()->name());
// The next line crashes
firebase::dynamic_links::GeneratedDynamicLink longLink = firebase::dynamic_links::GetLongLink(components);
Here's the stacktrace, we obtained via adb logcat:
********** Crash dump: **********
Build fingerprint: 'samsung/kccat6xx/kccat6:6.0.1/MMB29M/G901FXXS1CPI4:user/release-keys'
pid: 22798, tid: 23065, name: GLThread 19076 >>> com.forestringgames.apps.towerduel <<<
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
Stack frame #00 pc 0416bed4 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN8firebase3App11GetInstanceEPKc+3)
Stack frame #01 pc 041620bf /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN8firebase13dynamic_links11GetLongLinkERKNS0_21DynamicLinkComponentsE+38)
Stack frame #02 pc 0306eb6f /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN15PlatformManager29createDynamicReferralLinkLongEv+226)
Stack frame #03 pc 0260a11f /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so
Stack frame #04 pc 0260b307 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so
Stack frame #05 pc 041c6df0 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZNKSt8functionIFvPN7cocos2d3RefEEEclES2_+88)
Stack frame #06 pc 0430ce50 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN7cocos2d8MenuItem8activateEv+80)
Stack frame #07 pc 0430d908 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN7cocos2d13MenuItemLabel8activateEv+92)
Stack frame #08 pc 04308df4 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN7cocos2d4Menu12onTouchEndedEPNS_5TouchEPNS_5EventE+196)
Stack frame #09 pc 0430c3f8 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZNKSt7_Mem_fnIMN7cocos2d4MenuEFvPNS0_5TouchEPNS0_5EventEEEclIJS3_S5_EvEEvPS1_DpOT_+172)
Stack frame #10 pc 0430c1fc /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZNSt5_BindIFSt7_Mem_fnIMN7cocos2d4MenuEFvPNS1_5TouchEPNS1_5EventEEEPS2_St12_PlaceholderILi1EESB_ILi2EEEE6__callIvJOS4_OS6_EJLj0ELj1ELj2EEEET_OSt5tupleIJDpT0_EESt12_Index_tupleIJXspT1_EEE+200)
Stack frame #11 pc 0430be34 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZNSt5_BindIFSt7_Mem_fnIMN7cocos2d4MenuEFvPNS1_5TouchEPNS1_5EventEEEPS2_St12_PlaceholderILi1EESB_ILi2EEEEclIJS4_S6_EvEET0_DpOT_+104)
Stack frame #12 pc 0430ba68 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZNSt17_Function_handlerIFvPN7cocos2d5TouchEPNS0_5EventEESt5_BindIFSt7_Mem_fnIMNS0_4MenuEFvS2_S4_EEPS8_St12_PlaceholderILi1EESD_ILi2EEEEE9_M_invokeERKSt9_Any_dataS2_S4_+80)
Stack frame #13 pc 025e613d /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZNKSt8functionIFvPN7cocos2d5TouchEPNS0_5EventEEEclES2_S4_+68)
Stack frame #14 pc 043de15c /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so
Stack frame #15 pc 043e5a08 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so
Stack frame #16 pc 043e1f64 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZNKSt8functionIFbPN7cocos2d13EventListenerEEEclES2_+88)
Stack frame #17 pc 043dd850 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN7cocos2d15EventDispatcher29dispatchTouchEventToListenersEPNS0_19EventListenerVectorERKSt8functionIFbPNS_13EventListenerEEE+1128)
Stack frame #18 pc 043de8c8 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN7cocos2d15EventDispatcher18dispatchTouchEventEPNS_10EventTouchE+552)
Stack frame #19 pc 043ddb90 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN7cocos2d15EventDispatcher13dispatchEventEPNS_5EventE+156)
Stack frame #20 pc 0438dc50 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN7cocos2d6GLView26handleTouchesOfEndOrCancelENS_10EventTouch9EventCodeEiPiPfS4_+732)
Stack frame #21 pc 0438dd88 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (_ZN7cocos2d6GLView16handleTouchesEndEiPiPfS2_+60)
Stack frame #22 pc 041469e1 /data/app/com.forestringgames.apps.towerduel-2/lib/arm/libcocos2dcpp.so (Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeTouchesEnd+68)
Stack frame #23 pc 01096e41 /data/app/com.forestringgames.apps.towerduel-2/oat/arm/base.odex (offset 0xaa1000) (void org.cocos2dx.lib.Cocos2dxRenderer.nativeTouchesEnd(int, float, float)+100)
Stack frame #24 pc 010971e3 /data/app/com.forestringgames.apps.towerduel-2/oat/arm/base.odex (offset 0xaa1000) (void org.cocos2dx.lib.Cocos2dxRenderer.handleActionUp(int, float, float)+70)
Stack frame #25 pc 010841a7 /data/app/com.forestringgames.apps.towerduel-2/oat/arm/base.odex (offset 0xaa1000) (void org.cocos2dx.lib.Cocos2dxGLSurfaceView$10.run()+170)
Stack frame #26 pc 03e4cd8d /system/framework/arm/boot.oat (offset 0x2f48000)
Just in case this could be part of the problem, our firebase app seems to create successfully - we do it via a native call from onCreate:
JNIEXPORT void JNICALL Java_org_cocos2dx_cpp_AppActivity_onCreate(JNIEnv* env, jclass, jobject aMainActivity)
{
MLLOG("java_org_cocos2dx_cpp_AppActivity_onCreate called");
firebase::AppOptions appOptions;
_firebaseApp = firebase::App::Create(appOptions, env, aMainActivity);
auto app = firebase::App::GetInstance();
// Both log the same pointer here
MLLOG("FIREBASE APP INIT %p AppGetInstance %p", _firebaseApp, app);
}
Hi,
Thanks for reporting this. We're trying to reproduce the error - do you have a minimal sample project we can look at (I see based on your stack trace that you are using Cocos2D-X)?
Also, is there anything related to JNI in the stack trace?
Finally, I am guessing you are calling GetLongLink from the main thread, but in case you aren't, does it still crash if you do?
Thanks,
Jon
Unfortunately, I don't have a sample project - the whole setup was quite complex and creating a sample project is probably not an easy task ;)
Yes, we are using Cocos2d-x, I tried to call both from the Java-Thread and from the Cocos2d-x thread - both lead to the same issue. I also tried initializing the firebase app in the Java-Thread and in the Cocos2d-x same issues again.
Also I tried to get the Cocos2d-x sample projects to run, but the python setup script is crashing with IO errors, so I gave up on that ;)
If you want to, we can do skype screen share and I can show you the exact setup of our game. My skype ID is framusrock
Thanks,
Max
Just to make 100% sure, are you calling firebase::dynamic_links::Initialize() as well?
Wow. Mind. Blown. It. Works. A full day of trying out various tricks and nothing worked. Thank you!
You should really fix the SDK page if you can, it tells you nothing about this necessary call. Especially since it works on iOS without this call, but on android it crashes:
https://firebase.google.com/docs/dynamic-links/cpp/create
Only in the receive links SDK page...there it tells you that you should do that. But I went the normal way of everybody who integrates a new SDK, go step by step and try everything...if it works - proceed. So I never was at that page ;)
Thanks - it does look like an omission in the documentation. Sorry about that! I'll make sure the docs are updated.
I want to re open it
My problem is I could not firebase::dynamic_links::Initialize()
firebase::dynamic_links::Initialize() need const app but :firebase::App::Create(*_jniEnv, jniObject.object()); create * App !
I could not use this method.
The big problem is code work in debug build in many devices but not all device but do not work on any device in release mode.
Thank you
Crash dump ******
W/System.err(26752): java.lang.NoSuchMethodError: no method with name='getCodeCacheDir' signature='()Ljava/io/File;' in class Landroid/app/Activity;
W/System.err(26752): at dalvik.system.NativeStart.run(Native Method)
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/Log'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/Log'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/JniResultCallback'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/JniResultCallback'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/CppThreadDispatcher'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/CppThreadDispatcher'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/FirebaseOptions$Builder'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/GoogleApiAvailabilityHelper'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/GoogleApiAvailabilityHelper'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/GoogleApiAvailabilityHelper'
F/libc (26752): Fatal signal 11 (SIGSEGV) at 0x03182fdc (code=1), thread 26844 (ameshkbazi.game)
I/DEBUG (21335): pid: 26752, tid: 26844, name: ameshkbazi.game >>> com.tameshkbazi.game <<<
I/DEBUG (21335): !@dumpstate -k -t -z -d -o /data/log/dumpstate_app_native -m 26752
E/android.os.Debug( 2613): !@Dumpstate > dumpstate -k -t -z -d -m 26752 -o /data/log/dumpstate_app_error
D/CrashAnrDetector( 2613): pid: 26752, tid: 26844, name: ameshkbazi.game >>> com.tameshkbazi.game <<<
I/ActivityManager( 2613): Killing 26752:com.tameshkbazi.game/u0a102 (adj 15): empty #6Full Log
Starting remote process.I/SELinux (26752): Function: selinux_android_load_priority [0], There is no sepolicy file.
I/SELinux (26752):
I/SELinux (26752): Function: selinux_android_load_priority [1], There is no sepolicy version file.
I/SELinux (26752):
I/SELinux (26752): Function: selinux_android_load_priority , priority is 3. priority version is VE=GOOGLE_POLICY
I/SELinux (26752):
I/SELinux (26752):
D/dalvikvm(26752): Late-enabling CheckJNI
I/ActivityManager( 2613): Start proc com.tameshkbazi.game for activity com.tameshkbazi.game/org.qtproject.qt5.android.bindings.QtActivity: pid=26752 uid=10102 gids={50102, 3003, 1028, 1015}
D/ActivityThread(26752): handleBindApplication:com.tameshkbazi.game
I/dalvikvm(26752): Could not find method android.content.pm.PackageManager.getPackageInstaller, referenced from method com.google.android.gms.common.zzo.zzx
W/dalvikvm(26752): VFY: unable to resolve virtual method 583: Landroid/content/pm/PackageManager;.getPackageInstaller ()Landroid/content/pm/PackageInstaller;
D/dalvikvm(26752): VFY: replacing opcode 0x6e at 0x0012
W/DynamiteModule(26752): Local module descriptor class for com.google.firebase.auth not found.
I/dalvikvm(26752): Could not find method android.content.pm.PackageManager.isInstantApp, referenced from method com.google.android.gms.internal.zzbec.zzalq
W/dalvikvm(26752): VFY: unable to resolve virtual method 590: Landroid/content/pm/PackageManager;.isInstantApp (Ljava/lang/String;)Z
D/dalvikvm(26752): VFY: replacing opcode 0x6e at 0x002d
I/dalvikvm(26752): Could not find method android.content.Context.getNoBackupFilesDir, referenced from method com.google.android.gms.common.util.zzu.getNoBackupFilesDir
W/dalvikvm(26752): VFY: unable to resolve virtual method 445: Landroid/content/Context;.getNoBackupFilesDir ()Ljava/io/File;
D/dalvikvm(26752): VFY: replacing opcode 0x6e at 0x0006
W/DynamiteModule(26752): Local module descriptor class for com.google.firebase.auth not found.
D/FirebaseApp(26752): com.google.firebase.crash.FirebaseCrash is not linked. Skipping initialization.
I/FA (26752): App measurement is starting up, version: 11400
I/FA (26752): To enable debug logging run: adb shell setprop log.tag.FA VERBOSE
I/dalvikvm(26752): Could not find method android.content.pm.PackageManager.isInstantApp, referenced from method com.google.android.gms.internal.zzbeb.zzcp
W/dalvikvm(26752): VFY: unable to resolve virtual method 589: Landroid/content/pm/PackageManager;.isInstantApp ()Z
D/dalvikvm(26752): VFY: replacing opcode 0x6e at 0x0028
I/FA (26752): To enable faster debug mode event logging run:
I/FA (26752): adb shell setprop debug.firebase.analytics.app com.tameshkbazi.game
E/dalvikvm(26752): Could not find class 'android.app.job.JobScheduler', referenced from method com.google.android.gms.internal.zzcfr.zzazv
W/dalvikvm(26752): VFY: unable to resolve check-cast 57 (Landroid/app/job/JobScheduler;) in Lcom/google/android/gms/internal/zzcfr;
D/dalvikvm(26752): VFY: replacing opcode 0x1f at 0x000a
E/dalvikvm(26752): Could not find class 'android.app.job.JobScheduler', referenced from method com.google.android.gms.internal.zzcfr.zzs
W/dalvikvm(26752): VFY: unable to resolve check-cast 57 (Landroid/app/job/JobScheduler;) in Lcom/google/android/gms/internal/zzcfr;
D/dalvikvm(26752): VFY: replacing opcode 0x1f at 0x0092
D/dalvikvm(26752): DexOpt: unable to opt direct call 0x0178 at 0x9a in Lcom/google/android/gms/internal/zzcfr;.zzs
D/dalvikvm(26752): DexOpt: unable to opt direct call 0x055d at 0xa8 in Lcom/google/android/gms/internal/zzcfr;.zzs
I/FirebaseInitProvider(26752): FirebaseApp initialization successful
W/dalvikvm(26752): VFY: unable to find class referenced in signature (Landroid/app/job/JobParameters;)
W/ActivityManager( 2613): Permission Denial: getCurrentUser() from pid=26752, uid=10102 requires android.permission.INTERACT_ACROSS_USERS
W/dalvikvm(26752): VFY: unable to find class referenced in signature (Landroid/app/job/JobParameters;)
D/dalvikvm(26752): GC_CONCURRENT freed 472K, 19% free 6896K/8448K, paused 2ms+4ms, total 22ms
W/dalvikvm(26752): VFY: unable to find class referenced in signature (Landroid/app/job/JobParameters;)
W/dalvikvm(26752): VFY: unable to find class referenced in signature (Landroid/app/job/JobParameters;)
I/dalvikvm(26752): Could not find method android.app.job.JobParameters.getExtras, referenced from method com.google.android.gms.internal.zzcfh.onStartJob
W/dalvikvm(26752): VFY: unable to resolve virtual method 381: Landroid/app/job/JobParameters;.getExtras ()Landroid/os/PersistableBundle;
D/dalvikvm(26752): VFY: replacing opcode 0x6e at 0x000a
D/DisplayManager(26752): DisplayManager()
W/ActivityManager( 2613): Permission Denial: getCurrentUser() from pid=26752, uid=10102 requires android.permission.INTERACT_ACROSS_USERS
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libgnustl_shared.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libgnustl_shared.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libgnustl_shared.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5Core.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5Core.so 0x42017db0
I/QtCore (26752): Start
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5Network.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5Network.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5Network.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5Qml.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5Qml.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5Qml.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5Gui.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5Gui.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5Gui.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5Quick.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5Quick.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5Quick.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5Widgets.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5Widgets.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5Widgets.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5PrintSupport.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5PrintSupport.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5PrintSupport.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5Xml.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5Xml.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5Xml.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5AndroidExtras.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5AndroidExtras.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5AndroidExtras.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5QuickParticles.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5QuickParticles.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5QuickParticles.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5QuickTemplates2.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5QuickTemplates2.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5QuickTemplates2.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5QuickControls2.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5QuickControls2.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/lib/libQt5QuickControls2.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5WebView.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/lib/libQt5WebView.so 0x42017db0
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/qt-reserved-files/plugins/platforms/android/libqtforandroid.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/qt-reserved-files/plugins/platforms/android/libqtforandroid.so 0x42017db0
I/Qt (26752): qt start
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/qt-reserved-files/plugins/bearer/libqandroidbearer.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/data/com.tameshkbazi.game/qt-reserved-files/plugins/bearer/libqandroidbearer.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/data/com.tameshkbazi.game/qt-reserved-files/plugins/bearer/libqandroidbearer.so 0x42017db0, skipping init
D/dalvikvm(26752): Trying to load lib /data/data/com.tameshkbazi.game/lib/libQt5QuickParticles.so 0x42017db0
D/dalvikvm(26752): Shared lib '/data/data/com.tameshkbazi.game/lib/libQt5QuickParticles.so' already loaded in same CL 0x42017db0
W/System.err(26752): java.lang.ClassNotFoundException: android.graphics.drawable.RippleDrawable
W/System.err(26752): at java.lang.Class.classForName(Native Method)
W/System.err(26752): at java.lang.Class.forName(Class.java:251)
W/System.err(26752): at java.lang.Class.forName(Class.java:216)
W/System.err(26752): at org.qtproject.qt5.android.ExtractStyle.getClass(ExtractStyle.java:395)
W/System.err(26752): at org.qtproject.qt5.android.ExtractStyle.<init>(ExtractStyle.java:98)
W/System.err(26752): at org.qtproject.qt5.android.QtActivityDelegate.loadApplication(QtActivityDelegate.java:604)
W/System.err(26752): at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err(26752): at java.lang.reflect.Method.invoke(Method.java:515)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtLoader.loadApplication(QtLoader.java:237)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtLoader.startApp(QtLoader.java:649)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtActivityLoader.onCreate(QtActivityLoader.java:183)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtActivity.onCreateHook(QtActivity.java:266)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtActivity.onCreate(QtActivity.java:273)
W/System.err(26752): at android.app.Activity.performCreate(Activity.java:5447)
W/System.err(26752): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
W/System.err(26752): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2393)
W/System.err(26752): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493)
W/System.err(26752): at android.app.ActivityThread.access$800(ActivityThread.java:166)
W/System.err(26752): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283)
W/System.err(26752): at android.os.Handler.dispatchMessage(Handler.java:102)
W/System.err(26752): at android.os.Looper.loop(Looper.java:136)
W/System.err(26752): at android.app.ActivityThread.main(ActivityThread.java:5590)
W/System.err(26752): at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err(26752): at java.lang.reflect.Method.invoke(Method.java:515)
W/System.err(26752): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1280)
W/System.err(26752): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1096)
W/System.err(26752): at dalvik.system.NativeStart.main(Native Method)
W/System.err(26752): Caused by: java.lang.NoClassDefFoundError: android/graphics/drawable/RippleDrawable
W/System.err(26752): ... 27 more
W/System.err(26752): Caused by: java.lang.ClassNotFoundException: Didn't find class "android.graphics.drawable.RippleDrawable" on path: DexPathList[[zip file "/data/app/com.tameshkbazi.game-48.apk"],nativeLibraryDirectories=[/data/app-lib/com.tameshkbazi.game-48, /vendor/lib, /system/lib]]
W/System.err(26752): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
W/System.err(26752): at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
W/System.err(26752): at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
W/System.err(26752): ... 27 more
W/System.err(26752): java.lang.ClassNotFoundException: android.graphics.drawable.AnimatedStateListDrawable
W/System.err(26752): at java.lang.Class.classForName(Native Method)
W/System.err(26752): at java.lang.Class.forName(Class.java:251)
W/System.err(26752): at java.lang.Class.forName(Class.java:216)
W/System.err(26752): at org.qtproject.qt5.android.ExtractStyle.getClass(ExtractStyle.java:395)
W/System.err(26752): at org.qtproject.qt5.android.ExtractStyle.<init>(ExtractStyle.java:99)
W/System.err(26752): at org.qtproject.qt5.android.QtActivityDelegate.loadApplication(QtActivityDelegate.java:604)
W/System.err(26752): at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err(26752): at java.lang.reflect.Method.invoke(Method.java:515)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtLoader.loadApplication(QtLoader.java:237)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtLoader.startApp(QtLoader.java:649)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtActivityLoader.onCreate(QtActivityLoader.java:183)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtActivity.onCreateHook(QtActivity.java:266)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtActivity.onCreate(QtActivity.java:273)
W/System.err(26752): at android.app.Activity.performCreate(Activity.java:5447)
W/System.err(26752): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
W/System.err(26752): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2393)
W/System.err(26752): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493)
W/System.err(26752): at android.app.ActivityThread.access$800(ActivityThread.java:166)
W/System.err(26752): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283)
W/System.err(26752): at android.os.Handler.dispatchMessage(Handler.java:102)
W/System.err(26752): at android.os.Looper.loop(Looper.java:136)
W/System.err(26752): at android.app.ActivityThread.main(ActivityThread.java:5590)
W/System.err(26752): at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err(26752): at java.lang.reflect.Method.invoke(Method.java:515)
W/System.err(26752): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1280)
W/System.err(26752): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1096)
W/System.err(26752): at dalvik.system.NativeStart.main(Native Method)
W/System.err(26752): Caused by: java.lang.NoClassDefFoundError: android/graphics/drawable/AnimatedStateListDrawable
W/System.err(26752): ... 27 more
W/System.err(26752): Caused by: java.lang.ClassNotFoundException: Didn't find class "android.graphics.drawable.AnimatedStateListDrawable" on path: DexPathList[[zip file "/data/app/com.tameshkbazi.game-48.apk"],nativeLibraryDirectories=[/data/app-lib/com.tameshkbazi.game-48, /vendor/lib, /system/lib]]
W/System.err(26752): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
W/System.err(26752): at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
W/System.err(26752): at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
W/System.err(26752): ... 27 more
W/System.err(26752): java.lang.ClassNotFoundException: android.graphics.drawable.VectorDrawable
W/System.err(26752): at java.lang.Class.classForName(Native Method)
W/System.err(26752): at java.lang.Class.forName(Class.java:251)
W/System.err(26752): at java.lang.Class.forName(Class.java:216)
W/System.err(26752): at org.qtproject.qt5.android.ExtractStyle.getClass(ExtractStyle.java:395)
W/System.err(26752): at org.qtproject.qt5.android.ExtractStyle.<init>(ExtractStyle.java:100)
W/System.err(26752): at org.qtproject.qt5.android.QtActivityDelegate.loadApplication(QtActivityDelegate.java:604)
W/System.err(26752): at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err(26752): at java.lang.reflect.Method.invoke(Method.java:515)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtLoader.loadApplication(QtLoader.java:237)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtLoader.startApp(QtLoader.java:649)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtActivityLoader.onCreate(QtActivityLoader.java:183)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtActivity.onCreateHook(QtActivity.java:266)
W/System.err(26752): at org.qtproject.qt5.android.bindings.QtActivity.onCreate(QtActivity.java:273)
W/System.err(26752): at android.app.Activity.performCreate(Activity.java:5447)
W/System.err(26752): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
W/System.err(26752): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2393)
W/System.err(26752): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493)
W/System.err(26752): at android.app.ActivityThread.access$800(ActivityThread.java:166)
W/System.err(26752): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283)
W/System.err(26752): at android.os.Handler.dispatchMessage(Handler.java:102)
W/System.err(26752): at android.os.Looper.loop(Looper.java:136)
W/System.err(26752): at android.app.ActivityThread.main(ActivityThread.java:5590)
W/System.err(26752): at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err(26752): at java.lang.reflect.Method.invoke(Method.java:515)
W/System.err(26752): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1280)
W/System.err(26752): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1096)
W/System.err(26752): at dalvik.system.NativeStart.main(Native Method)
W/System.err(26752): Caused by: java.lang.NoClassDefFoundError: android/graphics/drawable/VectorDrawable
W/System.err(26752): ... 27 more
W/System.err(26752): Caused by: java.lang.ClassNotFoundException: Didn't find class "android.graphics.drawable.VectorDrawable" on path: DexPathList[[zip file "/data/app/com.tameshkbazi.game-48.apk"],nativeLibraryDirectories=[/data/app-lib/com.tameshkbazi.game-48, /vendor/lib, /system/lib]]
W/System.err(26752): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
W/System.err(26752): at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
W/System.err(26752): at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
W/System.err(26752): ... 27 more
W/ResourceType(26752): Skipping entry 0x1080832 in package table 0 because it is not complex!
D/dalvikvm(26752): GC_CONCURRENT freed 6670K, 49% free 8332K/16080K, paused 3ms+4ms, total 28ms
D/dalvikvm(26752): GC_CONCURRENT freed 568K, 49% free 8236K/16080K, paused 2ms+2ms, total 16ms
D/dalvikvm(26752): GC_CONCURRENT freed 456K, 49% free 8243K/16080K, paused 1ms+3ms, total 17ms
D/dalvikvm(26752): Trying to load lib /data/app-lib/com.tameshkbazi.game-48/libProject.so 0x42017db0
D/dalvikvm(26752): Added shared lib /data/app-lib/com.tameshkbazi.game-48/libProject.so 0x42017db0
D/dalvikvm(26752): No JNI_OnLoad found in /data/app-lib/com.tameshkbazi.game-48/libProject.so 0x42017db0, skipping init
I/FA (26752): Tag Manager is not found and thus will not be used
D/StatusBarManagerService( 2613): semi p:26752,o:t
D/v_gal (26752): [tid=26752] <GC> /system/etc/gfx.cfg Open Failed!
D/GC (26752): <tid=26752> OES20 ===> GC Version : GC version rls_pxa1908_5011p4v0002_GC3.1.17
D/GC (26752):
D/OpenGLRenderer(26752): Enabling debug mode 0
I/Timeline(26752): Timeline: Activity_idle id: android.os.BinderProxy@42013950 time:43995293
D/GC (26752): <tid=26844> OES20 ===> GC Version : GC version rls_pxa1908_5011p4v0002_GC3.1.17
D/GC (26752):
W/libProject.so(26752): (null):0 ((null)): libpng warning: iCCP: known incorrect sRGB profile
D/dalvikvm(26752): GC_CONCURRENT freed 2262K, 54% free 7517K/16080K, paused 3ms+4ms, total 45ms
D/dalvikvm(26752): GC_CONCURRENT freed 545K, 54% free 7423K/16080K, paused 1ms+1ms, total 16ms
D/dalvikvm(26752): GC_CONCURRENT freed 461K, 54% free 7428K/16080K, paused 3ms+2ms, total 23ms
D/dalvikvm(26752): GC_CONCURRENT freed 708K, 54% free 7444K/16080K, paused 1ms+2ms, total 22ms
D/dalvikvm(26752): GC_CONCURRENT freed 2339K, 54% free 7460K/16080K, paused 2ms+2ms, total 26ms
D/dalvikvm(26752): GC_CONCURRENT freed 501K, 54% free 7434K/16080K, paused 3ms+2ms, total 17ms
D/dalvikvm(26752): GC_CONCURRENT freed 467K, 54% free 7439K/16080K, paused 1ms+2ms, total 16ms
D/libProject.so(26752): (null):0 ((null)): PushDelegate. Creating JNI Env
D/libProject.so(26752): (null):0 ((null)): Getting Android Activity
D/libProject.so(26752): (null):0 ((null)): Creating Firebase App
D/libProject.so(26752): (null):0 ((null)): Creating app instance
W/System.err(26752): java.lang.NoSuchMethodError: no method with name='getCodeCacheDir' signature='()Ljava/io/File;' in class Landroid/app/Activity;
W/System.err(26752): at dalvik.system.NativeStart.run(Native Method)
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/Log'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/Log'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/JniResultCallback'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/JniResultCallback'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/CppThreadDispatcher'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/CppThreadDispatcher'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/FirebaseOptions$Builder'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/GoogleApiAvailabilityHelper'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/GoogleApiAvailabilityHelper'
W/dalvikvm(26752): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/GoogleApiAvailabilityHelper'
F/libc (26752): Fatal signal 11 (SIGSEGV) at 0x03182fdc (code=1), thread 26844 (ameshkbazi.game)
I/DEBUG (21335): pid: 26752, tid: 26844, name: ameshkbazi.game >>> com.tameshkbazi.game <<<
I/DEBUG (21335): !@dumpstate -k -t -z -d -o /data/log/dumpstate_app_native -m 26752
E/android.os.Debug( 2613): !@Dumpstate > dumpstate -k -t -z -d -m 26752 -o /data/log/dumpstate_app_error
D/CrashAnrDetector( 2613): pid: 26752, tid: 26844, name: ameshkbazi.game >>> com.tameshkbazi.game <<<
I/ActivityManager( 2613): Killing 26752:com.tameshkbazi.game/u0a102 (adj 15): empty #6
"com.tameshkbazi.game" died.****** Debug LOG ******
D/libProject.so(27728): ..\..\..\..\Nic\Admin\Project\fblistener.cpp:30 (FBListener::FBListener()): Creating app instance
W/System.err(27728): java.lang.NoSuchMethodError: no method with name='getCodeCacheDir' signature='()Ljava/io/File;' in class Landroid/app/Activity;
W/System.err(27728): at dalvik.system.NativeStart.run(Native Method)
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/Log'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/Log'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/JniResultCallback'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/JniResultCallback'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/CppThreadDispatcher'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/CppThreadDispatcher'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/FirebaseOptions$Builder'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/GoogleApiAvailabilityHelper'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/GoogleApiAvailabilityHelper'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/app/internal/cpp/GoogleApiAvailabilityHelper'
I/firebase(27728): Firebase App initializing app com.tameshkbazi.game (default 1).
W/firebase(27728): AppOptions will be ignored as the default app has already been initialized. To disable automatic app initialization remove or rename resources derived from google-services.json.
D/libProject.so(27728): ..\..\..\..\Nic\Admin\Project\notificationhandler.cpp:30 (void NotificationHandler::StartMessaging()): Calling intializer
D/libProject.so(27728): ..\..\..\..\Nic\Admin\Project\fblistener.cpp:59 (void FBListener::InitializeMessaging()): Initializing Firebase module
D/libProject.so(27728): ..\..\..\..\Nic\Admin\Project\fblistener.cpp:46 (firebase::InitResult _InitializeMessaging(firebase::App*, void*)): Try to initialize Firebase Messaging
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/messaging/FirebaseMessaging'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/messaging/RemoteMessage$Builder'
W/dalvikvm(27728): dvmFindClassByName rejecting 'com/google/firebase/messaging/cpp/RegistrationIntentService'
I/firebase(27728): Firebase Cloud Messaging API Initialized
D/libProject.so(27728): ..\..\..\..\Nic\Admin\Project\fblistener.cpp:62 (void FBListener::InitializeMessaging()): Module initialized. Waiting on messaging initialization
D/dalvikvm(27728): GC_CONCURRENT freed 829K, 55% free 7309K/16132K, paused 2ms+3ms, total 33ms
D/libProject.so(27728): ..\..\..\..\Nic\Admin\Project\fblistener.cpp:75 (virtual void FBListener::OnTokenReceived(const char*)): Token received: [ ela9PlJnGXY:APA91bEDkatFVRE_A-NYCC7ImkEbkZe8MYUK8RdS-44Bvyt3upxzjqkaCtYXg4X219ZyiJfUb6phL2p6ki9a3Yq5lNpNL7s7ykF0DC8nvT-Qz0m-BApbNfPIovl-EnXiHRVqu03FtFlT ]
D/libProject.so(27728): ..\..\..\..\Nic\Admin\Project\fblistener.cpp:78 (virtual void FBListener::OnTokenReceived(const char*)): Token Set to roothttps://github.com/firebase/quickstart-cpp/blob/master/dynamic_links/testapp/src/common_main.cc#L110
e.g without using the module initializer utility method:
Listener* link_listener = new Listener;
::firebase::App* app;
#if defined(__ANDROID__)
app = ::firebase::App::Create(GetJniEnv(), GetActivity());
#else
app = ::firebase::App::Create();
#endif // defined(__ANDROID__)
InitResult result = ::firebase::dynamic_links::Initialize(*app, link_listener);
The method takes const firebase::App& which just means it doesn't modify firebase::App (i.e it's const) and uses a reference. So if you have firebase:App *app, *app is firebase::App which can be passed to methods of type firebase::App & and const firebase::App & etc.