react-native android打包

react native 打包

生成一个签名密钥

命令行输入:
keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
  • my-release-key.keystore 签名密钥文件名(可自行修改)

  • my-key-alias 别名 可修改

  • 例如:

keytool -genkey -v -keystore cuitao-android-release.keystore -alias cuitao-android-alias -keyalg RSA -keysize 2048 -validity 10000

react-native android打包_第1张图片
屏幕快照 2017-12-06 上午11.01.28.png

把生成的签名密钥文件放入项目的android/app 文件目录下

如:

react-native android打包_第2张图片
屏幕快照 2017-12-06 上午11.04.07.png

编辑~/.gradle/gradle.properties

  • 编辑~/.gradle/gradle.properties(没有这个文件你就创建一个),添加如下的代码(注意把其中的****替换为相应密码)

  • 注意:~表示用户目录,比如windows上可能是C:\Users\用户名,而mac上可能是/Users/用户名。

      MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
      MYAPP_RELEASE_KEY_ALIAS=my-key-alias
      MYAPP_RELEASE_STORE_PASSWORD=*****
      MYAPP_RELEASE_KEY_PASSWORD=*****
    
react-native android打包_第3张图片
屏幕快照 2017-12-06 上午11.07.03.png
react-native android打包_第4张图片
屏幕快照 2017-12-06 上午11.07.27.png

编辑你项目目录下的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
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}
...

编辑你项目目录下的android/gradle.properties 文件

  • 加入:***** 为密码

      MYAPP_RELEASE_STORE_FILE=cuitao-android-release.keystore
      MYAPP_RELEASE_KEY_ALIAS=cuitao-android-alias
      MYAPP_RELEASE_STORE_PASSWORD=*****
      MYAPP_RELEASE_KEY_PASSWORD=*****
    

生成发行APK包

cd android && ./gradlew assembleRelease

另外说一下sha1密钥获取方法

keytool -exportcert -list -v -alias 别名 -keystore .keystore文件路径
react-native android打包_第5张图片
image.png

获取开发版

桌面启动命令行:
输入cd .android
keytool -list -v -keystore debug.keystore  *不需要输入密码,直接回车!!!!!!

问题:

1 . 安卓: Execution failed for task ':app:processReleaseResources'.
Failed to execute aapt.

解决方法:在android/gradle.properties下添加android.enableAapt2 = false

react-native android打包_第6张图片
image.png

2.安卓: Could not find com.android.tools.build:gradle:3.0.1.(3.0.0等等)
解决办法:在android/build.gradle下添加:

buildscript {

repositories {
    google()  //添加此代码
    ....
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.0.0'


    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}
}

allprojects {
    repositories {
        google()  //添加此代码
        .....
    }
}

app 名称修改

react-native android打包_第7张图片
image.png

app图标修改

react-native android打包_第8张图片
image.png

觉得有用的小伙伴点个关注和小红心就行,么么哒。

友情提示:在开发中有遇到RN相关的技术问题,欢迎小伙伴加入交流群(620792950),在群里提问、互相交流学习。交流群也定期更新最新的RN学习资料给大家,谢谢大家支持!

你可能感兴趣的:(react-native android打包)