Ionic打包

729 阅读3分钟

包名

创建项目的时候,可以通过cordova来创建,记得一定要定义好包名 这个是全局都要用到的东西

ps:之前随便定义了一个包名,导致在添加jpush的时候报错,删除 platforms 后,重新编译后ok,不过要重新走ionic起步

cordova create taojin com.qihoo.taojin taojin

极光推送

在极光推送的后台创建好应用后,可以通过如下命令添加插件:

cordova plugin add  https://github.com/jpush/jpush-phonegap-plugin.git --variable API_KEY=your_jpush_appkey  

记得 device 插件一定要存在

ps: 默认其实是带的,如果你没删可以直接跳过这步

cordova plugin add org.apache.cordova.device

然后在app.js的 $ionicPlatform.ready 中初始化(其实是注册该设备)

window.plugins.jPushPlugin.init(); 

build 之后你会发现,会提示缺少统计代码,这个可以这样解决。

在这里路径下 platforms/android/src/com/qihoo/taojin(com/qihoo/taojin 是你的包名),找到 MainActivity.java,添加:

import cn.jpush.android.api.JPushInterface;

public class MainActivity extends CordovaActivity 中添加

//新增
@Override
protected void onResume() {
 super.onResume();
 JPushInterface.onResume(this);
}

//新增
@Override
protected void onPause() {
 super.onPause();
 JPushInterface.onPause(this);
}

制作签名

1.使用 keytool 签名,keytool 在java的安装目录的bin目录下,最好添加环境变量

keytool -genkey -v -keystore my-release-key.keystore -alias 设置一个别名 -keyalg RSA -keysize 2048 -validity 10000

上面的命令运行过程中,需要输入密码,这个密码一定要记住哟!!并且会在运行目录下生成一个xx.keystore文件

2.使用 cordova build --release android 制作生产的包

  1. 添加签名到包中

注意最后三个参数

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore 这里是keystore文件 这里是生成的包.apk 这里是别名
  1. 查看apk的签名

微信提供了一个工具,安装后可以直接输入包名,就能获取到apk的签名

ps:比较蛋疼的是不能复制!!!

命令列表

创建应用程序

cordova create hello com.example.hello HelloWorld

添加平台

cordova platform add android
cordova platform add ios

完成后运行以下命令查看:

cordova platfrom list

移除Android平台支持

cordova platform rm android

运行以下命令编译应用程序:

cordova build

//只针对Andorid平台编译
cordova build android 

实际上build命令相当于以下两个命令:

cordova prepare android
cordova compile android

启动模拟器:

cordova emulate android

添加插件: 可以用CLI搜索可用的插件:

cordova plugin search bar code

安装插件,比如:

//设备API
cordova plugin add org.apache.cordova.device
//网络(事件)
cordova plugin add org.apache.cordova.network-information 
//电池(事件)
cordova plugin add org.apache.cordova.battery-status 
//加速器
cordova plugin add org.apache.cordova.device-motion 
//罗盘
cordova plugin add org.apache.cordova.device-orientation 
//定位
cordova plugin add org.apache.cordova.geolocation 
//摄像头
cordova plugin add org.apache.cordova.camera 
//媒体文件处理
cordova plugin add org.apache.cordova.media-capture 
//媒体文件处理
cordova plugin add org.apache.cordova.media 
//文件访问
cordova plugin add org.apache.cordova.file 
//文件传输
cordova plugin add org.apache.cordova.file-transfer 
//对话框
cordova plugin add org.apache.cordova.dialogs 
//震动
cordova plugin add org.apache.cordova.vibration 
//联系人
cordova plugin add org.apache.cordova.contacts 
//全球化
cordova plugin add org.apache.cordova.globalization 
//闪屏
cordova plugin add org.apache.cordova.splashscreen 
//打开新的浏览器窗口
cordova plugin add org.apache.cordova.inappbrowser 
//调试控制台
cordova plugin add org.apache.cordova.console 

你可以用以下命令查看所有已经安装的插件

cordova plugin ls

使用以下命令删除插件:

cordova plugin rm org.apache.cordova.console

或者通过地址来添加插件:

cordova plugin add https://github.com/apache/cordova-plugin-console.git

帮助:

cordova help

更新cordova:

npm update -g cordova

cordova更新完成后,还需要更新项目:

cordova platform update android