react-natve Android打包,到手机安装全过程。 react-natve Android打包失败、react-natve Android手机安装完成之后打不开,闪退!

本文详细介绍了React-Native应用在Android上的打包流程,包括5个步骤,但在执行过程中遇到了任务名已存在错误及打包后手机安装闪退的问题。通过解决gradle版本冲突和清理资源文件,成功打包并解决了手机运行问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

打包共5个步骤

1.在终端里面,cd 到项目的根目录后.执行下面这行命令:

keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

2.执行第一步会在根目录下会生成一个XXXXXX.keystore的文件,直接拿到android/app下.

3.在android/gradle.properties中加入(******换为你刚才输入的口令.):

MYAPP_RELEASE_STORE_FILE=my-release-key.keystore

MYAPP_RELEASE_KEY_ALIAS=my-key-alias

MYAPP_RELEASE_STORE_PASSWORD=******

MYAPP_RELEASE_KEY_PASSWORD=******

 

4.在android/app/build.gradle添加下面<<<<< 中的内容 >>>>>

 

def enableProguardInReleaseBuilds = true // 改为true

android {
...
    defaultConfig {
....
    }
    <<<<< 
        signingConfigs {
            release {
                storeFile file(MYAPP_RELEASE_STORE_FILE)
                storePassword MYAPP_RELEASE_STORE_PASSWORD
                keyAlias MYAPP_RELEASE_KEY_ALIAS
                keyPassword MYAPP_RELEASE_KEY_PASSWORD
            }
        }
    >>>>>
    splits {
....
    }
    buildTypes {
        release {
            <<<<< signingConfig signingConfigs.release >>>>>
           ...
        }
    }
}

 

5.终端cd 到android目录下.执行命令

./gradlew assembleRelease

 


但是出现了一个问题,> Cannot add task 'wrapper' as a task with that name already exists. 说是在android/build.gradle 文件36行报错

最终发现原因是gradle版本问题

// 旧版本是:
task wrapper(type:Wrapper) {
    //configuration
}

// 新版本是:
wrapper {
    //configuration
}

改完之后,再次执行./gradlew assembleRelease

成功了。


但是发现手机安装完成之后打不开,闪退!

在项目根目录下执行

react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

执行成功之后会在/android/app/src/main/assets下面生成一个Bundle文件
完事之后再次到android目录下执行 ./gradlew assembleRelease

 

如果还是不行
找到android/app/src/main/java 删除 drawable

再次重新打包即可

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值