我是靠谱客的博主 粗暴手链,最近开发中收集的这篇文章主要介绍编程之路第11天:解决此前截屏权限需要手动点击确认问题(打开双线程),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、手动给截屏权限

if(!requestScreenCapture());
{
toast(“请求截图失败”);
exit();
}

//此处每次都会提示是否允许截屏;
requestScreenCapture()执行后,华为P20 pro会提示
“投射/录制时显示敏感信息 Auto.js Pro 将开始截取您的屏幕上显示的所有内容。
取消/立即开始”,点击后,才会执行下一个代码

captureScreen("/storage/emulated/0/1/05.jpg");     

// (……Pictures/05"+".jpg"); 此前出错在这里,多了一个"+"。
toast (“截屏已完成”)
var src=images.read("/storage/emulated/0/1/05.jpg");
var clip=images.clip(src,443,985,500,1250);
images.save(clip,"/storage/emulated/0/1/5.jpg");
toast (“截取片段完成”)

二、开启线程,让 “点击 ‘立即开始’” 和"截屏" 同时运行

// 1、开启线程,找到点击立即开始,并且触发事件(只需要执行一次就可以)
threads.start(function (){
var beginBtn;
if (beginBtn = classNameContains(“Button”).textContains(“立即开始”).findOne(2000)) {
beginBtn.click();
}
});
// 此处findOne(2000)是为了限制查找时间,如果留空,找不到就会一直找。
if(!requestScreenCapture()){
toast(“请求截图失败”);
exit();
}
sleep(2000);
// 此处与前面的findOne(2000)相对应,不然还没点“立即开始”,就截屏了
// 下面开始截屏
captureScreen("/storage/emulated/0/1/06.jpg");
toast (“截屏已完成”)
var src=images.read("/storage/emulated/0/1/06.jpg");
var clip=images.clip(src,443,985,500,1150);
images.save(clip,"/storage/emulated/0/1/6.jpg");
toast (“截取片段完成”)

三、遗留问题

shell("screencap /storage/emulated/0/1/7.jpg")  
// 虽然执行后确实有个6.jpg存在指定文件,但是大小为0 B.(即使开启了截屏权限也一样

最后

以上就是粗暴手链为你收集整理的编程之路第11天:解决此前截屏权限需要手动点击确认问题(打开双线程)的全部内容,希望文章能够帮你解决编程之路第11天:解决此前截屏权限需要手动点击确认问题(打开双线程)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部