sencha touch 中使用phonegap

本文详细介绍了在手机应用中如何在index页面上加载脚本、设定JavaScript监听事件,实现网络连接状态检查、按钮事件处理以及退出应用前的确认流程。

1.首先要优先在st项目的index页面上载入

<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>

 

2.同样在index页面上设定js,当正确加载时执行phonegap的方法

 

<script type="text/javascript" charset="utf-8">
	document.addEventListener("deviceready", onDeviceReady, false);
	// PhoneGap加载完毕
	function onDeviceReady() {
		//按钮事件
		checkConnection();
		document.addEventListener("backbutton", eventBackButton, false); //返回键
		document.addEventListener("menubutton", eventMenuButton, false); //菜单键
		document.addEventListener("searchbutton", eventSearchButton, false); //搜索键

	}
	function onConfirm(button) {

		if (button == '1') {

			navigator.app.exitApp();
		} else {

		}

	}
	//返回键
	function eventBackButton() {
		navigator.notification.confirm('确定退出cfxxi?', // 显示信息
		onConfirm, // 按下按钮后触发的回调函数,返回按下按钮的索引
		'退出应用', // 标题
		'确定,取消' // 按钮标签
		);

	}
	//菜单键
	function eventMenuButton() {
		//alert('点击了 菜单 按钮!');
	}

	//搜索键
	function eventSearchButton() {

		//window.plugins.ToastPlugin.show_short('点击了 搜索 按钮!');
	}
	
	function checkConnection() { 
		var networkState = navigator.network.connection.type; 		 

		var states = {}; 
		states[Connection.UNKNOWN]  = 'Unknown connection'; 
		states[Connection.ETHERNET] = 'Ethernet connection'; 
		states[Connection.WIFI]     = 'WiFi connection'; 
		states[Connection.CELL_2G]  = 'Cell 2G connection'; 
		states[Connection.CELL_3G]  = 'Cell 3G connection'; 
		states[Connection.CELL_4G]  = 'Cell 4G connection'; 
		states[Connection.NONE]     = 'No network connection'; 
		//alert(states[networkState]);
		if(states[networkState]=='No network connection'||typeof states[networkState] == "undefined")
		{
			
			Ext.Msg.alert('警告', '应用需要连接网络获得数据,请打开网络.', function(){
				navigator.device.exitApp();
			});
		}
	};
</script>

转载于:https://my.oschina.net/victorHomePage/blog/83880

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值