You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android测试执行失败:Process crashed及InitializationProvider异常求助

解决connectedAndroidTest测试通过后崩溃:InitializationProvider资源找不到异常

执行gradlew connectedAndroidTest时,所有测试用例均执行通过,但测试运行最终失败,提示:

Test run failed to complete. Instrumentation run failed due to Process crashed.

核心异常栈:

java.lang.RuntimeException: Unable to get provider androidx.startup.InitializationProvider: android.content.res.Resources$NotFoundException: String resource ID #0x7f10002b

环境配置

// 依赖项
junit:junit:4.13.2
androidx.test:core:1.5.0
androidx.compose.ui:ui-test-junit4:1.5.3
androidx.compose.ui:ui-test-manifest:1.5.3
androidx.test:runner:1.5.0

// 构建配置
agp = 8.2.2
compileSdk = 34
compileOptions {
    sourceCompatibility = JavaVersion.VERSION_11
    targetCompatibility = JavaVersion.VERSION_11
}
kotlinOptions {
    jvmTarget = JavaVersion.VERSION_11.toString()
}
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"

解决方案

1. 定位缺失的资源ID

  • 前往项目路径build/generated/not_namespaced_r_class_sources/debug/r/<你的包名>/R.java,搜索0x7f10002b,找到对应的资源名称。
  • 确认该资源是否被误删除、未包含在测试变体编译范围内,或是依赖库中存在资源缺失。

2. 禁用App Startup自动初始化

在AndroidManifest.xml中移除App Startup的初始化Provider,避免测试结束阶段触发不必要的初始化逻辑:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">

    <!-- 其他配置 -->

    <provider
        android:name="androidx.startup.InitializationProvider"
        android:authorities="${applicationId}.androidx-startup"
        android:exported="false"
        tools:node="remove">
        <meta-data
            android:name="androidx.startup.InitializationProvider"
            tools:node="remove" />
    </provider>
</manifest>

3. 清理缓存并重建项目

执行以下命令彻底清理构建缓存,避免旧资源残留导致的不匹配:

./gradlew clean
./gradlew assembleDebugAndroidTest
./gradlew connectedAndroidTest

4. 调整测试Runner配置

尝试更换测试Runner为androidx.test.ext.junit.runners.AndroidJUnit4,并确保测试类注解正确:

@RunWith(AndroidJUnit4::class)
class SampleComposeTest {
    // 测试用例实现
}

5. 统一依赖版本兼容性

升级测试相关依赖到匹配AGP 8.2.2的版本,避免版本冲突:

androidx.test:core:1.5.2
androidx.test:runner:1.5.2

内容的提问来源于stack exchange,提问作者Nurakhmet Zunun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 02:15:00