赞
踩
想要在脚本运行完后锁定屏幕,但Auto.js没有提供锁屏函数。网上搜索到的都是通过第三方锁屏应用或小部件实现。能不能只用代码就可以锁屏呢?
不多BB,先贴代码
var success = runtime.accessibilityBridge.getService().performGlobalAction(android.accessibilityservice.AccessibilityService.GLOBAL_ACTION_LOCK_SCREEN)
以上代码运行后即可锁屏。
优点:
局限:
实现思路
由于最近才接触Auto.js,所以使用的都是大佬们基于原版二次开发的版本,用了很多个版本,发现其中一个版本AutoX
提供了锁屏函数。
因为autojs中是可以调用到Android函数的,所以想能不能在js中用同样的方式实现锁屏?
class GlobalActionAutomator(private val mHandler: Handler?, private val serviceProvider: () -> AccessibilityService) {
//……
/**
* Action to lock the screen
*/
@RequiresApi(Build.VERSION_CODES.P)
fun lockScreen(): Boolean {
return performGlobalAction(AccessibilityService.GLOBAL_ACTION_LOCK_SCREEN)
}
//……
}
public abstract class AccessibilityBridge {
//……
@Nullable
public abstract AccessibilityService getService();
//……
}
public class ScriptRuntime {
//……
@ScriptVariable
public final AccessibilityBridge accessibilityBridge;
//……
}
runtime.accessibilityBridge.getService().performGlobalAction(AccessibilityService.GLOBAL_ACTION_LOCK_SCREEN)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。