SplashScreen
打开APP时,会黑屏一段时间,
解决方案:放置一张加载的图片。
config.xml
<!-- 启动图片-->
<preference name="SplashScreen" value="splash" />
<preference name="SplashScreenDelay" value="3000" />
splash 是图片的文件名,3000代表图片在3秒后隐藏。
图片放在res/目录不同分辨率的文件夹下。
参考地址:
http://blog.csdn.net/zythy/article/details/22405659
(里面提及的使用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