我最近更新了我们用 Qt/QML 编写的 Playstore 应用程序之一,并且我收到了大量“中止”崩溃。崩溃仅发生在 Android 10 设备上。该应用程序是使用 Qt 5.13.2 和 Target SDK 28 (Android 9) 构建的。不幸的是,我无法在我们的任何 Android 10 设备上重现崩溃。
JDK:jdk1.8.0_241.jdk
NDK:android-ndk-r21
这似乎是一个类似的问题,但并不完全相同。在中止崩溃
关于什么可能导致这次崩溃的任何想法将不胜感激。这是 Google Playstore 控制台中显示的堆栈跟踪:
backtrace:
#00 pc 000000000006f06c /apex/com.android.runtime/lib64/bionic/libc.so (abort+160)
#01 pc 00000000000cf71c /apex/com.android.runtime/lib64/bionic/libc.so (__fortify_fatal(char const*, ...)+116)
#02 pc 00000000000cee50 /apex/com.android.runtime/lib64/bionic/libc.so (HandleUsingDestroyedMutex(pthread_mutex_t*, char const*)+52)
#03 pc 00000000000cecb4 /apex/com.android.runtime/lib64/bionic/libc.so (pthread_mutex_lock+148)
#04 pc 00000000000cd6e4 /apex/com.android.runtime/lib64/bionic/libc.so (pthread_cond_wait+72)
#05 pc 0000000000071674 /system/lib64/libc++.so (std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&)+20)
#06 pc 00000000000198dc /system/lib64/libstagefright_bufferpool@2.0.so (android::hardware::media::bufferpool::V2_0::implementation::Accessor::Impl::invalidatorThread(std::__1::map<unsigned int, std::__1::weak_ptr<android::hardware::media::bufferpool::V2_0::implementation::Accessor::Impl> const, std::__1::less<unsigned int>, std::__1::allocator<std::__1::pair<unsigned int const, std::__1::weak_ptr<android::hardware::media::bufferpool::V2_0::implementation::Accessor::Impl> const>>>&, std::__1::mutex&, std::__1::condition_variable&, …Run Code Online (Sandbox Code Playgroud) 我目前在Appstore中有一个使用Cocos2D框架的App.对于碰撞检测,我使用的是glReadPixels.屏幕仅具有白色和黑色像素,并且检测黑色像素意味着碰撞.一切都运行良好,直到iOS 5.1.1,但在iOS6 Beta(所有这些)glReadPixels停止工作.现在glReadPixels返回的RGB值始终为0,0,0.
有谁知道出了什么问题或如何解决这个问题?
非常感谢您的帮助!