2021-01-07React-Native之打包发布(Android)

  • React-Native之打包发布(Android)

  • 一,介绍与需求
  • 移动端打包发布到应用市场
  • 二,发布配置

  • 注意:以下所有操作都在win10下进行,React Native版本0.59.5,android-studio 版本 3.2
  • 1,生成签名

  • keytool -genkey -v -keystore app.keystore -alias yingqi -keyalg RSA -keysize 2048 -validity 10000

    附加说明:

    -genkey    生成文件 
    -keystore  文件名 
    -alias         别名
    -keyalg     加密算法
    -validity    有效期(单位是天) 
    

    输入如上命令以后,出现以下步骤:

  • 注意:输入密钥库口令【很重要,要记住】

    生成的的keystore文件默认是在项目的根目录中,如下图所示:

  • 2,在gradle文件中添加签名配置

    把app.keystore文件放到你工程中的android/app文件夹下。

    打开编辑项目目录下的android/app/build.gradle文件,添加如下的签名配置:

  • ...
    android {
        ...
        defaultConfig { ... }
        signingConfigs {
            release {
                keyAlias 'yingqi' //别名
                keyPassword '123456' //密钥密码 之前设置秘钥口令
                storeFile file('app.keystore') //my-release-key.keystore文件的绝对路径
                storePassword '123456' //存储密码
            }
        }
        buildTypes {
            release {
                ...
                minifyEnabled enableProguardInReleaseBuilds // 在 当前文件中,找到变量 enableProguardInReleaseBuilds ,将其值修改为 true
                signingConfig signingConfigs.release // 引用签名
            }
        }
    }
    ...
    3,修改应用名称

    3,修改应用名称

    打开编辑项目目录下的android/app/src/main/res/values/strings.xml文件,修改名称

  • 4,修改应用icon

    将如下文件夹中的icon替换成需要修改的图标即可,注意icon大小保持一致

  • 5,代码混淆

    启用Proguard代码混淆来缩小APK文件的大小(保护源代码,缩小APK包大小)
    Proguard是一个Java字节码混淆压缩工具,它可以移除掉React Native Java (和它的依赖库中)中没有被使用到的部分,最终有效的减少APK的大小。
    重要:每次启用Proguard之后,必须再次全面地测试你的应用。Proguard有时候需要为你引入的每个原生库做一些额外的配置。参见app/proguard-rules.pro文件。

    在android/app/build.gradle文件中,找到enableProguardInReleaseBuilds然后修改def enableProguardInReleaseBuilds = true

  • 6,打包命令配置

  • package.son文件里面

  • "scripts": {
       "start": "node node_modules/react-native/local-cli/cli.js start",
       "bundle-ios": "node node_modules/react-native/local-cli/cli.js bundle --entry-file index.js  --platform ios --dev false --bundle-output ./ios/main.jsbundle --bundle-encoding utf8 --assets-dest ./ios",
       "bundle-android": "cd ./android && ./gradlew assembleRelease",
       "bundle-win-android": "cd android && gradlew assembleRelease",
       "test": "jest"
     },

    运行打包与成功效果

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值