Ionic项目打包安卓APK
之前用Ionic+Angular做了几个小应用Demo,现在用其中一个做实验试下打包安卓的APK安装包。(备注:我用的应用demo是之前博客里写的汇率的Demo,不清楚的同学可以查哈~)
我是用ionic start创建的项目,在我的platforms里默认的只有IOS的平台,所以我要先安装上Android平台。
打开终端,进入到项目文件夹内,执行命令:$ ionic platform add android,之后等待添加完成。
第一步:先创建应用图标和启动图片
应用图标最少要1024px*1024px大小,启动图标最少要2208px*2208px,都要png-8格式的就可以了。做好图片后,我们把图标命名为icon.png,启动图片命名为splash.png,把这两张图片放到项目resources文件夹目录下,然后在android和ios文件夹目录下也各放一份,之后在终端执行命令:$ ionic resources,然后就会生成不同尺寸的图片。
(注:ionic resources命令默认会将图标和启动图片都生成不同尺寸的图片,如果像分别生成,可以执行ionic resources icon生成图标,执行ionic resources --splash生成启动图片)
第二步:优化项目文件
应用体积越小越好,所以我需要把项目里非必要的文件都清除掉。
① 移除Cordova Console插件
运行命令查看cordova插件列表:$ cordova plugin list
看到我们需要删除的插件:
运行删除插件的命令:$ cordova plugin rm cordova-plugin-console
执行成功:
② 移除所有不需要的文件
③ 移除库中不使用的文件
④ 压缩代码
⑤ 压缩图片
第三步 安装JDK 配置JAVA环境
下载JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html
下载文件后,双击安装:
安装完成后点击关闭:
在终端运行命令:$ java -version,检测是否成功:
还可以在命令提示符中输入“javac”,能够出现用法提示,证明安装成功。
第四步 安装Android SDK Tools
需要下载两个工具:sdk tools和更新完的sdk的adt版本
sdk tools下载地址:http://www.androiddevtools.cn/
解压后命令行进入tools目录:$ cd android-sdk-macosx/tools/
输入命令:$ ./android sdk,然后我们会看到Android SDK Manager图形界面
从菜单栏Android SDK Manager 进入Preferences,进行如下配置:
然后从菜单Tools进入Manage Add-on Site:
然后把下面的网址手动new进去:
http://mirrors.neusoft.edu.cn/android/repository/addon-6.xml
http://mirrors.neusoft.edu.cn/android/repository/addon.xml
http://mirrors.neusoft.edu.cn/android/repository/extras/intel/addon.xml
http://mirrors.neusoft.edu.cn/android/repository/sys-img/android-tv/sys-img.xml
http://mirrors.neusoft.edu.cn/android/repository/sys-img/android-wear/sys-img.xml
http://mirrors.neusoft.edu.cn/android/repository/sys-img/android/sys-img.xml
http://mirrors.neusoft.edu.cn/android/repository/sys-img/google_apis/sys-img.xml
http://mirrors.neusoft.edu.cn/android/repository/sys-img/x86/addon-x86.xml
http://mirrors.neusoft.edu.cn/android/repository/addons_list-2.xml
http://mirrors.neusoft.edu.cn/android/repository/repository-10.xml
然后建议勾选下面打框的选项,之后进行安装就可以啦(Android版本我随便选了几个,不用选太低的版本):
然后设置Android环境变量:
打开终端,进入android sdk安装目录:
输入命令:$ touch .bash_profile
输入命令:open -e .bash_profile
打开.bash_profile添加路径(我的路径哈):
export ANDROID_HOME=/Users/jiangwei/Desktop/android-sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
保存文件并关闭
然后输入命令:$ source .bash_profile
在终端输入命令 adb点回车,如果未显示command not found,说明此命令有效,环境变量设置完成。
第五步 配置应用签名
回到应用项目目录下:
运行命令:$ keytool -genkey -v -keystore know_your_brew.keystore -alias know_your_brew -keyalg RSA -keysize 2048 -validity 10000
注意:使用你应用的名字来替代know_your_brew
,这个命令会生成一个新的文件,在本示例中为know_your_brew.keystore。
第六步 使用Cordova编译应用文件
使用build命令编译一个应用的发布版本:
终端进入到项目目录下,执行命令:$ cordova build --release android
该命令会生成一个新的APK文件,命令会返回编译后的APK文件的绝对地址,如下图所示:
第七步 签名应用文件
现在我们来使用之前创建的keystore文件来签名已生成的未签名版本的应用。
(我们先把已经生成的apk文件移到项目根目录下,不然可能会报错"无法打开 jar 文件: android-release-unsigned.apk")
终端执行命令:
$ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore exr.keystore android-release-unsigned.apk exr
过程会需要一点时间,期间会提示输入keystore的密码密钥,命令会修改apk文件并对其进行签名。
可以使用命令$ jarsigner -verify -verbose -certs apk文件名,来验证应用是否签名成功。
第八步 优化APK文件
优化APK文件,使其减少在设备上占用的空间和内存。我们使用zipalign工具,它使用签名后的APK文件生成一个优化后的APK版本,用于应用上传。
在android-sdk目录里,我搜到zipalign的命令的地址是:./build-tools/25.0.2下面,从终端进入android-sdk目录下,执行命令:
$ open -e .bash_profile
打开.bash_profile文件,添加zipalign环境变量:export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/build-tools/25.0.2
保存关闭文件
执行命令:$ source .bash_profile
然后返回到应用项目文件夹目录下,执行命令:
$ zipalign -v 4 android-release-unsigned.apk MyExrApp.apk
完成后会返回
至此,android APK文件已经生成并完成签名和优化,可以将它发到手机上就可以下载安装了,如果想要将它发布到应用商店,那就需要去应用商店注册开发者账户,将其提交到Android应用商店中。
Ionic项目打包安卓APK的更多相关文章
- 使用ionic与cordova(phonegap)进行轻量级app开发前的环境配置与打包安卓apk过程记录
前言 有人说:"如果你恨一个人,就让ta去接触cordova(phonegap)",这是因为这里面的水很深,坑很多,真让人不是一般地发狂.或许有幸运的人儿基本顺顺利利就配置完环境 ...
- IONIC 打包安卓apk详细过程
参照以下链接: https://blog.csdn.net/qq_20264891/article/details/79319408 当 cordova 项目安装的 android 平台版本 与 系统 ...
- SDK,JDk,Unity打包安卓apk
SDK:软件开发工具包(缩写:SDK.外语全称:Software Development Kit)一般都是一些软件工程师为特定的软件包.软件框架.硬件平台.操作系统等建立应用软件时的开发工具的集合. ...
- UNITY 打包安卓APK
1,安装JDK.这个直接下就行了. 2,安装android sdk相关.这个比较蛋疼,官网是被墙的.有些网站的包还是需要访问墙外下载的.关键是找对那个能用的包(对我来说就是不FQ). http://p ...
- Android Studio将项目打包成apk
Android Studio将项目打包成apk 第一种方法:适合自己调试用. (1)直接在项目中生成: (2)位置是在你的项目中 第二种方法:适合发布应用. (1)找到Generate Signed ...
- IONIC3 打包安卓apk详细过程(大量图文)
经历三天的踩坑,跳坑,相信绝大多数的问题都已经覆盖到了,请仔细按照流程来对照操作及检查. 1.基本依赖环境 nodejs环境 (作为一个前端相信你已经有了) 最好提前配置好node的环境变量,便于全 ...
- Android项目打包成APK文件
第一步:右键单击该项目选择Export项目 显演示样例如以下界面:选择Exprot Android Application 第二步:输入项目名称,默认的情况下是原始的项目名称 下一步: 点击 Crea ...
- 最全的命令行(gradle)打包安卓apk
最近研究安卓方面的打包,因为是React Native,不能使用Android studio打包.找了半天资料,发现没有一个全面的.下面,我来讲解自己下打包时自己遇到的各种坑. 1.首先,需要在项目顶 ...
- ionic项目打包+部署
环境: 1.ionic 2.angular-cli 开发 1.CTRL C + CTRL V 2.图片路径的问题 使用‘assets/xxxxx.jpg’,而不使用‘../../assets/xxx ...
随机推荐
- Guess Number Higher or Lower -- LeetCode
We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You have to gues ...
- 1.13(java学习笔记)异常机制
异常不同于错误,它是程序运行时产生的未知问题. 如果把程序比喻成一辆汽车,那么汽车开着开着突然前面出现了一个大石头挡住了路,这就叫异常. 那么出现了这个异常我们需要去处理,比如打电话给公路管理局,让它 ...
- kaptcha Java验证码
原文:http://www.cnblogs.com/chizizhixin/p/5311619.html 在项目中经常会使用验证码,kaptcha 就一个非常不错的开源框架,分享下自己在项目中的使用: ...
- Using xcodebuild To Export a .ipa From an Archive
Xcode 6 changes how you export a .ipa from an archive for adhoc distribution. It used to be that you ...
- kubernetes1.5.2--部署dashboard服务
本文基于kubernetes 1.5.2版本编写 使用http方式访问api server的部署 cat dashboard-controller.yaml apiVersion: extension ...
- kubernetes1.5.2--部署DNS服务
本文基于kubernetes 1.5.2版本编写 在kubernetes1.2之前,采用skydns+kube2dns+etcd的方式来部署dns.而从1.3开始,则部署方式有了一点儿变化,将skyd ...
- HTML5 资源导航
1,百度百科 http://baike.baidu.com/view/951383.htm 2,w3school http://www.w3school.com.cn/html5/ 3, HTML5 ...
- 2017.7.1 nginx反向代理服务器域名解析配置(已验证可使用)
下载地址:http://learning.happymmall.com/ 前提:ftpserver已经开启,并且设置为: 1.获得安装文件 2.修改配置文件 2.1 修改conf/nginx.conf ...
- Windows 10 Enterprise LTSB版本
Windows 10 Enterprise 评估版 | 90 天 Win10 企业版 LTSB版 14393.0.160715-1616.RS1_RELEASE_CLIENTENTERPRISE ...
- MySQL日期函数的用法几则
1.将Date类型变成年月日时分秒的形式 select date_format(claimDate,'%Y-%m-%d %H:%i:%s') as claimdate from t1 2.只要年月日的 ...