Android 生成正式签名的APK文件

作者: 王世军Steven | 来源:发表于2017-02-13 17:50 被阅读658次

    Android 系统要求只有签名后的APK文件才可以进行安装 ,一次我们需要对生成的APK文件进行签名. 调试时使用的是默认的签名文件来进行签名的.

    1. 使用Android Studio 生成

    第一步 : Build-->Gernerate Signed APK 弹出如下窗口(有些可能需要输入系统密码).

    生成签名APK.png

    第二步 : 如果没有keystore 则点击 create new... 按钮. 如实填写相关信息,然后点击OK返回上一个界面

    创建keystore文件.png

    第三步 : 选择完keystone,填写完密码后点击下一步.

    Paste_Image.png

    第四步 : 点击 Finish即可,右上角弹出生成结果.点击 show in Explorer

    APK生成结果.png

    生成的 app-release.apk 就是签名后的文件.

    Paste_Image.png

    2. 使用Gradle生成

    第一步 : 在app/build.gradle 洗添加如下代码

     //  和defaultConfig 节点平级
        signingConfigs {
            config {
                storeFile file('keystore 路径')
                storePassword '密码'
                keyAlias 'Alias名字'
                keyPassword 'Alias 密码'
            }
        }
      buildTypes {
            release {
                ...
                // 添加的代码.
                signingConfig signingConfigs.config
            }
        }
    
    Paste_Image.png

    第二步 : 打开项目右侧的 Gradle面板, 点击项目-->:app --> build 如下图所示

    Paste_Image.png

    第三步 : 点击 assembleDebugassembleRelease生成APK.

    Paste_Image.png

    生成的APK路径 : /app/build/ouputs/apk

    签名APK路径.png

    3. 生成多渠道APK文件

    第一步 :在2. 的基础上,在app/build.gradle 中添加productFlavors节点.

    android {
        ...
        defaultConfig {
            ...
        }
    
        // Gradle 签名APK
        signingConfigs {
            config {
                storeFile file(KEY_PATH)
                storePassword KEY_PASS
                keyAlias ALIAS_NAME
                keyPassword ALIAS_PASS
            }
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                signingConfig signingConfigs.config
            }
        }
        // 多渠道打包APK
        productFlavors {
            qihoo {
                // 配置该渠道下的属性 ,复写 defaultConfig 中的所有属性.
               // 这里只修改ApplicationId属性
                applicationId "com.coolweather.android.qihoo"
            }
            baidu {
                applicationId "com.coolweather.android.baidu"
            }
        }
    
    }
    
    Paste_Image.png

    第二步 : 在app/src 下创建 baidu/javabaidu/res文件夹.

    Paste_Image.png

    第三步 : 设置指定的APP名称 , 创建baidu/res/values/strings.xml 文件,添加如下内容

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string name="app_name">百度版</string>
    </resources>
    

    第四步 : Gradle --> 项目名 --> :app ---> build,点击对应的生成APK.

    Paste_Image.png

    使用Android Studio也行

    Paste_Image.png

    参考 : 第一行代码(第二版) , 感谢郭神

    相关文章

      网友评论

        本文标题:Android 生成正式签名的APK文件

        本文链接:https://www.haomeiwen.com/subject/gbltwttx.html