最近公司移动端开发人员离职了,我一个后端开发接收了他的mac电脑,Android Studio,以及APP打包的工作,找了好久才找到这篇APP打包的文章,感谢大神!

打包的第一种方式

(1)在Android Studio 中选中app这module,选择菜单栏“”Build——Generate signed APK“”


(2)弹出窗口 
     
(3)创建密钥库及密钥,创建后会自动选择刚创建的密钥库和密钥(已拥有密钥库跳过) 
    点击“Create new...”按钮创建密钥库 
     
        Key store path:密钥库文件的地址 
        Password/Confirm:密钥库的密码 
        Key: 
            Alias:密钥名称 
            Password/Confirm:密钥密码 
            Validity(years):密钥有效时间 
            First and Last Name:密钥颁发者姓名 
            Organizational Unit:密钥颁发组织 
            City or Locality:城市 
            Country Code(XX):国家 
(4)选择已存在密钥库及密钥(在(3)中创建密钥库后跳过此步骤) 
    点击“Choose existing...”按钮找到密钥库文件 
    Key store password输入已选择的密钥库文件的密码 
    点击Key alias后的“...”按钮,选择或者创建一个密钥 
         
        选中“Use an existing key”,在后面的选择框中选择密钥 
        选中“Create a new key”,创建新的密钥,详见(3) 
        点击OK按钮 
    Key passowrd输入选择的密钥的密码 
(5)点击“Next”按钮,选择保存路径后,点击“Finish”按钮完成 

     

打包的第二种方式

1. 默认为debug mode,使用的签名文件在: $HOME/.android/debug.keystore


2. Release Mode 签名:

 build.gradle

    

[plain]  view plain  copy  
  1. android {  
  2.     signingConfigs {  
  3.         releaseConfig {  
  4.             keyAlias 'stone'  
  5.             keyPassword 'mypwd'  
  6.             storeFile file('/Users/stone/Documents/project_AS/myapplication/stone.keystore')  
  7.             storePassword 'mypwd'  
  8.         }  
  9.     }  
  10.         buildTypes {  
  11.            release {  
  12.              ...  
  13.              signingConfig signingConfigs.release  
  14.            }  
  15.         }  
  16.   
  17. }  

signingConfigs 即签名配置。 配置名releaseConfig{ //配置内容 }

在buildTypes中指定release时的signingConfigs对应的配置名 

打包的第三种方式:替换AndroidManifest中的占位符

举个例子,在AndroidManifest文件中,我们将极光推送的key值指定为一个占位符

                    
  1. <meta-data
  2. android:name = "JPUSH_APPKEY"
  3. android:value = "$ {JPUSH_APPKEY} " />

在build.gradle文件中,这里介绍3种方法去替换该占位符
1.接收gradlew assemble命令输入的自定义参数的值

                    
  1. manifestPlaceholders = [
  2. // 默认是正式的极光key
  3. JPUSH_APPKEY: "\"" + JPUSH_APPKEY_PARA + " \ ""
  4. ]

2.使用string文件的值

manifestPlaceholders = [JPUSH_APPKEY:"@string/JPUSH_APPKEY"]                    

3.使用gradle.properties文件的值

打包的第四种方式

(1)加载Key Store:

我们先删掉上面的通过第一种方式所签名的apk文件。接下来进行第二种方式来签名,即命令行的方式。

打开Project Stucture图形化界面:

(2)选中app这个module,然后切换到singning标签栏,紧接着点击添加,然后生成release签名信息,紧接着点击”OK”

(3)切换到Build Types标签,将Signing config选择为”release”,即将刚刚生成的release签名信息配置进去

(4)然后执行菜单栏的”build-clean Project”

(5)

生成realease版本的apk:

紧接着在命令行Terminal输入如下命令:(AS已经将命令行Terminal集成到了软件当中)

gradlew assembleRelease



更多相关文章

  1. GitHub 标星 2.5K+!教你通过玩游戏的方式学习 VIM!
  2. 一款常用的 Squid 日志分析工具
  3. GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
  4. RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
  5. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
  6. Android(安卓)Studio目录结构详细解答
  7. Android(安卓)SharedPreferences 首次运行引导界面
  8. Android(安卓)ImageView 不显示JPEG图片 及 Android(安卓)Studio
  9. Android版本更新(适用于6.0/7.0)

随机推荐

  1. json连接中央气象台api异常
  2. Android下如何计算要显示的字符串所占的
  3. 【Androidd Release】AndroidStudio 发布
  4. Android 图文数据JSON解析,金山词霸每日一
  5. Android之USB Camera摄像头节点后移
  6. Android中的style和theme
  7. Android user defined service handling
  8. Android 中文API (94) ―― MediaControlle
  9. Android之路之十七(重要组件之Service)
  10. Android的adapter总结和深入研究