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

Appcenter构建React Native安卓包成功后设备无法安装问题求助

问题描述

我在Appcenter中配置了React Native应用的构建与分发流程,此前运行一切正常,某次构建突然报错失败,错误日志如下:

> Task :app:stripReleaseDebugSymbols FAILED
Support for ANDROID_NDK_HOME is deprecated and will be removed in the future. Use android.ndkVersion in build.gradle instead.

> Task :app:mergeExtDexRelease

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:stripReleaseDebugSymbols'.
> No toolchains found in the NDK toolchains folder for ABI with prefix: arm-linux-androideabi

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

我参照方案修改了build.gradle配置如下:

buildscript {
    ext {
        ndkVersion = "20.1.5948944"
    }
    
    dependencies {
        classpath("com.android.tools.build:gradle:4.1.0")
   }

同时修改gradle-wrapper.properties为:

distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip

修改后构建可以正常成功,但分发的应用在设备上安装时提示「App Not Installed」错误,尝试多个版本均未解决。

解决方案
  • 检查签名配置:在build.gradle的android块下确认signingConfigs已正确配置签名文件信息,同时在buildTypes.release中开启双签名校验,配置如下:
android {
    signingConfigs {
        release {
            storeFile file("你的签名文件路径")
            storePassword "签名存储密码"
            keyAlias "签名别名"
            keyPassword "签名密钥密码"
            v1SigningEnabled true // 兼容低版本Android
            v2SigningEnabled true // 适配Android 7.0及以上版本
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
            // 其余原有配置保持不变
        }
    }
}

同时确认Appcenter的构建配置中已开启正确的签名选项,未使用自动生成的测试签名。

  • 检查ABI过滤配置:在build.gradle的defaultConfig块下确认ndk.abiFilters包含目标设备对应的ABI架构,示例配置如下:
defaultConfig {
    ndk {
        abiFilters 'armeabi-v7a', 'arm64-v8a' // 根据适配需求添加x86、x86_64等架构
    }
}

若只配置了64位架构,32位设备安装时会出现安装失败的问题。

  • 排查设备侧冲突:先卸载设备上同包名的旧版应用,再重新安装新包测试。如果旧应用签名和新包签名不一致,会直接触发安装失败。
  • 本地校验安装包有效性:将Appcenter构建输出的安装包下载到本地,使用adb install 安装包路径命令执行安装,根据命令行返回的具体错误码定位问题:
    • 若返回INSTALL_FAILED_UPDATE_INCOMPATIBLE:确认是签名不一致问题,统一签名配置即可
    • 若返回INSTALL_FAILED_NO_MATCHING_ABIS:确认是架构不匹配问题,补充对应ABI过滤即可
    • 若返回INSTALL_FAILED_INVALID_APK:确认是安装包损坏,检查构建流程中的压缩、打包配置是否正常

内容的提问来源于stack exchange,提问作者Prakash Loganathan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 19:24:04