React Native for Android应用名及图标修改

应用开发完了,总不能顶着MyProject和小机器人图标就发布了吧?在发布之前,有多处需要修改的地方。今天我们来全面的看一下


应用ID

俗称PackageName,或APP ID。注意,在gradle构建的安卓应用里(React Native引用都是由gradle构建的),不要直接修改AndroidManifest.xml中的package字段,不但连源代码也要跟着改,而且结果还没用……

正确的改法是修改android/app/build.gradle中的以下内容:

……
android {
    ……
    defaultConfig {
        applicationId "com.myproject"  <-- 就是这行
        ……
    }
    ……
}

另外,修改后,你会发现react-native run-android无法启动应用(或者总是启动之前的版本),因为这时候还是试图启动原来的包名。这是因为react native官方还有一个BUG。你可以参照此PR修改,也可以在run-android后手动找到应用并打开。

版本号

还是在android/app/build.gradle中,versionCode 和versionName两项。versionCode必须每次增加,不能减少。每次发布之前,这两项都要修改哦~

应用名称

android/app/src/main/res/values/strings.xml中,找到<string name="app_name">MyProject</string>,中间的MyProject就是应用名称了。

图标

android/app/src/main/res/下,你会看到一系列mipmap开头的文件夹(默认是4个),按照里面ic_launcher.png的尺寸,生成四个版本的icon并替换。

有时候图标修改会迟迟不生效,此时从手机上彻底删掉原应用,删掉文件夹android/buildandroid/app/build,然后再重新打包

签名

要想打出发布包来,签名是必须的。你可以参照此文档生成并使用签名,相关内容都在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
        }
    }
}
...

通过环境变量配置签名有助于确保签名安全。当然,你也可以直接配置这些字段吗,像这样:

    signingConfigs {
        release {
            keyAlias 'store'
            keyPassword '123456'
            storeFile file('../../keystore/keystore.jks')
            storePassword '123456'
        }
    }

posted on 2018-01-15 09:17  cn三少<script></script>  阅读(1985)  评论(0编辑  收藏  举报

导航