美文网首页
打包发布

打包发布

作者: Android_冯星 | 来源:发表于2018-08-15 00:24 被阅读0次

    Android端

    1. 生成以一个签名秘钥
      keytool -genkey -v -keystore MyApp-release-key.keystore -alias MyApp -keyalg RSA -keysize 2048 -validity 10000

    2. 在/android/app/src/main/目录下创建assets目录。(如果目录存在跳过步骤)

    3. 将index.android.bundle下载并保存在assets资产目录中
      curl -k "http://localhost:8081/index.android.bundle" > android/app/src/main/assets/index.android.bundle

    image.png

    出现上面的提示代表下载成功。
    这时在android/app/src/main/assets/目录下会出现index.android.bundle文件。

    1. 在Android端添加gradle配置信息

    打包的apk在未签名的情况下,没有root的手机是不允许安装的。

    在build.gradle文件中

     signingConfigs{
            release{
                storeFile file('../../MyApp-release-key.keystore')
                storePassword "fengxing"
                keyAlias 'myapp'
                keyPassword 'fengxing'
            }
        }
    
    
     buildTypes {
            release {
                minifyEnabled enableProguardInReleaseBuilds
                proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
                signingConfig signingConfigs.release
            }
        }
    
    1. 开启代码混淆来减小apk文件的大小 proguard

    Proguard 是一个java字节码混淆压缩工具。它可以移除掉React Native Java(和它的依赖库中)没有被使用到的部分,最终减小apk大小。

    弃用Proguard之后,必须再次全面检测你的应用,Progurd有时需要为你引入的每一个第三方库做一些额外的配置。参见app/proguard.pro文件

    def enableProguardInReleaseBuilds = true
    默认false,改成true就开启了代码混淆了。

    1. 在/android/目录下 执行gradle assembleRelease命令。打包后的文件在 android/app/build/outputs/apk中。如果打包碰到问题可以先执行下 gradle clean 清理下。

    在执行gradle assembleRelease命令 遇到的问题

    What went wrong:
    Could not list contents of '/Users/mrleonmark/Desktop/react-li/iwant1/iwant/node_modules/node-pre-gyp/node_modules/.bin/detect-libc'. Couldn't follow symbolic link.
    

    执行
    unlink /目录/
    例如

    unlink /Users/mrleonmark/Desktop/react-li/iwant1/iwant/node_modules/node-pre-gyp/node_modules/.bin/detect-libc
    

    问题解决.如果还不好使

    rm -rf node_modules && npm install
    

    一步到胃.

    如果提示 gradle 命令找不到 自行配置环境变量。

    到/android/app/build/outputs/apk/下 查看是否有apk文件。

    相关文章

      网友评论

          本文标题:打包发布

          本文链接:https://www.haomeiwen.com/subject/hmmbbftx.html