Script 1.8.0

Keyboard

原型:

new Keyboard(shortcutCombination, function, dataParameters)

描述:

新建Keyboard对象,达到注册快捷键的目的

参数:

shortcutCombination: 定义组合键,格式为”控制键组合|字母键”。 其中控制键组合为 Ctrl/Alt/Shift 的组合,分别用 C/A/S 表示 Ctrl/Alt/Shift。 字母键包括 F1-F12 在内的任意字母键。 具体示例如“AC|A”,表示 Alt+Ctrl+A。在 Total Control 启动后,点击 Ctrl+Alt+A,就可以运行后面的 function。
function: 一个自定义函数,带一个 device 参数。函数的内容用户可自行定义,当 Keyboard 对象被建立后,点击前面的快捷键,该函数的内容就会被调用。
dataParameters: 形如 {app: 'com.tencent.mm', data: device} 的对象,其中键值 app 对应的是应用程序包名,可以为 null,也可以不赋值。如果 app 非空,则表示除非手机前台正在运行该 app,否则 function 不会被调用;如果 app 为空,则表示无论手机前台运行的 app 是什么,function 都将被执行。键值 data 对应的是手机对象,可以为空;如果 data 不为空,目前也仅支持指定一个单独的手机对象。当 data 非空时,表示仅在该 device 上运行 function。

返回值:

一个Keyboard对象

异常:

lastError()

示例:
示例一:
	var device = Device.getMain();
	var kb = new Keyboard('CA|T', function showLanguage(device) { print(getLanguage());}, {app: null, data: device});
	在上面这条语句中,新建了一个 Keyboard 对象,此对象有三个参数:
	‘CA|T’: 其中竖线前面的C是Ctrl的缩写;A是Alt的缩写;您还可以使用S(Shift的缩写), CA|T就表示快捷键是Ctrl+Alt+T的组合。在Total Control启动后,点击 Ctrl+Alt+T,就可以运行后面的 function showLanguage。
	Function showLanguage(device): 这是一个 js 语法下的函数,作为一个示例,它的定义非常简单明晰,即是显示 device 设备的语言环境。在实际应用中,您完全可以写出更复杂,更适用的函数。
	{app:‘com.tencent.mm’, data:device}: 这是一个 js 对象,其成员有两个 app 和 data,其值分别为‘com.tencent.mm’和 device。这两个值定义了要在哪个设备上操作哪个 APP。
	所以,执行上面这句新建 Keyboard 对象的语句,其结果就是:当您点击快捷键 Ctrl+Alt+T 以后,Total Control 会自动在指定 device 上运行 getLanguage 函数,并将其显示在脚本输出界面中。


示例二:
	var kb = new Keyboard('CA|E',
	function showLanguage(device) {
		print("CA|E is called!");
		var ret = device.getInstalledAPKList();
		for (var i in ret) {
			print(ret[i]);
		}
	},
	{app: 'com.tencent.mm', data: device});
	这个指令意味着你点击快捷键 Ctrl+Alt+E 以后,会将所有安装的 APK 列表打印出来

示例三:
	var kb = new Keyboard('CA|T',
	function showLanguage(device) {
		print(getLanguage());
	},
		{app: 'com.tencent.mm', data: device}
	);
	如果您的设备上安装有 APP: 'com.tencent.mm',并且该 app 正在前台运行,那么在点击快捷键 Ctrl+Alt+T 以后,会显示 TC 的语言环境;否则,点击快捷键以后,什么也不会发生。

示例四:
	var kb = new Keyboard('CA|D', function showLanguage(device) { print(getLanguage());});
	
	var kb = new Keyboard('CA|D', function showLanguage() { print(getLanguage());});
	
	var kb = new Keyboard('X|D', function showLanguage() { print(getLanguage());});
	print(lastError());         //由于X不被允许,lastError 将显示错误信息
	
	var kb = new Keyboard('AX|D', function showLanguage() { print(getLanguage());});
	print(lastError());         //由于X不被允许,lastError 将显示错误信息
	
	var kb = new Keyboard('A|F12', function showLanguage() { print(getLanguage());});
	print(lastError());
	
	var kb = new Keyboard('A|@12', function showLanguage() { print(getLanguage());});
	print(lastError());      //由于@不被允许,lastError 将显示错误信息
	
	var kb = new Keyboard('A|FD', function showLanguage() { print(getLanguage());});
	print(lastError());      //由于同时出现两个字母键,lastError 将显示错误信息