ionic3搭建笔记及编译成apk
一.安装node.js
二.安装Ionic2
npm install -g ionic (安装最新版本)
ionic -v //查看版本号(是否安装成功)
npm uninstall -g ionic(卸载)
npm install -g ionic@3.9.2(安装自定版本)
三.安装Cordova
npm install -g cordova
cordova -v //查看版本号
四.安装JDK
配置环境变量
javac -version //查看版本
五.安装Android SDK
配置环境变量, 名称:ANDROID_HOME,值(根据你的SDK路径改):D:\Android\sdk
六.创建项目
1.进入要创建项目的文件夹
2.输入命令 ionic start ionic-hello tutorial
项目名称(项目文件夹) :ionic-hello:
界面风格,tabs:一个简单的3选项卡布局(省略默认),
sidemenu:一个带有侧菜单的布局(官网案例就是这个),
blank:一个带有单一空页面的裸启动器,
tutorial:一个引导启动项目,
3.创建过程中弹出问题
(1)What starter would you like to use:使用什么布局(就是上面那些)
(2)Would you like to integrate your new app with Cordova to target native iOS and Android?
您想将您的新应用程序与cordova集成到本地ios和android吗?YES
(3)Install the free Ionic Pro SDK and connect your app?
是不是安装Pro版帮助你开发? (NO) ^_^这就看你了 输入yes的话会让你登录什么的
出现Running command - done! 表示创建完成,也有可能网络或其它原因创建失败,这时重新创建一次。
七.运行项目(在浏览器中)
cd ionic-hello
ionic serve
八.编译成apk
ionic cordova platform add android@^5.0.0
ionic cordova build android (打包,debug版本)
ionic cordova build android --prod --release (打包,发布版本 )
(
--prod参数是ionic2的打包方式,使用之后.map.js会压缩变小,打包的App变小了,
--release参数是Cordova的打包参数,使用之后App也会变小。
)
ionic cordova run android (安装到手机)
九.签名apk
发布版本(ionic cordova build android --prod --release)需要签名后才能安装到手机(或在androidApp市场上架)
在cmd中运行命令
(1)
E:\myObject\my\javaObject>keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize -validity
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
[Unknown]: lst
您的组织单位名称是什么?
[Unknown]: zt
您的组织名称是什么?
[Unknown]: ztr
您所在的城市或区域名称是什么?
[Unknown]: hz
您所在的省/市/自治区名称是什么?
[Unknown]: ze
该单位的双字母国家/地区代码是什么?
[Unknown]: cn
CN=lst, OU=zt, O=ztr, L=hz, ST=ze, C=cn是否正确?
[否]: y 正在为以下对象生成 , 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 , 天):
CN=lst, OU=zt, O=ztr, L=hz, ST=ze, C=cn
输入 <alias_name> 的密钥口令
(如果和密钥库口令相同, 按回车):
[正在存储my-release-key.keystore]
keytool是JDK自带的加密工具,我们需要生成一个keystore文件,然后保存好,之后不需要每次都生成新的。
之后会让我们设置一些密码和安全问题,根据命令行提示进行设置即可,最后会在当前命令行执行的目录下自动生成默认名为my-release-key.keystore文件。
如果你设置了alias_name,那么文件就是你设置的名字(也是随后给apk签名时后面要带的别名)。
输入密钥库口令:要记住,在后面给apk文件签名时会要求输入.
validity 10000代表文件的加密时间为10000天。
(2)
E:\myObject\office\netObject\mixing-pile\platforms\android\build\outputs\apk>
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore e:/myobject/my/javaobject/my-release-key.keystore android-release-unsigned.apk alias_name
这个alias_name就是上面生成加密文件时的alias_name
jarsigner是JDK自带的签名工具,我们需要将release版本的apk文件利用keystore文件进行加密,也就是签名,签名之后的apk才能发布到Android应用市场。
(引用原文https://blog.csdn.net/liujiawei00/article/details/74356356)
十.更改app名称、图标、启动图片
1.更改app名称
项目根目录\config.xml中 widget/name 节点
2.更改app图标
各种平台和不同的分辨率屏幕,生成不同尺寸的图标和启动画面是很麻烦的事,
在ionic中 使用ionic cordova resources android 指令就可以实现了。
把你自己的app图标、启动图片先准备好(.png格式),最好和项目新建生成的默认图标图片大小一致。
(1)准备图标、启动图片(png格式,大小与默认生成的一样)
(2)复制到项目根目录\resources文件夹下
(3)执行命令 ionic cordova resources android
十一.注意事项
1.配置好jdk,android sdk环境变量
系统环境变量
ANDROID_HOME,D:\开发工具\android\adt-bundle-windows-x86_64-20140702\adt-bundle-windows-x86_64-20140702\sdk
JAVA_HOME,D:\Program Files\Java\jdk1.8.0_121
CLASSPATH,.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
Path,C:\ProgramData\Oracle\Java\javapath;D:\Program Files\Java\jdk1.8.0_121\bin;D:\Program Files\nodejs\;C:\Python27;D:\开发工具\android\gradle-4.1\bin;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%ANDROID_HOME%\tools
(如果没有安装gradle,先下载好对应版本gradle包并解压,再在上述系统环境变量中配置路径即可)
2.用户环境变量
Path,%ANDROID_HOME%\platform-tools
3.使用ionic cordova platform add android@^5.0.0 命令时最好指定要编译的android版本,如果不指定,则会自动添加最新android版本,此时如果jdk,androidsdk,gradle中任何一个版本不对应的话,编译就会失败。
4.一定要保持网络畅通,首次编译时需要访问google网站,下载很多资源,如果访问被墙了,编译也会失败。如果事先把编译时需要的资源下载好,需要注意版本问题,否则也会编译失败。
ionic3搭建笔记及编译成apk的更多相关文章
- 实例具体解释:反编译Android APK,改动字节码后再回编译成APK
本文具体介绍了怎样反编译一个未被混淆过的Android APK,改动smali字节码后,再回编译成APK并更新签名,使之可正常安装.破译后的apk不管输入什么样的username和password都能 ...
- cocos2d-x 3.0 引用第三方库 及编译成apk时android mk文件写法
cocos2d-x 3.0 中.假设你须要使用CocosStudio.Extensions扩展库 等等.都须要自己手动加入. 加入过程例如以下:(比方说如今我要加入libExtensions,libC ...
- Emscripten编译环境搭建--将C和C++编译成JS
Emscripten编译环境搭建--将C和C++编译成JS 需求:linux环境下用js执行c.c++文件,使用emscirpten编译器 目标:搭建好Emscripten环境 环境:Ubuntu16 ...
- VUE+Ionic,项目搭建&打包成APK
安装Vue&创建Vue工程 1.安装Vue CLI: npm install -g vue-cli 2.创建新的Vue项目,创建最后一步会提醒是否使用npm install 自动安装,如果选择 ...
- 21.TFS文件系统搭建笔记
TFS文件系统搭建笔记 参考地址: https://github.com/alibaba/tfs/blob/master/INSTALL.md https://github.com/alibaba/t ...
- 反编译android APK
我们经常会在如下的情况使用反编译 1.看到别人应用中的酷炫功能,想知道是如何实现的 2.别人应用的素材排版好漂亮,想套用模仿 百度一下就已经有一大堆反编译的教程了,我还是坚持学习记录一下. A ...
- (转)redis 学习笔记(1)-编译、启动、停止
redis 学习笔记(1)-编译.启动.停止 一.下载.编译 redis是以源码方式发行的,先下载源码,然后在linux下编译 1.1 http://www.redis.io/download 先 ...
- 反编译Android APK及防止APK程序被反编译
怎么逆向工程对Android Apk 进行反编译 google Android开发是开源的,开发过程中有些时候会遇到一些功能,自己不知道该怎么做,然而别的软件里面已经有了,这个时候可以采用反编译的方式 ...
- Android 开发笔记“程序安装包APK的制作”
资源来源:http://blog.csdn.net/qualcent/article/details/6959547 完成Android项目后,需要将程序打包成APK文件(Android Packag ...
随机推荐
- EF 指定字段修改
public virtual void Modify(T model, params string[] ProNames) { DbEntityEntry entry = db.Entry<T& ...
- NTP搭建
NTP(Network Time Protocol,网络时间协议),用于同步它所有客户端时钟的服务.NTP服务器将本地系统的时钟与一个公共的NTP服务器同步然后作为时间主机提供服务,使本地网络的所有客 ...
- 红米note3发热严重,小米真垃圾!
红米note3全网通高配版,高通处理器骁龙650(MSM8956),夏天在有空调的房间,上网几分钟手机发烫,真垃圾! ROM已经是官方最新稳定版.MIUI8.5.2.0(LHNCNED) 红米NOTE ...
- 关于ARM Linux下的SD卡及U盘的挂载问题
内核配置并运行后,挂载SD卡,出现问题: zynq> mount -t /dev/mmcblk1 /mntmount: mounting /dev/mmcblk0 on /mnt failed: ...
- C语言中的作用域,链接属性和存储类型
作用域 当变量在程序的某个部分被声明的时候,他只有在程序的一定渔区才能被访问,编译器可以确认4种不同类型的作用域:文件作用域,函数作用域,代码块作用域和原型作用域 1.代码块作用域:位于一对花括号之间 ...
- python-web自动化-元素操作:windows窗口切换 / alert切换 / iframe切换
1. windows窗口切换:切换到要操作的窗口 有多个窗口: 1. 触发新窗口的出现 2. 得知道新窗口是谁 -- 依据窗口的window_handle来识别窗口 3. 得到窗口的window_ha ...
- 201. Spring Boot JNDI:Spring Boot中怎么玩JNDI
[视频&交流平台] àSpringBoot视频:http://t.cn/R3QepWG à SpringCloud视频:http://t.cn/R3QeRZc à Spring Boot源 ...
- PHP获取手机型号
<?php $user_agent = $_SERVER['HTTP_USER_AGENT']; if (stripos($user_agent, "iPhone") ...
- gitlab Api接口使用
官方文档 https://docs.gitlab.com/search/?q=api&idx=gitlab&p=1 示例:获取每个项目下的用户信息 #!/usr/bin/env pyt ...
- model.form使用,配合form的钩子
一次model.form的使用记录,配合form钩子的过程 在写信息采集功能的时候,需要添加资产信息,使用modelform组件减少工作量 官网介绍:版本1.9.https://docs.django ...