autojs随时翻译剪贴板单词

北京中科医院诈骗曝光 http://m.39.net/pf/a_5154126.html

牙叔教程简单易懂

使用场景

在看英文的时候,我们会遇到不懂得单词,就需要查阅单词的意思,

一般步骤是长按出现菜单,选中单词,菜单里有的有翻译选项,点击之后跳转搜索单词的页面,

有的菜单里面没有翻译选项,复制以后,需要自行打开百度,或者其他翻译软件,再搜索翻译

这里面有很多非常干扰我们阅读的操作,在app之间跳来跳去,不爽;

目标

我们今天就做一个,当长按之后,选中单词,点击复制,直接出翻译的功能

主要功能

监听剪贴板

这个监听剪贴板的功能在高版本安卓是可以实现的,只是相比于安卓9之前的版本,步骤复杂一点点,

Google在近年来一直在打击第三方应用程序对剪切板的访问,目的是增强用户的个人资料安全。在发布Android10时就已经禁止后台应用读取剪贴板数据。

我的手机是安卓12,如果我阅读文章的app在前台,autojs在后台肯定是读取不到剪贴板内容的

在autojs的菜单中,有一个前台服务,打开之后,回到手机桌面,测试读取剪贴板,内容为空,读取不到

悬浮窗算前台吗?

前台服务不行的话,我们用悬浮窗试试,悬浮窗算前台吗?

试试就知道了

letw=floaty.window(

vertical

buttonid="readClipboard"text="读取剪贴板"w="auto"/

/vertical

);

w.readClipboard.click(()={

letcontent=getClip();

toastLog(content);

});

setInterval(()={},);

经过测试,toast气泡内容为空,证明悬浮窗不算安卓所说的前台,

焦点

查阅了一番教程之后,说安卓10获取剪贴板要获取焦点,

那么我们就给按钮申请焦点试试

w.readClipboard.click(()={

//申请焦点

w.requestFocus();

setTimeout(()={

letcontent=getClip();

toastLog(content);

},);

});

焦点申请了,第一次点击没有获取到剪贴板内容,之后的点击都获取到了剪贴板内容

时差

再次查阅资料,说申请焦点以后,还要等一下再获取剪贴板,那我们就等一下

w.readClipboard.click((view)={

log(view.text());

//申请焦点

w.requestFocus();

setTimeout(()={

letcontent=getClip();

toastLog(content);

},);

});

这下测试就正常了,第一次点击也可以获取到剪贴板内容,

这里有个问题,我们申请了焦点,用完之后应该去除焦点

w.readClipboard.click((view)={

w.requestFocus();

setTimeout(()={

letcontent=getClip();

toastLog(content);

w.disableFocus();

},);

});

监听剪贴板

获取剪贴板内容解决了,怎么监听呢?

开一个定时器,每隔一会读取一下剪贴板,

我们的目的是翻译单词,不想等太久,所以用ms,大家可以自行修改时间

切换焦点的问题

频繁切换焦点,当我们要聊天界面有输入框出现的时候,焦点会在悬浮窗和聊天输入框之间频繁切换,

甚至无法操作界面,因此我们要增加一个停止切换焦点的功能,以便我们可以正常打字聊天输入文字

必须用悬浮窗获取剪贴板内容吗

不想用悬浮窗,也可以试试adb,手机用usb连接电脑,然后执行下面的命令

adb-dshellappopssetorg.autojs.autojsproSYSTEM_ALERT_WINDOWallow;

adb-dshellpmgrantorg.autojs.autojsproandroid.permission.READ_LOGS;

adbshellamforce-stoporg.autojs.autojspro;

实测,这个方法没用,所以,必须用悬浮窗.

不过那个scrcpy投屏软件就可以直接获取剪贴板,有经验的大佬可以去看看研究下scrcpy的代码

翻译单词

翻译单词可以用在线的百度,有道,也可以用离线的词典.

百度和有道都有免费额度,

百度

免费调用量:标准版免费调用量由不限额度改为5万字符/月

有道

每小时次免费访问,超过访问次数后会进行封禁暂停服务,1小时后会自然恢复。

每个平台都要申请自己的key,这里以有道为例

这是有道的


转载请注明:http://www.aierlanlan.com/grrz/5061.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了