最近项目需要用到ionic就马上去撸,但是做下来发现官方文档的native插件,按照文档来做也遇到很多坑或者暂时想不出办法实现的。

ionic这种属于跨平台的开发,是适用于比较常见通用的平台,安卓机,苹果机,网页这些,对于有针对性的开发,如pos机开发那些,就要注意了,可能需要自己开发封装插件。

现在说正文:

现在推荐一篇文章,可以解决从node.js之后如何安装好环境配置到打包apk

IONIC3 打包安卓apk详细过程(大量图文)

https://blog.csdn.net/qq_20264891/article/details/79319408

ps:上面的基本可以解决环境配置,如果你使用的电脑用户不是管理员权限,那就另外需要在当前你所使用的用户上,用户变量path再配置多次刚刚配置系统变量path的那几个参数即可。

常见命令:

ionic开发app一般都是会用到native插件的,所以也就用到cordova。

1.不使用dordova正常页面开发:

ionic serve

2.使用cordova插件,在网页开发:(有修改会自动build更新)

ionic cordova run android -lc --address=localhost

3.打包 (prod解决启动慢的问题)

debug模式打包  release模式打包

ionic cordova build android --prod --debug
ionic cordova build android --prod --release

4.打包有时候明明正确到时候最后还是失败的可能原因

有可能是之前有失败的文件在platforms里面,所以导致失败。解决方法:

ionic cordova platforms remove android
ionic cordova platforms add android

5.开发写代码

5.1平时我们都会http请求回来后得到的res,获取里面的参数的写法是 res.data,在ionic这样写会报错,所以改成这种写法

res['data']

5.2app请求服务器有跨域问题,那就需要后端设置允许跨域。如果需要设置头部,那请求就会变成复杂请求,那在跨域中,复杂请求会有‘预检测’请求,请求类型是options。之后才是原本的get,post请求。

6打包apk

6.1在JDK目录下bin文件夹,检查keytool.exe和arsigner.exe文件是否存在

6.2把打包的apk放在bin文件并改名为app.apk

6.3在cmd命令

keytool -genkey -v -keystore [姓名].keystore -alias [姓名].keystore -keyalg RSA -validity 20000

例:

keytool -genkey -v -keystore zhangqiang.keystore -alias zhangqiang.keystore -keyalg RSA -validity 20000

/*

使用工具, 签名:

-genkey表示构建签名文件

-v 显示在dos窗口中

-alias表示签名包的别名

-validity 签名有效期(天)

姓名:填上,用你名字拼音全拼

城市:随便填,不填也行

国家: 随便填,不填也行

密码口令:敲的时候不动,是因为保护隐私,别当做你电脑死机!

*/

6.4给文件签名

jarsigner -verbose -keystore [姓名].keystore -signedjar complete.apk app.apk [姓名].keystore

例:

jarsigner -verbose -keystore zhangqiang.keystore -signedjar complete.apk app.apk zhangqiang.keystore

最后就有个complete.apk

7Android Studio真机测试(默认你已配置好环境等)

7.1连接好安卓机

7.2编译一下

成功后

7.3RUN

就成功了

ionic 一些常见问题和命令的更多相关文章

  1. ionic学习笔记—常用命令

    Ionic CLI介绍 Ionic CLI是开发Ionic应用程序过程中使用的主要工具.它就像一个瑞士军刀:它在一个界面下汇集了大量工具. CLI包含许多对Ionic开发至关重要的命令,例如start ...

  2. 整理我的Git常见问题和命令

    整理我的Git常见问题和命令 目录 整理我的Git常见问题和命令 提交注释规范 合并分支 clone & 切换分支 支持中文路径显示 账户及密码 基于远程分支创建本地分支 提交注释规范 举例: ...

  3. ionic一些常见问题及方法

    1.打包的app无法访问互联网及网络资源(比如网页调试可以请求数据,安装到手机上无法请求数据) 添加白名单插件 ionic plugin add https://github.com/apache/c ...

  4. ionic一些常见问题及方法(网页链接式)

    ionic 进入二级目录以后隐藏底部导航栏(tabs) http://blog.csdn.net/shenshucong520/article/details/48287811ionic三级目录乃至多 ...

  5. 【linux】常见问题&常用命令笔记

    1.重启以及关机命令: Linux centos重启命令: (1)reboot   普通重启 (2)shutdown -r now 立刻重启(root用户使用) (3)shutdown -r 10 过 ...

  6. ionic安装插件常用命令

    常见插件查找网站: http://ngcordova.com/docs/plugins http://cordova.apache.org/plugins/ $ ionic plugin list / ...

  7. MySQL常见问题和命令

    问题: 1.centos MySQL启动失败:关闭selinux, vi /etc/selinux/config, 设置SELINUX=disabled,重启电脑: 命令: 停止.启动mysql服务器 ...

  8. ionic使用常见问题(八)——PHP无法获取$http的post数据

    一个简单的post请求 $http.post('do-submit.php',myData) .success(function(){ // some code });   可是,用angularjs ...

  9. [转]轻松学习Ionic (四) 修改应用图标及添加启动画面(更新官方命令行工具自动生成)

    本文转自:http://blog.csdn.net/zapzqc/article/details/42237935 由于Ionic更新了命令行工具,以后修改应用图标和添加启动画面就简单了,最新方法见最 ...

随机推荐

  1. Ubuntu18.04安装网易云音乐

    一. 安装 去网易云官网下载对应于ubuntu系统的安装包 安装依赖 dpkg -s libcanberra-gtk-module #检查依赖是否安装 sudo apt install libcanb ...

  2. TextView展示富文本时emoj或图片和文字不对齐的解决方案

    在项目中,回复框.聊天界面的显示往往会有emoj或者图片,但是一个比较头疼的问题是,会出现emoj表情或者图片和文字的位置不对齐,总是有偏移,这样很影响用户体验的.下面会总结一下如何解决这个问题. 本 ...

  3. WebRTC 学习之 概念总结

    在学习WebRTC的时候,接触到了好多新的概念,在这里做一下备忘吧 RTMP协议 Real Time Messaging Protocol(实时消息传输协议).该协议基于TCP,是一个协议族,包括RT ...

  4. java visualVM(jconsole)远程监控服务器java进程

    1. JMX方式(jconsole也可通过此方式进行连接) jmx方式能监控到CPU信息,但无法使用visualVM的visualVM GC插件    jmx无密码方式 监控普通的java进程 . 设 ...

  5. Typescript 学习笔记三:函数

    中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...

  6. LeetCode:21_Merge Two Sorted Lists | 合并两个排序列表 | Easy

    题目:Merge Two Sorted Lists Merge two sorted linked lists and return it as a new list. The new list sh ...

  7. vue中axios的安装和使用

    有很多时候你在构建应用时需要访问一个 API 并展示其数据.做这件事的方法有好几种,而使用基于 promise 的 HTTP 客户端 axios 则是其中非常流行的一种. 安装包:如果没有安装cnpm ...

  8. C# DataGridView 在最左侧显示行号方法

    代码: private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e) { Da ...

  9. Java排序方法sort的使用详解(转)

    一.对数组的排序: //对数组排序 public void arraySort(){ int[] arr = {1,4,6,333,8,2}; Arrays.sort(arr);//使用java.ut ...

  10. Jenkins系列之二——centos 6.9 + JenKins 安装

    centos 6.9 + JenKins 安装记录环境: [root@localhost ~]# cat /etc/issue CentOS release 6.9 (Final) Kernel \r ...