我目前正在尝试通过bazel从Android应用程序构建两个APK。
构建原始apk没问题,但是测试apk更加麻烦。每当我构建它时,它都会以普通apk的形式构建。
要构建测试apk,您需要做些具体的事情吗?
这是我的作品。巴西
android_binary(
name = "android_canary",
custom_package = "my.test.app",
manifest = "AndroidManifest.xml",
resource_files = glob(["main/res/**"]),
deps = [":android_canary_lib"],
)
android_library(
name = "android_canary_lib",
custom_package = "my.test.app",
srcs = glob(["main/*.java"]),
manifest = "AndroidManifest.xml",
resource_files = glob(["main/res/**"]),
exports = [
gmaven_artifact("com.android.support:appcompat-v7:aar:28.0.0"),
gmaven_artifact("com.android.support.constraint:constraint-layout:aar:1.1.3"),
],
)
android_binary(
name = "android_canary_test",
instruments = ":android_canary",
custom_package = "my.test.app.test",
manifest = "AndroidTestManifest.xml",
deps = [":android_canary_test_lib"],
)
android_library(
name = "android_canary_test_lib",
custom_package = "my.test.app.test",
srcs = glob(["test/*.java"]),
deps = [
gmaven_artifact("androidx.test:runner:aar:1.1.0"),
gmaven_artifact("androidx.test:monitor:aar:1.1.0"),
gmaven_artifact("androidx.test:rules:aar:1.1.0"),
gmaven_artifact("androidx.test:core:aar:1.0.0"),
gmaven_artifact("androidx.test.espresso:espresso-core:aar:3.1.0"),
gmaven_artifact("androidx.test.uiautomator:uiautomator:aar:2.2.0"),
"@junit_junit//jar",
":android_canary_lib",
],
)