有朋友问能不能在CanTK和AppBuilder开发的APP里发送UDP数据,HTML5里只能用HTTPS/HTTP/WebSocket几种通讯方式,要使用UDP需要通过phonegap打包成APK等特定平台的安装包。所以花了点时间写了篇文档介绍PhoneGap打包CanTKAPP的过程。
下面以一个UDPDemo为例,介绍Linux下phonegap编译APK的全过程(Fedora 20)。
0.安装必要的软件包
ant npm java android-sdk
1.加入android sdk的PATH
export PATH=$PATH:/work/android-sdk-linux/tools
2.加入jdk的PATH
export PATH=$PATH:/work/tools/jdk1.8.0_25/bin
3.安装phonegap和phonegap插件管理器
npm install -g phonegap
npm install -g plugman
4.创建项目并编译
phonegap create UDPDemo "com.tangide.udpdemo" "UDP Demo"
cd UDPDemo
phonegap build android -d
5.查找需要的插件(可选,下面查找udp插件)
plugman search udp
6.安装需要的插件(可选,下面安装udp插件)
phonegap plugin add in.girish.datagram
7.导出用appbuilder开发的工程,解压到www目录下然后编译
cd www/
rm * -rf
unzip /home/lixianjing/下载/osgames1.zip
cd -
phonegap build android -d
注:老版本phonegap要求插件自己调用cordova.define,新版本phonegap会自动加上这个定义。所以新版本phonegap使用老版本的插件就会存在问题,导致重复定义而无法使用,需要手动删除这个定义。
参考资料:
Phonegap Plugins