适用于 Android 的 .NET 错误/警告 XA4301

問题

此消息指示在生成过程中将 Android 本机库(*.so 文件)添加到 .NET for Android 项目的 APK 文件时出现问题。

情况包括:

  • .NET for Android 无法确定库的 Android ABI。
    • 如果来自程序集引用,适用于 Android 的 .NET 将跳过此文件并发出一条提及该文件的警告。
    • 如果源自 .NET for Android 项目,适用于 Android 的 .NET 将会给出一个与该文件相关的错误。
  • 找到原生库的重复项。
    • 适用于 Android 的 .NET 将包括 APK 中的第一个条目,并发出指示重复文件的警告。

请参阅 Android 文档 ,了解 Android ABIs。

常见原因:

  • .NET for Android 项目在一个未被命名为有效 Android ABI 的目录中包含一个 @(EmbeddedNativeLibrary)@(AndroidNativeLibrary) 构建动作。
  • .NET for Android 项目正在引用两个 Android 库项目,这两个项目通过 @(EmbeddedNativeLibrary)@(AndroidNativeLibrary) 生成项包含相同的本地库。

解决方案

  • 将任何 Android 本机库放在使用相应 ABI 命名的 .NET for Android 项目中的目录中,例如 arm64-v8aarmeabi-v7ax86x86_64
  • 删除本机库的任何重复实例。