安卓工作室 : How to run a single test on x86

标签 android android-studio

我为两种不同的架构使用了两种不同的风格,因为我有非常大的 native 库,而我想要更小的二进制文件。

当我点击“运行”图标时,Android Studio 始终构建并部署我们产品的“Arm”风格。如果我在 x86 模拟器上运行它,它会失败,因为它没有 x86 的库。

有人知道如何说服 Android Studio 为特定模拟器部署正确的版本吗?

最佳答案

尝试在 build.gradle 中使用 abiFilter 属性。

This post解释了如何在不同的架构中使用原生库:

为每个架构构建一个 APK,并且做得很好!一章中说:

通过使用 abiFilter 属性,使用 flavors 可以非常轻松地为每个架构构建一个 APK。

尝试将此添加到您的gradle.build:

android{
  ...
  productFlavors {
        x86 {
            ndk {
                abiFilter "x86"
            }
        }
        mips {
            ndk {
                abiFilter "mips"
            }
        }
        armv7 {
            ndk {
                abiFilter "armeabi-v7a"
            }
        }
        arm {
            ndk {
                abiFilter "armeabi"
            }
        }
        fat
    }
}

您可能只需要 armx86

在此之后,使用gradle文件同步项目

Tools > Android > Sync Project with Gradle Files

现在您应该能够在构建变体之间切换,并且应该按架构生成一个 APK。

选择左下角的Build Variants。您应该能够在 Build Variant 下拉列表中的不同架构之间切换。

希望这对您有所帮助。

关于安卓工作室 : How to run a single test on x86,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26682462/

相关文章:

android - 无法让 RecyclerView.Adapter 正确显示

android - Android 相机设置显示方向失败

android - 如何在 android studio 上打开这个文件?

适用于 Pre-Lollipop 设备的具有弯曲背景的 Android Ripple 按钮

android - app :layout_goneMarginLeft ="" do for views in constraintlayout? 是什么意思

java - 在 Android 中结束线程的正确方法

android - 无法让 JQueryMobile CSS/JS 在 PhoneGap 中加载

android - 带溢出的 DIV 不会在 Android 设备上滚动

Android Studio 窗口大小太大

flutter - 如何在Android Studio IDE中自定义硬换行竖线用于代码格式化