最近项目需要用到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. blender 快捷键手动整理

    armature envelop 设置骨骼影响范围:Edit Mode 下,选中骨头的其中一端,按 Alt + s,缩放 T 呼出 Tools N 呼出 Property Ctrl + Alt + Q ...

  2. Eclipse 中打包插件 Fat Jar 的安装与使用

    Eclipse可以安装一个叫Fat Jar的插件,用这个插件打包非常方便,Fat Jar的功能非常强大. 首先要下载Fat Jar,下载地址:https://sourceforge.net/proje ...

  3. linux下i2c的驱动架构分析和应用

    i2c在linux下的代码在/driver/i2c下面,总体代码如下所示: i2c-core.c 这个文件实现了I2C核心的功能以及/proc/bus/i2c*接口.    i2c-dev.c  实现 ...

  4. 机器学习技法笔记:16 Finale

    Roadmap Feature Exploitation Techniques Error Optimization Techniques Overfitting Elimination Techni ...

  5. Thread-方法以及wait、notify简介

    Thread.sleep()1.静态方法是定义在Thread类中.2.Thread.sleep()方法用来暂停当前执行的线程,将CPU使用权释放给线程调度器,但不释放锁(也就是说如果有synchron ...

  6. ThinkNet终于见面了

    经过一段时间的DDD学习,第一个开源框架终于初步完成了,我为他命名为ThinkNet.之前或许你听过ThinkPHP,没错,虽然我对php没有过多的掌握,但是借助thinkphp,我也能开发一个web ...

  7. jq的ajax交互封装

    jq封装的ajax,然后 在此前和此后都是很多要考虑的  ,何不 想想构思封装下. 下面: 基本上网页都存在各种ajax,使得网页变得更加易于操作. 举个长长的例子吧: <input type= ...

  8. vc++开发安装程序实例

    前言 市面上有很多安装程序制作软件:但是,要实现个性化安装程序,还是自己动手来写一个更为妥当.本文介绍基本的安装程序制作的步骤. 安装程序界面: 安装程序可以分为几个功能点:1 资源的嵌入.释放.2 ...

  9. RabbitMQ Exchange详解以及Spring中Topic实战

    前言 AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计.消息中间件主要用于组件之间的解耦. 业务需求 ...

  10. springboot+cloud 学习(六)Docker

    注:由于本人用的是window10系统,docker的版本是Docker Community Edition(Docker CE ). 什么是Docker 按官网的话说,Docker是一个世界领先的容 ...