问题是通过USB在本地OnePlus 7上运行应用程序(“设备支持,但APK仅支持armeabi-v7a,x86_64,arm64-v8a,x86”)

问题描述 投票:0回答:1

我想直接通过Android Studio将带有USB的全新OnePlus 7测试设备连接到我的开发笔记本电脑,并在其中安装我们的应用。

但是,Android Studio显示此:

enter image description here

...并尝试在设备上运行该应用程序失败,并显示:

该应用程序不支持设备的SDK版本:(1)。

我发现这与我们为(两种)构建类型指定的abiFilters有关:

ndk {
    abiFilters "armeabi-v7a", "arm64-v8a", "x86", "x86_64"
}

在那里存在是有原因的,但是我对此并不陌生,可能无法很好地解释它。尝试删除abiFilters会导致构建(:app:packageDebugBundle)失败,原因是“所有具有本机模块库必须支持同一组ABI ...“

Edit:这归结为以下事实:应用程序中的一个模块使用专有库,其中包括仅适用于[ARM64_V8A, ARMEABI_V7A, X86, X86_64]的本机库(.so)。改变这一点是我们无法控制的。

那么那个列表上缺少哪个ABI? OnePlus 7使用什么ABI?它有一个高通Snapdragon 855 CPU,但是我不容易弄清楚它对应的是什么。

另外一点:当通过Google Play分发时,该应用在OnePlus 7上运行正常。是否有任何变通办法也可以使其在本地运行?


还有其他使这项工作可行的想法吗?该设备显然已启用USB调试;我还会缺少其他开发人员选项吗?

android android-studio abi oneplus7
1个回答
0
投票

完全怪异,但解决了。

我也在命令行上尝试了adb install,但由于error: device unauthorized而失败。那促使我尝试this answer提出的建议:撤销USB授权

[之后,重新连接电缆并再次授予USB调试权限,请在安装的Android Studio中单击“播放”,然后在OnePlus设备上正常运行该应用程序。

© www.soinside.com 2019 - 2024. All rights reserved.