15 最后一步---将应用发布到360应用商店

15 最后一步---将应用发布到360应用商店

15 最后一步---将应用发布到360应用商店_第1张图片
.jpg

15.1 生成正式签名的APK文件

并不是所有的APK文件都能成功安装到手机上,Android系统要求只有签名后的APK文件才可以安装。

以前练习时,Android Studio使用了一个默认的keystore文件帮我们自动进行了签名。我们所有通过Android Studio来运行的程序都是使用了这个debug.keystore文件来进行签名的。

15.1.1 使用Android Studio生成

点击Android Studio导航栏上的Build--->Generate SignedAPK。

在Validity一栏中填写keystore文件的有效时长,单位是年,一般建议时间可以填的长一些。

15 最后一步---将应用发布到360应用商店_第2张图片
15 最后一步---将应用发布到360应用商店_第3张图片
15 最后一步---将应用发布到360应用商店_第4张图片
15 最后一步---将应用发布到360应用商店_第5张图片
生成的APK文件

15.1.2 使用Gradle生成

上一小节中我们使用了Android Studio提供的可视化工具来生成带有正式签名的APK文件。Android Studio其实还提供了另外一种方式---使用Gradle生成。

编辑app/build.gradle文件,在android闭包中添加如下内容:

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.mengweather.android"
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

    **signingConfigs {
         config {
                  storeFile file('E:/Key/Weather.jks')
                  storePassword '123456'
                  keyAlias 'Meng'
                  keyPassword '123456'
              }
            }**


    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

在android闭包中添加了一个signingConfigs闭包,然后在signingConfigs闭包中又添加了一个config闭包。接着在config闭包中配置keystore文件的各种信息,storeFile用于指定keystore文件的位置,storePassword用于指定密码,keyAlias用于指定别名,keyPassword用于指定别名密码。

将签名信息都配置好了之后,接下来只需要在生成正式版APK的时候去应用这个配置就可以了。编辑app/build.gradle文件。

buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            **signingConfig signingConfigs.config**
        }
    }

我们在buildTypes下面的release闭包中应用了刚才添加的签名配置,这样当生成正式版APK文件的时候就会使用我们刚才配置的签名信息来进行签名了。

那么我们如何才能生成APK文件呢?Android Studio中内置了很多的Gradle Tasks,其中就包括了生成APK文件的Task。

Gradle--->项目名--->:app--->Tasks--->build.

15 最后一步---将应用发布到360应用商店_第6张图片

assembleDebug用于生成测试版的APK文件,assembleRelease用于生成正式版的APK文件,assemble用于同时生成测试版和正式版的APK文件。在生成APK文件之前,先要双击clean这个Task来清理一下当前项目,然后双击assembleRelease。

目前keystore文件的所有信息都是以明文的形式直接配置在build.gradle中的,这样就不太安全

Android Studio项目的根目录下有一个gradle.properties文件,它是专门用来配置全局键值对数据的,我们在gradle.properties文件中添加如下内容:

KEY_PATH=E:/Key/Weather.jks
KEY_PASS=123456
ALIAS_NAME=Meng
ALIAS_PASS=123456

这里将keystore文件的各种信息以键值对的形式进行了配置,然后我们在build.gradle中去读取这些数据就可以了。

编译build.gradle文件

signingConfigs {
         config {
                  storeFile file(KEY_PATH)
                  storePassword KEY_PASS
                  keyAlias ALIAS_NAME
                  keyPassword ALIAS_PASS
              }
            }

这里只需要将原来的明文配置改成相应的键值。

你可能感兴趣的:(15 最后一步---将应用发布到360应用商店)