有人遇到这个安卓崩溃问题?崩溃率还不算低!!!有没有官方人员关注一下这个问题?
pid: 0, tid: 24665 >>> com.aaa.king <<<
backtrace:
#00 pc 0x0000000001e29b1c /data/app/~~QrWbQEWPAOP0G4iI8NwlSQ==/com.aaa.king-JxKFDvaJ-ZJiOa0tMAvQBA==/split_config.arm64_v8a.apk!libcocos.so (v8::HandleScope::HandleScope(v8::Isolate*)+36) (BuildId: d833d63a2a26872f3f8de95a2a2204e641859048)
#01 pc 0x0000000001cd055c /data/app/~~QrWbQEWPAOP0G4iI8NwlSQ==/com.aaa.king-JxKFDvaJ-ZJiOa0tMAvQBA==/split_config.arm64_v8a.apk!libcocos.so (cc::EventDispatcher::doDispatchJsEvent(char const*, std::__ndk1::vector<se::Value, std::__ndk1::allocatorse::Value> const&)+68) (BuildId: d833d63a2a26872f3f8de95a2a2204e641859048)
#02 pc 0x000000000171a804 /data/app/~~QrWbQEWPAOP0G4iI8NwlSQ==/com.aaa.king-JxKFDvaJ-ZJiOa0tMAvQBA==/split_config.arm64_v8a.apk!libcocos.so (bool cc::event::BusEventListenerContainer::broadcastcc::events::EnterForeground()+80) (BuildId: d833d63a2a26872f3f8de95a2a2204e641859048)
#03 pc 0x00000000017195ec /data/app/~~QrWbQEWPAOP0G4iI8NwlSQ==/com.aaa.king-JxKFDvaJ-ZJiOa0tMAvQBA==/split_config.arm64_v8a.apk!libcocos.so (cc::Engine::redirectWindowEvent(cc::WindowEvent const&)+260) (BuildId: d833d63a2a26872f3f8de95a2a2204e641859048)
#04 pc 0x000000000170eb04 /data/app/~~QrWbQEWPAOP0G4iI8NwlSQ==/com.aaa.king-JxKFDvaJ-ZJiOa0tMAvQBA==/split_config.arm64_v8a.apk!libcocos.so (bool cc::event::BusEventListenerContainer::broadcast<cc::events::WindowEvent, cc::WindowEvent const&>(cc::WindowEvent const&)+88) (BuildId: d833d63a2a26872f3f8de95a2a2204e641859048)
#05 pc 0x000000000175bad0 /data/app/~~QrWbQEWPAOP0G4iI8NwlSQ==/com.aaa.king-JxKFDvaJ-ZJiOa0tMAvQBA==/split_config.arm64_v8a.apk!libcocos.so (cc::GameInputProxy::handleAppCommand(int)+1412) (BuildId: d833d63a2a26872f3f8de95a2a2204e641859048)
#06 pc 0x0000000001cf3348 /data/app/~~QrWbQEWPAOP0G4iI8NwlSQ==/com.aaa.king-JxKFDvaJ-ZJiOa0tMAvQBA==/split_config.arm64_v8a.apk!libcocos.so (process_cmd+1146880) (BuildId: d833d63a2a26872f3f8de95a2a2204e641859048)
#07 pc 0x000000000175b2c0 /data/app/~~QrWbQEWPAOP0G4iI8NwlSQ==/com.aaa.king-JxKFDvaJ-ZJiOa0tMAvQBA==/split_config.arm64_v8a.apk!libcocos.so (cc::AndroidPlatform::loop()+196) (BuildId: d833d63a2a26872f3f8de95a2a2204e641859048)
#08 pc 0x000000000175b1ec /data/app/~~QrWbQEWPAOP0G4iI8NwlSQ==/com.aaa.king-JxKFDvaJ-ZJiOa0tMAvQBA==/split_config.arm64_v8a.apk!libcocos.so (cc::AndroidPlatform::run(int, char const**)+16) (BuildId: d833d63a2a26872f3f8de95a2a2204e641859048)
#09 pc 0x0000000001cf3214 /data/app/~~QrWbQEWPAOP0G4iI8NwlSQ==/com.aaa.king-JxKFDvaJ-ZJiOa0tMAvQBA==/split_config.arm64_v8a.apk!libcocos.so (android_app_entry+1146880) (BuildId: d833d63a2a26872f3f8de95a2a2204e641859048)
#10 pc 0x0000000000070138 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+200)
#11 pc 0x00000000000614d0 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
尝试过针对doDispatchJsEvent做try 防御性代码,也是无效
void EventDispatcher::doDispatchJsEvent(const char *jsFunctionName, const std::vectorse::Value &args) {
// if (!se::ScriptEngine::getInstance()->isValid()) {
// return;
// }
// se::AutoHandleScope scope;
// CC_ASSERT(inited);
// se::Value func;
// __jsbObj->getProperty(jsFunctionName, &func);
// if (func.isObject() && func.toObject()->isFunction()) {
// func.toObject()->call(args, nullptr);
// }
if (!se::ScriptEngine::getInstance()->isValid()) {
return;
}
CC_ASSERT(inited);
try {
se::AutoHandleScope scope;
se::Value func;
__jsbObj->getProperty(jsFunctionName, &func);
if (func.isObject() && func.toObject()->isFunction()) {
func.toObject()->call(args, nullptr);
}
} catch (...) {
CC_LOG_DEBUG("Caught exception in doDispatchJsEvent, safe to ignore");
}
}
目前推测的是 se::ScriptEngine::getInstance()->isValid() 这个状态是不准或者说是更新状态不及时。导致ScriptEngine对象是无效的,又去创建HandleScope导致崩溃。。
有没有解决过这个崩溃问题的大佬,或者官方大佬看一下这个问题