Android后台模拟点击探索(附源码)

本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布

工作中我们需要自制一套工具,其中遇到需要模拟点击事件的需求,类似按键精灵的功能,支持后台持续运行,满足触发条件时完成点击。

经过一番探索,一共整理出两种不同的方案:AccessibilityServiceadb shell命令,读者可自行选择合适的场景。

AccessibilityService

无障碍模式是我首先想到的方案,对于不知道Android无障碍模式的,可自行百度。这里简单说明一下,AccessibilityService是Android为残障人士提供的贴心功能,比如可以报出当前页面有哪些按钮balabala。使用官方提供的一些列API,我们还可以完成一些自动运行的“黑科技”操作,比如早些年的红包插件、微信自动回复插件、自动点赞插件等。

本方案原理比较简单:扫描当前页面的View树,找到目标控件,模拟点击操作,下面详细阐述。

添加配置文件

首先需要在res目录下建立配置文件:accessible_service_config.xml ,名字随意取。

<?xml version="1.0" encoding="utf-8"?>
<accessibility-service
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:accessibilityEventTypes="typeAllMask"
    android:accessibilityFeedbackType="feedbackGeneric"
    android:accessibilityFlags="flagReportViewIds"
    android:canRetrieveWindowContent="true"
    android:notificationTimeout="100"
    android:description="@string/description"
    android:packageNames="目标包名"/>

accessibilityEventTypes:设置响应事件的类型,这里设置typeAllMask,就是响应全部类型的事件。

accessibilityFeedbackType:设置回馈给用户的方式,有语音播出和振动,这里使用通用类型。

notificationTimeout:设置响应时间。

packageNames:目标包名,比如红包插件就要设置微信包名,关于包名如何获取,下文会提到。

继承AccessibilityService编码

接着我们继承AccessibilityService新建AutoClickAccessibilityService,重写onAccessibilityEvent(AccessibilityEvent event)


public class AutoClickAccessibilityService extends AccessibilityService {
   
    private static final String TAG = "GK";

    @Override
    public void onAccessibilityEvent(AccessibilityEvent event) {
        ztLog("===start===");
        try {
            //拿到根节点
            AccessibilityNodeInfo rootIn
  • 19
    点赞
  • 125
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
要下载Android车载导航Launcher源码,首先需要找到合适的网站或平台。可以通过搜索引擎搜索相关关键词,如“Android车载导航Launcher源码下载”来寻找相关资源。或者也可以通过开发者社区,如GitHub、StackOverflow等寻找开源项目。 一旦找到合适的下载资源,确保源码与您所需的功能和需求相匹配。仔细阅读项目的说明文档、许可证和用户评价等信息,确保该源码符合您的要求。 在进行下载之前,确保您具备开发环境以及相应的开发工具和技术知识。一般情况下,车载导航Launcher是基于Android平台的,因此您需要拥有Android开发环境和Android开发工具包(SDK)。 下载源码后,解压文件并打开项目。您可以使用Android Studio等IDE(集成开发环境)来导入项目,并根据您的需求进行配置和修改。 在进行任何修改之前,建议先阅读项目的文档和代码结构,熟悉项目的整体逻辑和功能。这样能更好地理解代码,并确保修改不会影响原有功能的稳定性和正确性。 修改完毕后,您可以根据自己的需要进行构建、编译和测试。确保应用在车载设备上的兼容性和稳定性。 最后,如果您对该源码进行了改进或优化,也可以考虑将您的成果贡献给开源社区,以便其他开发者也能受益。 总之,下载Android车载导航Launcher源码需要找到合适的下载资源、具备开发环境和工具、熟悉项目结构和代码逻辑、进行修改和测试。这样才能成功地下载并使用源码来满足您的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值