您的位置:首页 > 移动开发

自动打开国航APP并签到

2017-12-02 17:02 155 查看

分析需求

1、需求

国航APP签到可以送里程,写一个Demo自动打开国航,并且跳转签到页面,自动签到

2、 主要步骤

启动国航APP

自动点击:(1)点击底部button跳转到签到页面;(2)点击“签到”

开机启动Demo

启动国航APP

1、首先需要知道APP的包名:

在手机打开国航APP,然后通过adb命令dump当前Activity:

adb shell dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp' --color=always


结果如下:

mCurrentFocus=Window{473be9d u0 com.rytong.airchina/com.neu.airchina.HomeActivity}
mFocusedApp=AppWindowToken{bd1eb7 token=Token{685c1b6 ActivityRecord{8952551 u0 com.rytong.airchina/com.neu.airchina.HomeActivity t579}}}


Activity名称前面即为包名:com.rytong.airchina

2、调用Context.getPackageManager.getLaunchIntentForPackage(APP_PACKAGE_NAME),启动APP

public static void launchApp(Context context) {
if (isAppInstalled(context, APP_PACKAGE_NAME)) {
context.startActivity(context.getPackageManager().getLaunchIntentForPackage(APP_PACKAGE_NAME));
} else {
Toast.makeText(context, "The App is not installed", Toast.LENGTH_SHORT);
}
}


自动点击

实际上是实现Android的模拟点击:可以采用AccessibilityService

具体参考 minggo620 自动点击[模拟点击、辅助服务、反射遍历破解]

主要原理有两点:

1、通过resource-id获取对应的View

nodeInfo.findAccessibilityNodeInfosByViewId(resId)


2、执行AccessibleService的指定方法实现点击

targetNode.performAction(AccessibilityNodeInfo.ACTION_CLICK);


可以通过DDMS>>Dump View Hierarchy查找View的ID, 结果如下, id =
ll_home_me




开启启动Demo

主要原理:注册开机广播android.intent.action.BOOT_COMPLETED,在onReceive方法启动Demo

public class BootBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction().toString();
if (Intent.ACTION_BOOT_COMPLETED.equals(action)) {
Toast.makeText(context, "收到开机广播", Toast.LENGTH_LONG);
Intent mIntent = new Intent(context, MainActivity.class);
mIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(mIntent);
}
}
}


参考Android 开机自启动应用

Demo没有安装在手机内存,但是如果手机关机之前,Demo在后台,那么重启手机时,Demo可以自动启动。

Demo地址

https://github.com/BuddyZH/OpenAirChina

目前设置启动国航APP后等待9秒,点击底部ME按钮
ll_home_me
,然后等待2秒,点击个人中心的“签到”
fl_sign_up
,最后等待5秒,点击签到页面的“签到”
rl_sign_up_sign
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐