|
抢红包实现代码
接收系统发送来的AccessibilityEvent
- private static final String GET_RED_PACKET = "领取红包";
- private static final String CHECK_RED_PACKET = "查看红包";
- private static final String RED_PACKET_PICKED = "手慢了,红包派完了";
- private static final String RED_PACKET_PICKED2 = "手气";
- private static final String RED_PACKET_PICKED_DETAIL = "红包详情";
- private static final String RED_PACKET_SAVE = "已存入零钱";
- private static final String RED_PACKET_NOTIFICATION = "[微信红包]";
-
- @Override
- public void onAccessibilityEvent(AccessibilityEvent event) {
- L.d("RECEIVE EVENT!");
- if (watchedFlags == null) return;
- /* 检测通知消息 */
- if (!mMutex) {
- if (watchedFlags.get("pref_watch_notification") && watchNotifications(event)) return;
- if (watchedFlags.get("pref_watch_list") && watchList(event)) return;
- }
- if (!watchedFlags.get("pref_watch_chat")) return;
-
- this.rootNodeInfo = event.getSource();
- if (rootNodeInfo == null) return;
-
- mReceiveNode = null;
- mUnpackNode = null;
-
- checkNodeInfo();
-
- /* 如果已经接收到红包并且还没有戳开 */
- if (mLuckyMoneyReceived && !mLuckyMoneyPicked && (mReceiveNode != null)) {
- mMutex = true;
- AccessibilityNodeInfo cellNode = mReceiveNode;
- cellNode.getParent().performAction(AccessibilityNodeInfo.ACTION_CLICK);
- mLuckyMoneyReceived = false;
- mLuckyMoneyPicked = true;
- L.d("正在打开!");
- }
-
- /* 如果戳开但还未领取 */
- if (mNeedUnpack && (mUnpackNode != null)) {
- AccessibilityNodeInfo cellNode = mUnpackNode;
- cellNode.performAction(AccessibilityNodeInfo.ACTION_CLICK);
- mNeedUnpack = false;
- L.d("正在领取!");
- }
-
- if (mNeedBack) {
- performGlobalAction(GLOBAL_ACTION_BACK);
- mMutex = false;
- mNeedBack = false;
- L.d("正在返回!");
- //总次数和金额统计
- if (isGetMoney) {
- T.showShort(this, "抢到一个红包: " + gotMoney + "元!");
- totalMoney = totalMoney + gotMoney;
- totalSuccessNum++;
- myPrefs.totalMoney().put(totalMoney);
- myPrefs.successNum().put(totalSuccessNum);
- L.d("totalMoney: " + totalMoney);
- L.d("totalSuccessNum: " + totalSuccessNum);
- saveToLog(hongbaoInfo);
- isGetMoney = false;
- }
- }
- }
(编辑:PHP编程网 - 湛江站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|