学习PhoneGap Api
2016-05-08 19:48
239 查看
SplashScreen
打开APP时,会黑屏一段时间,解决方案:放置一张加载的图片。
config.xml
<!-- 启动图片--> <preference name="SplashScreen" value="splash" /> <preference name="SplashScreenDelay" value="3000" />
splash 是图片的文件名,3000代表图片在3秒后隐藏。
图片放在res/目录不同分辨率的文件夹下。
参考地址:
/article/8027810.html
(里面提及的使用js里隐藏图片不能实现,目前找不到解决办法…)
点击back键
document.addEventListener("backbutton", yourCallbackFunction, false); function yourCallbackFunction(){ // 点击back键 alert("click back button"); }
当PhoneGap被完全加载后会触发该事件 deviceready
document.addEventListener("deviceready", onDeviceReady, false);`这里写代码片` // PhoneGap加载完毕,现在可以安全地调用PhoneGap方法 function onDeviceReady() { // 现在可以安全使用PhoneGap API alert("加载完毕"); }
当用户在Android系统上点击菜单按钮的时候触发此事件 menubutton
document.addEventListener("menubutton", onMenubutton, false); function onMenubutton() { alert("点击菜单"); }
(没测出效果…)
当PhoneGap应用程序被放到后台的时候触发此事件 Pause
document.addEventListener("pause", onPause, false); function onPause() { // 处理pause事件 alert("PAUSE"); }
(android上,点击home和back键都会触发)
当PhoneGap应用程序被恢复到前台运行的时候触发此事件 Resume
document.addEventListener("resume", onResume, false); function onResume() { // 处理pause事件 alert("Resume"); }
(点击home键之后,再回到APP后触发)
当PhoneGap应用程序在线(连接到因特网)的时候触发此事件 online
document.addEventListener("online", onOnline, false); function onOnline() { // 处理pause事件 alert("上网"); }
(没有测出效果)
当PhoneGap应用程序离线(没有连接到因特网)的时候触发此事件 offline
function onDeviceReady() { document.addEventListener("online", onOnline, false); } // 处理online事件 function onOnline() { }
PhoneGap 调用手机系统的API
不知道是cordova.jar还是cordova.js的原因,无法调用系统的API,网上找到了能正常调用API的jar和js,不过使用这2个东西,启动图片(splashscreen)却没效果了….jar和js的下载地址:
http://pan.baidu.com/s/1c2a5nBM
加速度计 Accelerometer
// 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { navigator.accelerometer.getCurrentAcceleration(onSuccess, onError); } function onSuccess(acceleration) { alert('Acceleration X: ' + acceleration.x + '\n' + 'Acceleration Y: ' + acceleration.y + '\n' + 'Acceleration Z: ' + acceleration.z + '\n' + 'Timestamp: ' + acceleration.timestamp + '\n'); } function onError() { alert('onError!'); }
摄像头 Camera
在android(T1)上测试,如下做法得不到图片navigator.camera.getPicture(onSuccess, onFail, { quality: 50 }); function onSuccess(imageData) { var image = document.getElementById('myImage'); image.src = "data:image/jpeg;base64," + imageData; } function onFail(message) { alert('Failed because: ' + message); }
下面使用url的方式可以得到图片:
navigator.camera.getPicture(onSuccess, onFail, { quality: 50, destinationType: Camera.DestinationType.FILE_URI }); function onSuccess(imageURI) { var image = document.getElementById('myImage'); image.src = imageURI; } function onFail(message) { alert('Failed because: ' + message); }
采集 Capture
android(T1)下测试Demo效果1.采集录音,失败,提示错误码3
2.采集图片成功,上传图片无效果,未实际测试。
3.采集视频成功,上传视频无效果,未实际测试。
联系人 Contacts
android(T1)测试无效,不回调success和fail;设备 Device
android(T1)测试1 device.name :得不到
2device.phonegap :得不到
3device.platform:可以
4device.uuid:可以
5device.version: 可以
。。。。
更多API学习地址:
http://www.phonegapcn.com/docs/zh/cn/index.html
相关文章推荐
- github之无命令可视化界面操作——GitHub DeskTop
- 单链表的头插、尾插、删除、合并等操作
- ubuntu文本界面包安装工具aptitude 使用参考
- bzoj2595: [Wc2008]游览计划
- ONF开源白皮书:SDN解决方案案例——校园SDN
- 20145304 实验五实验报告
- 输入挂C++模板
- hdu 1232 畅通工程 (最小生成树 并查集)
- 拷贝,集合,函数,enumerate,内置函数
- cf 459c Pashmak and Buses
- CSS清除浮动:清除float浮动
- android多用户
- 线程同步(四)—— 信号
- HDU 2046 骨牌铺方格(递推)
- Defuse the Bomb——ZOJ3938模拟
- JS排序算法
- Codeforces 451C Predict Outcome of the Game (枚举+YY)
- ExpandableListView与CheckBox点击冲突
- poj 1509 Glass Beads
- C++三色旗算法