• react-native 打包 出apk


     先上步骤: 

    一、 生成签名文件(my-release-key.keystore文件)

    Android要求所有应用都有一个数字签名才会被允许安装在用户手机上

    1.  在项目目录下运行如下命令:

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

     

    2. 输入密钥库口令:(如图,在输入上面的命令后,会有如下的要求)

      要求至少6个字符,一定要记住输入的内容(输入的时候 终端上是不显示输入的内容的)

      笔者在第一次打包的时候就是懵逼的,看着空荡荡的输入区域,以为键盘坏了,一顿狂按,发现回车还能用,然后在后面需要密钥的时候就。。。

      注意:请记得妥善地保管好你的密钥库文件,不要上传到版本库或者其它的地方。(React中文网提示)

    3. 姓名、地址这些的就可以直接回车跳过了,在最后显示:“是否正确” 的时候 选择 是 就可以了

     

     

    4. 生成签名文件my-release-key.keystore(会在项目目录下生成)

     

    二、 将项目目录下生成的my-release-key.keystore文件,拷到 android/app 目录下

     

     

    三、修改android里面的代码

    1. 在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=******

     

    2. 在android/app/build.gradle文件在添加如下代码:

    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 {
                minifyEnabled enableProguardInReleaseBuilds
                proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
                signingConfig signingConfigs.release    //新增此句
            }
        }
    
        ...
    }

     

    注意: 把 def enableProguardInReleaseBuilds = false 改成 true

    启用Proguard代码混淆来缩小APK文件的大小(保护源代码,缩小APK包)
    Proguard是一个Java字节码混淆压缩工具,它可以移除掉React Native Java (和它的依赖库中)中没有被使用到的部分,最终有效的减少APK的大小。

    (此处解释来自:windows下react-native android打包笔记

     

    四、最后,我们就可以执行打包命令了(以后再打包,只需要执行此命令)

    gradlew assembleRelease

     

    win10系统的powershell里面执行后,会报错误:

     改为如下命令即可

    ./gradlew assembleRelease

    最终,在不报错的情况下,会在 androidappuildoutputsapk elease目录下生成app-release.apk这个最终的打包文件

  • 相关阅读:
    localStorage存储数组以及取数组方法
    jq选择CheckBox进行排序
    js定时函数,定时改变字体的大小
    JQuery Datatable用法
    WebSocket实战
    代码段
    黎活明给程序员的忠告 收藏
    雅砻江后勤项目经验总结
    Java泛型方法
    回忆,梦的开始
  • 原文地址:https://www.cnblogs.com/nangezi/p/10582132.html
Copyright © 2020-2023  润新知