为什么要打包:

  • apk文件就是一个包,打包就是要生成apk文件,有了apk别人才能安装使用。打包分debug版和release包,通常所说的打包指生成release版的apk,release版的apk会比debug版的小,release版的还会进行混淆和用自己的keystore签名,以防止别人反编译后重新打包替换你的应用。

    简单点说就是给你的apk发身份证,上户口,防止和你长的一样的人,假冒你。这里的apk身份证就是我们的“.jks”文件。所以这个jks文件很重要。
    如果你同一代码,生成两个jks文件打包,那就代表的是两个软件。


**打包当然有很多种途径,可以用AS自带的签名,也可以通过Gradle签名等,这里就讲讲常规的。**

常规的AS打包主要分两种:

  • 一种是没有“.jks”文件的打包
  • 一种是有“.jks”文件的打包

一、 没有“.jks”文件的打包

首先 我们选择Build -> Generate Signed APK

会出现:

因为我们是没有密钥的(身份证)所以我们要去生成一个密钥,所以这里我们选择 Create new…
(注意:这里有两个“密钥的密码” 因为一个是密钥的密码,一个是key的密码,但是通常我们在设置的时候会选择设置同一个,这样方便我们记忆,所以这里都认为是密钥的密码。)

选择Create new…之后会出现:

点击ok之后,则选择好了文件,并生成了jks文件了。

点击ok之后, 会出现:

这些都是自动带出来的
是否记住密码,你要是怕你忘记密码,你就可以选择记住密码。
接下来就是Next

最后点击Finish
这是android studio的地步会出现

正在编译,当AS的右上角出现

表示打包成功
点击直接打开生成的apk文件的位置

二、 有“.jks”文件的打包

首先我们选择Build -> Generate Signed APK

选择已经存在,然后打开文件夹,找到对应的“.jks”文件

我的jks文件是放在E盘,叫test.jks 点击OK

别名是test,输入密码,点击Next,后面的步骤,和上面的一样。

本章小结:

注意:打包生成apk的方式有很多,这里就简单的说了一种,有兴趣的可以看看其他方法。

Android 超级简单的打包apk相关推荐

  1. Android开发超级简单的打包生成apk

    Androidk开发超级简单的打包生成apk 为什么要打包: apk文件就是一个包,打包就是要生成apk文件,有了apk别人才能安装使用.打包分debug版和release包,通常所说的打包指生成re ...

  2. Android Studio 超级简单的打包生成apk的方法

    本文介绍了Android Studio 超级简单的打包生成apk,分享给大家,也给自己留个笔记. 为什么要打包: apk文件就是一个包,打包就是要生成apk文件,有了apk别人才能安装使用.打包分de ...

  3. win8下cocos2dx3.2移植android平台及代码打包APK

      cocos2dx程序不能只在VS2012下运行,迟早是要搬运到Android和IOS上的.Windows下移植IOS平台先搁下不说比较困难,而且只有越狱的苹果机才可以运行,而且毕竟IOS高端.小众 ...

  4. Android开发Android studio之gradle打包apk重命名的方法

    老套路,先看效果图: 首先第一步在gradle里面(跟android同级)写个获取当前时间的方法如下: //获取时间的方法 GMT+8代表北京时间,下面两个方法都可以 static def getNo ...

  5. Android Studio 2.3 打包apk

    LZ-Says:写代码写得突然蒙比了,来来回回折腾了小2个月,乱啊~ 前言 话说从Eclipse转化到Android Studio后,一直都没打个包,发个版本,今天想提交测试打个版本,丫的一看,和Ec ...

  6. Android直接用手机打包apk!

    你没有看错,用手机浏览器访问Jenkins,就可以打包apk,并生成下载二维码,发送邮件通知测试人员下载,从此解放双手,告别打包测试.先上本人手机邮箱收到的打包成功通知效果图: 废话少说,开干! 本人 ...

  7. Android Studio 超级简单的打包生成apk

    为什么要打包: apk文件就是一个包,打包就是要生成apk文件,有了apk别人才能安装使用.打包分debug版和release包,通常所说的打包指生成release版的apk,release版的apk ...

  8. Android超级简单的实现圆形,矩形和圆角

    使用 View.setClipToOutline() 方法或 android:clipToOutline 属性将视图裁剪至其轮廓区域.由 Outline.canClip() 方法所决定,仅有矩形.圆形 ...

  9. unity android解析包失败,打包APK失败。求解释

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Error building Player: CommandInvokationFailure: Failed to re-package resourc ...

最新文章

  1. 解决Python报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 658: illegal multibyte
  2. 写个自己的Xcode4插件(二)
  3. _RecordsetPtr使用方法
  4. 如何使用窗体开发-理解那些函数怎么来的?
  5. 4j是合法python数字类型_python数字类型
  6. CSS定义字体间距 字体行与行间距
  7. IIS Service Unavailable问题
  8. 导入数据库出现html lang='zh' dir='ltr' class='ie ie7错误代码解决方法
  9. 排序算法-冒泡排序算法
  10. Android加密算法之AES加密和解密实现
  11. cpu型号怎么看服务器,看不懂CPU?学会看CPU只要五分钟
  12. 常用的无线充发射IC芯片
  13. 看看你的骂人水平是几段?
  14. 中国记账软件行业现状规模与应用前景预测报告(2022-2027)
  15. 基于色彩恒常( color constancy)特性的Frankle-McCann Retinex图像增强
  16. CSS段落间距调整 P标签段落上下距离如何设置
  17. uni 讯飞文字转语音 详解
  18. java swing mysql实现的仓库商品管理系统
  19. CAS单点登录框架使用
  20. 1.出现了 page[pages/XXX/XXX] not found.May be caused by :1. Forgot to add page route in app.json.2. Inv

热门文章

  1. 选择最新 Chromium,支持 H264 / H265
  2. 朝阳群众举报阿里996造成交通严重堵塞!网友:谁举报下我们啊...
  3. cfml 组件(cfc)示例源代码
  4. ubuntu16.04下安装understand
  5. USB转ttl模块 与 USB转rs485模块 usb转232
  6. 【数学模型】数学模型的简单认识
  7. 理解Unity3D中的四种坐标体系
  8. bugku平台 头等舱
  9. 关于Windows下关闭tomcat
  10. 倾听,职场上最容易被忽视的竞争力