react native系列 - 从零开始构建

从零开始构建第一步,当然是从hello world开始,第一课我们没什么代码都不写,只用生成的代码来打包apk。为什么一开始就要学会打包,因为如果连打包都不会,以后做好了也没用。学会了打包,才能让我们有动力继续下去,现在网上到处也有资料,本文也是在查了资料之后进行的。因为安卓的apk都需要签名,所以我们第一步就是生成一个签名。

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

2. 把my-release-key.keystore放到android/app下

3. 在根目录下配置全局的gradle信息,~/.gradle/gradle.properties,假如没有gradle.properties就生成这个文件。

MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=123123
MYAPP_RELEASE_KEY_PASSWORD=123123

 

4. 修改/android/app/build.gradle

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

5. 进到android目录,执行./gradlew assembleRelease

6. 在xxx/android/app/build/outputs/apk下生成了一个app-release.apk,恭喜你,有了第一个apk安装包。

生成的hello world足足有7.5M,让我们来看看里面都是什么

以安卓为例,代码打包完之后就是index.android.bundle这个文件,它的大小为560kb,还是比较大的,现在我还不知道怎么优化,不急。再看看最大的地方还是在lib这个文件夹,猜测主要是为了兼容不同的架构吧。

posted @ 2017-07-13 10:30  e.e.p  阅读(219)  评论(0编辑  收藏  举报