我试图将我的应用程序安装到Android L预览英特尔Atom虚拟设备,它失败了,错误:

INSTALL_FAILED_NO_MATCHING_ABIS

这是什么意思?


当前回答

这对我很管用……Android > Gradle脚本>构建。gradle(模块:应用) 添加到android*

android {
  //   compileSdkVersion 27
     defaultConfig {
        //
     }
     buildTypes {
        //
     }
    // buildToolsVersion '27.0.3'

    splits {
           abi {
                 enable true
                 reset()
                 include 'x86', 'armeabi-v7a'
                 universalApk true
               }
    }
 }

其他回答

INSTALL_FAILED_NO_MATCHING_ABIS是当你试图安装一个有本机库的应用程序,而它没有适合你的cpu架构的本机库时。例如,如果你为armv7编译了一个应用程序,并试图将其安装在使用英特尔架构的模拟器上,它将无法工作。

在我的案例中,在xamarin项目中,在visual studio错误通过选择属性-> Android选项并检查使用共享运行时间和使用快速部署,在某些情况下,其中之一

在visual studio社区版2017中,有时从Android选项中选择受支持的ABIs将不起作用。

在这种情况下,请验证.csproj有以下行,并且在相同的构建配置中没有重复的行。

 <AndroidSupportedAbis>armeabi;armeabi-v7a;x86;x86_64;arm64-v8a</AndroidSupportedAbis>

为了编辑,

卸载你的Android项目 右键单击并选择编辑项目… 确保在构建配置中只出现一次上面的行 保存 右键单击你的android项目并重新加载

Android 8:

Apache.com mons. IO: 2.4

给出INSTALL_FAILED_NO_MATCHING_ABIS,尝试将其更改为实现'common -io:common -io:2.6',它将工作。

在我的情况下(Windows 10, Flutter, Android Studio),我只是在Android Studio中创建了一个新的模拟器设备。这一次,我选择了x86_64 ABI而不是x86。这解决了我的问题。 我的模拟器设备如下面的截图所示。