WeX5内测打包,未越狱安装
目前手机wap站已经好了,现在就是想要套一个浏览器内核,打包成app应用。
本文就介绍使用WeX5,来打包app应用(内测方案)。
一、准备工作
需要有MAC OS操作系统环境,本文使用VMWare虚拟一个MAC OS
参考:http://wex5.com/cn/setup-wex5-app-packing-server/
WeX5开发平台
下载地址:http://wex5.com/cn/downloads/
生成应用的iOS应用证书;详细方法参见博客《ios证书申请》。
需要用到的证书包括:P12的发布证书,命名为ios.distribution.p12;App的描述文件,命名为ios.distribution.mobileprovision。详见博客《苹果证书的区别和X5打包服务器的配合问题》。
生成安卓证书备用。在开始à运行输入cmd打开的黑窗口中执行以下安卓证书生成命令:
keytool -genkey -alias android -keypass 123456 -keyalg RSA -keysize 1024 -validity 3650 -keystore android.keystore -storepass 123456
命令执行时依次让输入您的姓名、组织、城市、省份和国家信息,请根据自己或企业的信息输入即可。最后确认是否正确时,需输入Y。
生成的安卓证书文件名称为android.keystore,生成在命令执行的目录下。执行目录也可以为根盘符。以上准备工作完成,可以开始进行打包。
二、获取设备的UDID,将UDID添加到证书里
UDID 的获得可以由 iTunes 工具来获得,也可以通过 Xcode 来获得,不过无论是 iTunes 还是 Xcode,都会稍显麻烦。蒲公英提供了一个简单的获取 UDID 的工具。
http://www.pgyer.com/udid
在 iOS 设备上打开上面的地址,即可方便的获取到当前设备的 UDID。
也可以在需要安装应用的机器上,从appstore安装Ad Hoc Helper
获取到UDID后,需要登陆在苹果开发者账号,打开Devices->All 把UDID添加进去
点击右上角的+号
将mobileprovision文件下载下来,文件里就包含了添加的udid
二、APP打包过程详解
1)打开WeX5版本,双击“启动WeX5开发工具.bat”打开studio开发工具。
2)将准备好的3个证书文件拷贝或覆盖至“WeX5-外卖”的目录。
P12的发布证书,ios.distribution.p12;
iOS App的描述文件, ios.distribution.mobileprovision;
安卓证书文件,android.keystore。
3)在模型资源下找到Native目录展开,版本自带有“外卖”的目录展开。
4)打开properties文件,修改为导出P12文件时设置的密码。详细博客《ios证书申请》第3.3小节的说明
5)对于已创建的本地APP,右键点击可以点击“编辑本地APP”菜单,去打包配置进行编辑,或者查看打包所配置相关信息和所选组件等。
套浏览器壳的方式的话,就只要填写服务地址,首页,打包资源是没有的,也就 不需要勾选了
版本号每次打正式发布包时需写新的序号,一个正式APP包对应一个版本号,以便用户在移动终端上安装时能检查到已安装应用进行更新。
应用包名输入苹果APP证书生成时对应的Bundle ID。
MAC OS上 开启打包服务
记录服务的ip地址
点击连接测试,连接成功,点击完成
三、安装ipa
在没有越狱的iphone上安装测试。 后面经过了一大堆步骤,还申请了个免费的StartSSL证书部署到公网后终于可以下载。
因为StartSSL好像只免费使用一年,所以想找个其他免费的方式。
其实需要HTTPS服务器的原因也就是访问plist文件时需要使用https而已,其他的下载页和ipa文件都放在普通的http路径下就可以了。
今天逛github时看到浏览文件时路径就是https,所以应该可以使用github做plist文件访问的https服务器,然后在网上搜索到一个方法测试成功了。
步骤很简单:
1.当然是申请github创建repository之类的了,这个步骤就不说了,百度上很多教程。
2.把自己的plist文件传上去,plist文件中使用的ipa以及图片的路径都使用自己公网可访问的普通http服务器就行了。
3.在自己的github上打开plist,使用raw原生的方式打开后复制浏览器上的路径。
4.下载页按钮onclick的写法:itms-services:///?action=download-manifest&url=第三步复制的路径(需要用Safri浏览器打开)
经过这四个步骤配置好后就可以在手机上打开浏览器访问你的下载页了,点击按钮后提示你是否安装APP就成功了!
之前打包以及配置HTTPS服务器的方法:http://bbs.justep.com/thread-68474-1-1.html http://bbs.justep.com/thread-68498-1-1.html
注:这里给出下pllist文件的模板
plist简单的模板(安装时没有图标)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>items</key> <array> <dict> <key>assets</key> <array> <dict> <key>kind</key> <string>software-package</string> <key>url</key> <string>http://172.16.14.207/hello2.ipa</string> </dict> </array> <key>metadata</key> <dict> <key>bundle-identifier</key> <string>com.hpc.jsb</string> <key>bundle-version</key> <string>1.0</string> <key>kind</key> <string>software</string> <key>title</key> <string>hello2.ipa</string> </dict> </dict> </array> </dict> </plist>
plist模板
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>items</key> <array> <dict> <key>assets</key> <array> <dict> <key>kind</key> <string>software-package</string> <key>url</key> <!-- http或者https链接的ipa文件地址 --> <string>http://x5.justep.com/apps/x5.ipa</string> </dict> <dict> <key>kind</key> <string>full-size-image</string> <key>needs-shine</key> <true/> <key>url</key> <!-- http或者https链接的图片地址,可直接使用app对应的icon(分辨率没强制要求) --> <string>http://x5.justep.com/apps/x5.png</string> </dict> <dict> <key>kind</key> <string>display-image</string> <key>needs-shine</key> <true/> <key>url</key> <!-- http或者https链接的小图片地址,可直接使用app对应的icon(分辨率没强制要求) --> <string>http://x5.justep.com/apps/x5.png</string> </dict> </array> <key>metadata</key> <dict> <key>bundle-identifier</key> <!-- BundleID,就是新建app时的包名 --> <string>com.justep.x5.demo</string> <key>bundle-version</key> <!-- 版本号 --> <string>5.3.2</string> <key>kind</key> <string>software</string> <key>title</key> <!-- 安装app时的提示信息 --> <string>X5 App download</string> </dict> </dict> </array> </dict> </plist>