ADB0020:Android ABI 不匹配.如何设置目标物理设备的 ABI? [英] ADB0020: Android ABI mismatch. How do I set ABI of target physical device?

查看:20
本文介绍了ADB0020:Android ABI 不匹配.如何设置目标物理设备的 ABI?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一台带有 Pie 的全新三星 A10.

我正在尝试运行 MediaPlugin 中提供的示例应用程序:

不同的 Android 设备使用不同的 CPU,进而支持不同的指令集.CPU 和指令集的每种组合都有自己的应用程序二进制接口 (ABI).

有关 Android ABI 的更多支持,您可以参考 Android ABI 指南.https://developer.android.com/ndk/guides/abis

I have a brand new Samsung A10 with Pie on it.

I'm attempting to run the Sample Application provided in MediaPlugin: https://github.com/jamesmontemagno/MediaPlugin

At first I was getting this error when I tried to build:

Invalid value 'armeabi' in $(AndroidSupportedAbis). This ABI is no longer supported. Please update your project properties to remove the old value. If the properties page does not show an 'armeabi' checkbox, un-check and re-check one of the other ABIs and save the changes.

Then I did some reasearch and went to Android Properties / Android Options / Advanced and unselected armeabo-v7a.

As I understand it this will remove 32 but support, which I'm fine with.

Now I get this error:

ADB0020: Android ABI mismatch. You are deploying an app supporting 'x86;x86_64;arm64-v8a' ABIs to an incompatible device of ABI 'armeabi-v7a;armeabi'. You should either create an emulator matching one of your app's ABIs or add 'armeabi-v7a' to the list of ABIs your app builds for.

I'm targeting a new A10 Samsung phone with Android Pie on it. I can't see where to set the 'device ABI', though why would a new Pie phone be interseted in armeabi-v7a anyway?

Where can I set the 'device ABI' or otherwise fix this?

I can't find anything on Google. Thanks.

UPDATE

I've found this work around which is as worrying as it is bizarre:

  • Untick the armeabi-v7a option
  • Build
  • Re-tick the option
  • Build
  • Deploy

from https://forums.xamarin.com/discussion/146174/vs2019-error-this-abi-is-no-longer-supported

I'd like to understand what's going on here rather than just work around it.

This is only an issue with my A10 physical Samsung phone, in emulators it seems to work fine.

解决方案

I got this error before. You could untick all the supported architectures to tick all of them like below. Delete the obj and bin folder of project to clean and rebuild. Most of times, it works.

Different Android devices use different CPUs, which in turn support different instruction sets. Each combination of CPU and instruction set has its own Application Binary Interface (ABI).

For more support of Android ABIs, you could refer to the Android ABIs guides. https://developer.android.com/ndk/guides/abis

这篇关于ADB0020:Android ABI 不匹配.如何设置目标物理设备的 ABI?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆