做了一个基于seetafece的人脸跟踪app
在荣耀20上测试可以运行,但是换到荣耀70上就会闪退,试了其他人的手机也是这样,是因为手机太新导致兼容性问题吗
报错
E/BehaviorCollectManager: Fail to acquire dataAnalyzerService...
E/ealth_PhoneBas: open file error
E/QT: [QT]file does not exist
W/QT: Support!!
E/QT: [QT]file does not exist
E/AwareLog: AtomicFileUtils: readFileLines file not exist: android.util.AtomicFile@1044f3d
E/HwResourcesImpl: handleAddIconBackground resId = 0 return: android.graphics.drawable.ColorDrawable@a09fa00
E/HwResourcesImpl: handleAddIconBackground resId = 0 return: android.graphics.drawable.ColorDrawable@14b62c
E/OpenGLRenderer: Unable to match the desired swap behavior.
E/ealth_PhoneBas: fbcNotifyFrameComplete error: undefined symbol: fbcNotifyFrameComplete
E/ealth_PhoneBas: fbcNotifyNoRender error: undefined symbol: fbcNotifyNoRender
E/RenderScript: Failed to find hal setup entry points: undefined symbol: rsdHalAbort
E/RenderScript: Failed to load runtime , loading default
A/libc: Fatal signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 0xc67bb000 in tid 26954 (FaceTrackThread), pid 26408 (ealth_PhoneBase)
是不是只能在这个荣耀20上运行..
可以先检查下是否是路径问题
【以下回答由 GPT 生成】
很抱歉,由于我无法获取SeetaFace的代码和具体实现细节,无法提供确切的解决方案。但是,根据报错信息可以分析出一些可能的原因和解决方向。
从报错信息中可以看出,问题可能涉及以下几个方面:
文件不存在: 报错中提到了文件不存在的情况,根据报错信息中的"[QT]file does not exist"和"readFileLines file not exist",可以推测有文件缺失的情况。首先,检查是否缺少某些必要的文件,例如模型文件、配置文件等。确保这些文件都存在并且路径正确。
依赖库和运行环境问题: 报错中出现了"undefined symbol"的情况,这可能是由于某些依赖库未找到或者版本不兼容导致的。检查SeetaFace所依赖的库是否正确安装,并且与目标机型兼容。如果使用了第三方库,还要确保库的版本和SeetaFace的版本匹配。还需要检查是否有遗漏的运行环境或者权限设置。
兼容性问题: 报错中提到在一些新机型上出现问题,这可能是由于Android系统的版本或者硬件差异导致的。检查SeetaFace是否对不同的Android版本进行了适配,并且在新机型上进行了充分的测试。如果不确定新机型的兼容性,可以尝试在目标机型上进行调试或者输出更详细的日志信息。
基于上述问题,可以采取以下一些解决方案来尝试解决问题:
确保所有必要的文件存在,并且路径正确。可以尝试拷贝或者重新下载SeetaFace的相关文件,并检查文件的访问权限。
检查SeetaFace的依赖库和运行环境。确认所有依赖库均正确安装,并与目标机型兼容。检查运行环境是否完整,包括所有必要的权限设置。
针对可能的兼容性问题,可以尝试在新机型上进行调试,并输出更详细的日志以获取更多信息。可以使用Qt自带的调试工具进行调试,并检查是否有特定的新机型兼容性问题。
总之,解决这个问题需要更多的具体信息和实际测试。建议你先按照上述方案检查和排查问题,如果问题仍然存在,可以详细描述你的实现和环境,并提供更多的调试信息,以便我们能够更好地帮助你解决这个问题。
是不是模型加载失败了?
或者存储权限问题?