QT应用在Android 10设备上的std :: thread的析构函数处崩溃

德米特里亚诺

我的应用在Android 10具有以下调用堆栈的设备上崩溃

backtrace:
#00  pc 000000000006f06c  /apex/com.android.runtime/lib64/bionic/libc.so (abort+160)
#01  pc 00000000000500fc  /system/lib64/libc++.so (abort_message+232)
#02  pc 0000000000050218  /system/lib64/libc++.so (demangling_terminate_handler()+44)
#03  pc 00000000000646c4  /system/lib64/libc++.so (std::__terminate(void (*)())+12)
#04  pc 000000000006466c  /system/lib64/libc++.so (std::terminate()+52)
#05  pc 00000000000bb150  /system/lib64/libc++.so (std::__1::thread::~thread()+20)
#06  pc 00000000000d0f48  /apex/com.android.runtime/lib64/bionic/libc.so (__cxa_finalize+212)
#07  pc 00000000000cc930  /apex/com.android.runtime/lib64/bionic/libc.so (exit+24)
#08  pc 0000000000032f30  /data/app/com.domain.myapp-Rs_sm5VrLR1Jj8QW6oYByA==/lib/arm64/libplugins_platforms_qtforandroid_arm64-v8a.so

我不知道何时何地会发生这种情况,因为我无法在我的设备和仿真器上重现此问题,但是这种情况在用户端密集地发生,并且仅在Android 10(不是在以前的Android版本上)发生。

我的QT版本是5.14.2。

麦可

我们刚刚发布了其中一款游戏的更新,看起来崩溃已修复。这就是我们所做的:使用Android后退按钮时,Android 10和Android 9显示不同的默认行为。在Android 10上,该应用程序已关闭,但在控制台输出上,我看到该应用程序在真正退出之前陷入了循环约5秒钟。在Android 9上不会发生这种情况。这是当我按下“后退”按钮并关闭应用程序时在Android 10设备上获得的输出:

....
05-04 18:26:21.315 26882 26908 I nkeycat.tendow:
I nkeycat.tendow: QarthPatchMonintor::CheckNotifyEvent
05-04 18:26:21.315 26882 26908 I nkeycat.tendow:
I nkeycat.tendow: QarthPatchMonintor::CheckNotifyEvent before read
05-04 18:26:21.315 26882 26908 I nkeycat.tendow:
I nkeycat.tendow: QarthPatchMonintor::CheckNotifyEvent after read, length = -1
05-04 18:26:21.315 26882 26908 I nkeycat.tendow:
I nkeycat.tendow: QarthPatchMonintor::CheckNotifyEvent
05-04 18:26:21.315 26882 26908 I
...

我现在在QML中到处都有Android后退按钮,当用户确实要退出该应用程序时,我调用以下自定义Java函数来正常退出:

public String quitApp() { // Qt C++ call

    try {
        finishAffinity();
        System.exit(0);

    } catch (Exception exc) {
        exc.printStackTrace();
        logException(exc);
    }
    return "";
}

我们还实现了David K. Hess的建议。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

应用在Android 4.3上崩溃

应用在不同设备上崩溃

应用在 Android TV 版本 7+ 上崩溃

应用在Android M上因SecurityException崩溃

应用在Android中的SocketTimeoutException上崩溃

admob:应用在Android 3.2上崩溃

Google Map应用在Android OS 4.3上崩溃

处理大型文件时,Android应用在某些设备上崩溃

Android应用在某些设备上崩溃,没有明显原因

带有Tealium AdIdentifier插件的Cordova应用在Android设备上启动时崩溃

Flutter应用在没有静态方法isAtLeastR的android 10&R上崩溃

应用在某些随机设备上崩溃

我的应用在UIDocumentPickerViewController上崩溃了

Android Studio-应用在设备上崩溃,但在模拟器上未崩溃-可能缺少权限

Android Studio应用在真实设备上崩溃,但可在模拟器上运行

Xamarin Forms Android应用在少数设备的版本中崩溃

Xamarin Android应用在启动后立即在android上崩溃。缺少MonoRuntimeProvider

我的Android应用在某些设备上具有基于Activitynotfoundexception的崩溃。我该如何再生?

React Native-TouchableOpacity导致应用在Android上崩溃

使用干净的AOSP构建时,Android 8 Settings应用在模拟器上崩溃

Android应用在重启时崩溃

应用在其他设备上崩溃,但在我的设备上可以正常运行

Android Studio应用在某些设备上滞后

简单的Todo应用在Heroku上崩溃(本地正常)

天气应用在模拟器上崩溃

OpenGL应用在其他PC上崩溃

Appcelerator应用在iOS设备上的Barcode.capture()行上崩溃

Xamarin.Forms应用在Android上使用Newtonsoft.Json序列化对象时崩溃

Xcode 11 GM-应用在设备上启动后崩溃,由于信号9而终止