android-package

  • Keyed
  • 5 Minutes
  • June 1, 2015
  1. 生成签名

    1
    keytool -genkey -v -keystore release-key.keystore  -alias key-alias -keyalg RSA -keysize 2048 -validity 10000
    • [注意].我这边环境变量已经配置了,注意上面的release-key这个名字可以自己取名,同时my-key-alias也是自己取名,其中第二个名称alias参数后边的别名,在后面你在为应用签名的时候需要用到,所以暂时记录一下这个别名。
      上面的命令我们需要输入密钥库(keystore)密码和对应秘钥的密码,然后设置名字,组织,国家,省份相关的信息,最后会生成release-key.keystore的签名文件。
  2. Gradle配置

    • 然后进行修改项目中gradle.properties文件,进行添加如下的代码(注意下面的签名和别名的名称和上一步放入的release-key.keystore 要一样,下面两项分别填写签名和别名的密码)-我取的密码为test12345
      1
      2
      3
      4
      MYAPP_RELEASE_STORE_FILE=release-key.keystore
      MYAPP_RELEASE_KEY_ALIAS=test_alias
      MYAPP_RELEASE_STORE_PASSWORD=test12345
      MYAPP_RELEASE_KEY_PASSWORD=test12345

这一步我们是进行[注意].以上的签名秘钥请大家一定要妥善保管,因为在应用发布的时候需要的。全局的gradlde进行变量化的配置,后边我们会在后边的步骤中给相应的应用进行签名。
[注意].以上的签名秘钥请大家一定要妥善保管,因为在应用发布的时候需要的。

  1. 生成签名包

    1. 对存在react.gradle文件的项目打包
      命令行切到react native主目录,然后运行下面的命令,请注意下面 android就是Android项目的目录名称

      1
      cd android && ./gradlew assembleRelease
    2. 对与不存在react.gradle文件的项目打包

      • 这边因为react.gradle文件不存在,主要针对第四讲课程中的项目(Android原生项目移植到React Native平台)来进行举例。
        首先命令切换到该react native项目的主目录,然后运行以下的命令,生成assets文件夹
        1
        mkdir -p android/app/src/main/assets

紧接着运行以下命令,进行生成inde.android.bundle文件

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

最后运行之前的命令,进行代码和资源文件打包,生成的带有签名的apk还是在上面的目录中。

1
cd android && ./gradlew assembleRelease

  1. 运行Apk
    上面的步骤我们已经完成了项目的签名打包在对应的目录中生成中apk文件,下面我们直接运行以下的命令进行将apk安装到设备中,我这边直接采用了模拟器进行测试了。
    1
    cd android && ./gradlew installRelease