【问题标题】:Invalid value 'armeabi' in $(AndroidSupportedAbis). This ABI is no longer supported. Xamarin.Forms - VS2019$(AndroidSupportedAbis) 中的值“armeabi”无效。不再支持此 ABI。 Xamarin.Forms - VS2019
【发布时间】:2019-10-05 09:49:30
【问题描述】:
我有一个使用 Xamarin.Forms 构建的移动应用程序
当我尝试将我的项目从 VS2017 升级到 VS2019 时
我在 Android 项目
中收到此错误
$(AndroidSupportedAbis) 中的值“armeabi”无效。不再支持此 ABI。请更新您的项目属性
我试图删除 bin 和 obj 文件夹来强制项目重建所有内容,但仍然出现错误
我能得到关于上述错误的解释以及如何解决它吗?
注意:VS2017中不会出现该错误
【问题讨论】:
-
Android 在最近的版本中删除了armeabi,旧项目可能仍将其包含在其支持的 abi 列表中。您必须更新那些不包括armeabi。带有 VS2017 的构建仍然支持它,但由于您使用的是新的 VS2019 构建,我们删除了它以遵守 Android。 armeabi - Deprecated in r16. Removed in r17. No hard float. (developer.android.com/ndk/guides/abis)
标签:
xamarin
xamarin.forms
xamarin.android
build-error
visual-studio-2019
【解决方案1】:
armeabi 已被弃用,您的 Android 项目在面向 Play 商店的发布版本中应至少以 armeabi-v7a 和 arm64-v8a 为目标。
您可以直接编辑您的.csproj 并从AndroidSupportedAbis 标签中删除armeabi:
<AndroidSupportedAbis>armeabi-v7a;arm64-v8a</AndroidSupportedAbis>
或者您可以在 IDE 中打开 Android Build 设置,它会自动为您更新:
【解决方案2】:
可以分3步调整。
第 1 步 - 右键单击 Android 项目并单击属性:
步骤 2 到 4:
第 5 步 - 取消选中 armeabi:
【解决方案3】:
在 Visual Studio 中,右键单击解决方案资源管理器下的项目并选择属性。在 Android Options 页面下检查 Packaging properties 部分并确认 Use Shared Runtime 已禁用(关闭此选项可让您明确选择要支持的 ABI)。单击 Advanced 按钮,然后在 Supported architectures 下,检查您想要支持的架构:
提示:如果您不了解 arm 架构,检查 all 将消除错误