Metaio Android SDK:在 Samsung Galaxy S6 上崩溃
Metaio Android SDK: crash on Samsung Galaxy S6
我有一个应用程序使用 Metaio SDK 来显示一些增强现实的东西。
我遇到一个问题,当 运行 应用程序在 Samsung Galaxy S6 上崩溃时。不幸的是,我没有关于该问题的任何 logcat 日志。
我发现这个 link http://helpdesk.metaio.com/questions/46459/android-sdk-arm64-support/46479.html 谈论类似的问题,它与三星 S6 上的 64 位 CPU 有关,但我不确定这是否是我的问题的原因。
有没有人以前见过类似的东西?
很有可能与您的问题有关。
当您在 Android 上安装 APK 时,系统将在lib
APK 文件夹,顺序由 Build.SUPPORTED_ABIS
决定。
如果您的应用碰巧有一个包含其他库的 arm64-v8a
目录,则不会安装 32 位 metaio 库,因为这些库没有混合。这意味着您必须为每种架构提供全套库。
因此,要解决您的问题,您可以从构建中删除 64 位库,或将 abiFilters 设置为仅打包 32 位架构:
android {
....
defaultConfig {
....
ndk {
abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
}
}
}
如果您收到与使用已弃用的 NDK 支持相关的错误,请将 android.useDeprecatedNdk=true
添加到您的根目录下名为 gradle.properties 的文件中项目。不要因为使用已弃用的集成而感到难过,因为使用 abiFilters 仍然是 atm 从 APK 中过滤掉 64 位库的最干净的方法。
我知道这是一个老问题,Metaio 已经不存在了,但解决方案是将 Metaio SDK 升级到当时最新的可用版本。
我有一个应用程序使用 Metaio SDK 来显示一些增强现实的东西。
我遇到一个问题,当 运行 应用程序在 Samsung Galaxy S6 上崩溃时。不幸的是,我没有关于该问题的任何 logcat 日志。
我发现这个 link http://helpdesk.metaio.com/questions/46459/android-sdk-arm64-support/46479.html 谈论类似的问题,它与三星 S6 上的 64 位 CPU 有关,但我不确定这是否是我的问题的原因。
有没有人以前见过类似的东西?
很有可能与您的问题有关。
当您在 Android 上安装 APK 时,系统将在lib
APK 文件夹,顺序由 Build.SUPPORTED_ABIS
决定。
如果您的应用碰巧有一个包含其他库的 arm64-v8a
目录,则不会安装 32 位 metaio 库,因为这些库没有混合。这意味着您必须为每种架构提供全套库。
因此,要解决您的问题,您可以从构建中删除 64 位库,或将 abiFilters 设置为仅打包 32 位架构:
android {
....
defaultConfig {
....
ndk {
abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
}
}
}
如果您收到与使用已弃用的 NDK 支持相关的错误,请将 android.useDeprecatedNdk=true
添加到您的根目录下名为 gradle.properties 的文件中项目。不要因为使用已弃用的集成而感到难过,因为使用 abiFilters 仍然是 atm 从 APK 中过滤掉 64 位库的最干净的方法。
我知道这是一个老问题,Metaio 已经不存在了,但解决方案是将 Metaio SDK 升级到当时最新的可用版本。