autojs关于适配安卓所有分辨率的坐标点击方法

Posted 九黎AJ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了autojs关于适配安卓所有分辨率的坐标点击方法相关的知识,希望对你有一定的参考价值。

普通交流群698307198欢迎加入v群,和各位大神一同交流
免责声明:本博客提供的所有内容仅供学习、分享与交流,我们不保证内容的正确性。通过使用本博客内容随之而来的问题与本博客无关。当使用本博客代码时,代表你已接受本博客的免责声明

正文部分

坐标点击可以说是一个基础操作了,但实际上,分辨率问题一直是一个麻烦的存在.
官方确实提供了屏幕缩放函数
但是在我们实际操作中,发现这个函数他并不总是有效

//官方的
setScreenMetrics(width, height)
width <number> 屏幕宽度,单位像素
height <number> 屏幕高度,单位像素
设置脚本坐标点击所适合的屏幕宽高。如果脚本运行时,屏幕宽度不一致会自动放缩坐标。

例如在1920*1080的设备中,某个操作的代码为

setScreenMetrics(1080, 1920);
click(800, 200);
longClick(300, 500);

交流群上次问道这个问题,开发者宴西给予回答:

x=device.width/1080
y=device.height/2340
click(80*x,90*y)

我来说明一个怎么用吧,定义一个函数clicks()

function clicks(x,y)

//注意,测试机型为1080*2340,你可以根据自己的机型修改
x1=device.width/1080
y1=device.height/2340
click(x*x1,y*y1)


//调用时候,比如
clicks(100,200)

效果图

参考文章

.

所属软件

声明

部分内容来自网络
本教程仅用于学习, 禁止用于其他用途

QQ群

698307198
扫一扫二维码,加入群聊.QQ

说明:
本文提供的代码仅供参考。
有些地方可能在最新版本的Auto.js上面需要做修改,才能运行的.如果不理解,可以加群询问.

Auto.js简介
Auto.js是利用安卓系统的“辅助功能”实现类似于按键精灵,触摸精灵.懒人精灵等一样,可以通过代码模拟一系列界面动作的辅助工作。
而与“按键精灵”不同的是,它的模拟动作并不是简单的使用在界面定坐标点来实现,而是类似与win一般,找窗口句柄来实现的。通过控件点击可以实现全分辨率的模拟人工点击效果

Auto.js使用javascript作为脚本语言,目前使用Rhino 1.7.7.2作为脚本引擎,支持ES5与部分ES6特性。新的autojs pro9系列可以使用node.js开发

开发文档
Auto.js Pro开发文档:点击这里

文档尚在完善中,可能有文档描述和代码实际行为有出入的情况。

为什么要使用Auto.js Pro开发脚本,有什么特点?

吸引我使用Auto.js Pro的原因有很多。最主要的几个原因是:

  1. Auto.js Pro能开发免ROOT的安卓脚本 Auto.js Pro基于节点操作,能开发全分辨率的脚本,自动适配各种安卓机型
  2. 可以使用手机开发,这使得开发者更多,有更多代码可以参考学习.在此也欢迎加入九黎的vip群,目前已经收集或者开发了大概4000余代码,覆盖各个分类.
  3. Auto.js Pro丰富的UI组件,能自定义各种样式的安卓界面 Auto.js.并且可以使用原生xml
  4. Pro使用的javascript的语法比较优雅,代码可读性强 Auto.js Pro的命令库非常的丰富,接口比较多 Auto.js
  5. Pro脚本文件体积比较小。1000行的代码,打包后的apk文件只有3-5M,还没有广告
    相关教程
    点击这里看更多 Auto.js Pro教程

以上是关于autojs关于适配安卓所有分辨率的坐标点击方法的主要内容,如果未能解决你的问题,请参考以下文章

autojs关于适配安卓所有分辨率的坐标点击方法

autojs布局分析不了

安卓 百度地图API怎么点击地图获取坐标

【安卓开发】怎么获取用户点击图片中的坐标

公司的设计稿为1080,适配方案如何修改

Autojs知道clickable为false时,知道控件信息如何实现定位单击操作?