How to make sure that Cocos2d-x App is running without crash on all Android devices?

How to make sure that Cocos2d-x App is running without crash on all Android devices?
Some users report that the app does not start/crashes on start.
But it works for me on LG H440n?

Hi,

I am not sure can be 100% sure of that without testing on every single device. I had a similar problem when I was upgrading one of my games, and it turns out that I was building my game to an Android version that was newer than the Android that was installed on my device (I was building for Android 22 and the device had Android 19).

Also if you can get your hands on the device that is having the problem, you could use adb locat to debug.

No chance:) to test on every device still will be crashes;(

Do you use some of google Beta/Alpha test options to fix any bugs before releasing?

I am new to Android Development. Everything seems to me more complicated than for iOS somehow. Spending enormous time on porting my existing iOS Apps to Android. But things gets even more complicate with so huge amount of different Android devices and Android versions.

We testing ussualy on different screen sizes like take most common 5 screen resolutions like on IOS - test there if everything ok should be ok:) . Integrate crashlytics sdk and when releasing game check crashlytics if there is more specific issues left and then fix them.

What kind of “crashlytics sdk” you mean, please?

I am getting this message after compilation, do you think, that could cause crash issue and how to solve it, please?

I am till new to the Android development.

 The NDK version is not r10c or above.
Your application may crash or freeze on Android L(5.0) when using BMFont and HttpClient.
For More information:
https://github.com/cocos2d/cocos2d-x/issues/9114
https://github.com/cocos2d/cocos2d-x/issues/9138

Your application may crash when using c++ 11 regular expression with NDK_TOOLCHAIN_VERSION 4.8

check https://fabric.io/home there is crashlytics sdk to catch all crashes which happens to users.

For integration manual check forum - I’m posted there configuration file for Android and for IOS u can use on their site manual.

1 Like

It seems to crashing here, according to Crash Reports reported in Google Console. Looks like some useful info is there for finding of bugs.

Is it crashing in: AppDelegate::AppDelegate() in: CocosDenshion::android::AndroidJavaEngine::setEffectsVolume ?

Maybe I should try to remove setting of effects volume from there?

 *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'samsung/zerofltexx/zeroflte:6.0.1/MMB29K/G920FXXU3DPCJ:user/release-keys'
Revision: '11'
ABI: 'arm'
pid: 23992, tid: 23992, name: itartunersimple  >>> com.test.testapp <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'art/runtime/java_vm_ext.cc:410] JNI DETECTED ERROR IN APPLICATION: obj == null'
    r0 00000000  r1 00005db8  r2 00000006  r3 f7056b94
    r4 f7056b9c  r5 f7056b4c  r6 00000001  r7 0000010c
    r8 f47bf378  r9 f480e800  sl 00000001  fp 00000001
    ip 00000006  sp fffc3be0  lr f6db3355  pc f6db5744  cpsr 40070010

backtrace:
    #00 pc 00042744  /system/lib/libc.so (tgkill+12)
    #01 pc 00040351  /system/lib/libc.so (pthread_kill+32)
    #02 pc 0001ca8b  /system/lib/libc.so (raise+10)
    #03 pc 00019d09  /system/lib/libc.so (__libc_android_abort+34)
    #04 pc 0001754c  /system/lib/libc.so (abort+4)
    #05 pc 00334105  /system/lib/libart.so (art::Runtime::Abort()+228)
    #06 pc 000f476b  /system/lib/libart.so (art::LogMessage::~LogMessage()+2226)
    #07 pc 0025b635  /system/lib/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+1552)
    #08 pc 0025ba63  /system/lib/libart.so (art::JavaVMExt::JniAbortF(char const*, char const*, ...)+74)
    #09 pc 0028cd1f  /system/lib/libart.so (art::JNI::CallObjectMethodV(_JNIEnv*, _jobject*, _jmethodID*, std::__va_list)+502)
    #10 pc 0015e751  /data/app/com.test.testapp-1/lib/arm/libcocos2dcpp.so (_JNIEnv::CallObjectMethod(_jobject*, _jmethodID*, ...)+18)
    #11 pc 0015e8f1  /data/app/com.test.testapp-1/lib/arm/libcocos2dcpp.so (_getClassID(char const*)+48)
    #12 pc 0015e967  /data/app/com.test.testapp-1/lib/arm/libcocos2dcpp.so (cocos2d::JniHelper::getStaticMethodInfo(cocos2d::JniMethodInfo_&, char const*, char const*, char const*)+50)
    #13 pc 00178449  /data/app/com.test.testapp-1/lib/arm/libcocos2dcpp.so
    #14 pc 001786df  /data/app/com.test.testapp-1/lib/arm/libcocos2dcpp.so (CocosDenshion::android::AndroidJavaEngine::setEffectsVolume(float)+94)
    #15 pc 00158a4f  /data/app/com.test.testapp-1/lib/arm/libcocos2dcpp.so (AppDelegate::AppDelegate()+34)
    #16 pc 00158725  /data/app/com.test.testapp-1/lib/arm/libcocos2dcpp.so (cocos_android_app_init(_JNIEnv*)+24)
    #17 pc 0015d083  /data/app/com.test.testapp-1/lib/arm/libcocos2dcpp.so (JNI_OnLoad+10)
    #18 pc 0025bf6f  /system/lib/libart.so (art::JavaVMExt::LoadNativeLibrary(_JNIEnv*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, _jobject*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*)+1238)
    #19 pc 002d1fc7  /system/lib/libart.so (art::Runtime_nativeLoad(_JNIEnv*, _jclass*, _jstring*, _jobject*, _jstring*)+194)
    #20 pc 0312d51d  /system/framework/arm/boot.oat (offset 0x2f20000)