autojs问题汇总
autojs解決方案
修改全局變量
var a =1
如果在函數運行中,需要修改全局變量要用 a= 2來修改
查找text控件包含文本的命令 textContains
findOne找不到控件的時候會一直阻塞,不能繼續執行剩下的代碼,最好是用findOnce
id 用findOne()找不到,帶包名配ID
**手機性能和手機網速是影響多步操作成功率的一個關鍵問題,各位同仁如何保障查找控件成功率。
AutoJs創建項目后打包成Apk后Apk無
法運行。 AutoJs單文件打包成Apk說是風險Apk。
無障礙服務經常被停止,導致AutoJs或者Apk不干活了。代碼會停止.對用戶不友好
為什么又時候launchApp(‘應用名’);會失效**
怎么黑屏跑腳本(省電)
解決方案如下
為什么又時候launchApp(‘應用名’);會失效
第一,這是因為你手機存在同名軟件.找不到你想要的app,要使用launch(‘應用包名’)。第二,是因為你沒有給軟件(后臺彈出界面)權限
auto.waitFor();語句增加是非常必要的這個在你沒有無障礙時候會提示你無障礙模式的開啟。并且開啟之后,會接著繼續運行.
AutoJs創建項目后打包成Apk后Apk無
法運行。 AutoJs單文件打包成Apk說是風險Apk。
這個問題現在已經比較好解決了.就是使用AUTO.JS Pro版本即可.
這個版本我已經放群里了.破解版可以打包.
autojs交流2群553908361
1
2
3
4 手機性能和手機網速是影響多步操作成功率的一個關鍵問題,各位同仁如何保障查找控件成功率。
其實也很簡單.就是while循環,舉例,開頭a=1,然后找到之后,a=0
而a=0之后,直接break;跳出循環.查找控件存不存在使用exists ()。一般情況下
另外`,Autojs生成的代碼是:if (text(“看書”).exists()) {},不建議這樣寫,有很
多時候找不到或者是有多個文字一樣的內容故:let book=
className(“android.widget.TextView”).text(“看書”).findOnce();這樣寫準確率
更高。這個問題,就是控件同名的有兩個,怎么定位.`
className(“ImageView”).depth(10).findOne(1000).click()`
//選擇.className為ImageView,depth(深度)為5的控件,找一秒.點擊
//這個用自帶的布局分析就可以有,屬性什么的標識的很清楚
1
2
3
找到之后的一個操作
click() 點擊。點擊一個控件,前提是這個控件的clickable屬性為true
longClick() 長按。長按一個控件,前提是這個控件的longClickable屬性為true
setText() 設置文本,用于編輯框控件設置文本。
scrollForward(), scrollBackward() 滑動。滑動一個控件(列表等),
前提是這個控件的scrollable屬性為true
exits() 判斷控件是否存在
waitFor() 等待控件出現
怎么黑屏跑腳本(省電)
怎么黑屏跑腳本(省電)
原理很簡單,就是去創建一個黑色的懸浮窗,在oled屏幕上,就不會發光,降低功
耗.兼容任何腳本
function 息屏() {
var h = confirm(“是否要進入息屏掛機模式嗎?可按下音量上鍵停止輔助。并不能鎖定屏幕!!!通知欄會正常顯示(oled屏可用)”);
if(h){
var w = floaty.rawWindow(
w.setSize(-1, -1);
w.setTouchable(true);
//保持腳本運行
setInterval(()=>{}, 1000);
}
}
息屏()
————————————————
版權聲明:本文為CSDN博主「九黎AJ」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_30931547/article/details/106908964
autojs sdk
基于 Autojs 的 APP、小程序自動化測試 SDK,支持:啟動應用、停留等待、判斷存在、文本點擊、顏色點擊、循環點擊、坐標拾取、語音播報、通知欄提示、音量調節、震動等數十項能力。
項目主頁
https://github.com/kangour/autojs_sdk
autojs sdk 在 Auto.js 的基礎上,通過大量接口優化提升了模塊的通用性,并進行豐富的功能擴展。
能干啥
使用 autojs sdk,一行代碼就能完成 語音播報/任意類型文本點擊/循環點擊/坐標拾取/自動權限控制/自動類型識別/自動按鍵監聽/通知欄實時提示/自動移除最近任務/自動解鎖 等數十項能力,更多能力陸續開放中。
開放的方法
包括但不限于以下方法,更多功能盡情期待:
start_app: 傳入應用名稱,啟動應用。 wait_for: 等待文本出現 has_text: 當前屏幕是否存在文本 click: 點擊文本或坐標 click_item: 點擊文本 click_color: 點擊顏色 click_item_each: 點擊當前屏幕的所有傳入文本 click_color_each: 點擊當前屏幕的所有傳入顏色 wait_befor_click: 某文本出現之前的點擊 get_coord_by_color: 通過顏色獲取坐標 get_coord_by_text: 獲取文本坐標 set_volume: 設置設備音量 log/warn/error: 設置調試日志簡單上手
編寫基于本 sdk 的應用分為三個步驟
將 autojs_sdk/lib.js 導入運行環境 在新創建的應用中用 require('lib') 引入 auto_sdk 編寫主函數 main() 并傳入 lib.start_app()這里展示僅用 5 行代碼開發一個基于網易云音樂的自動播放測試應用,實現的功能有 啟動網易云音樂后的 跳過開屏廣告/播放每日推薦歌曲/調節音量。
// 導入:從 lib.js 導入需要的方法
let { start_app, click_item, set_volume, wait_befor_click } = require(‘lib.js’);
// 編寫主函數:程序啟動后執行的邏輯代碼。
function main() {
wait_befor_click(‘發現’, ‘跳過’)
click_item(‘發現’)
click_item(‘每日推薦’)
click_item(‘播放全部’)
set_volume(30)
}
// 啟動應用:傳入參數依次為:主函數,要啟動的 App 名稱,當前應用描述,是否語音播報執行狀態。
start_app(main, ‘網易云音樂’, ‘播放日推’, true)
高頻函數介紹
入口函數
start_app(callback, op_app, this_app, use_tts)
程序入口函數,自動完成解鎖、啟動 App、權限控制、按鍵監聽、通知欄提示等操作。
callback:軟件啟動后執行的函數,如 main operation_app:需要啟動的軟件,如 網易云音樂 this_app:當前程序的描述,如 播放每日推薦 use_tts:執行完畢后是否使用語音提示(默認不啟用)文本點擊
click_item(_text, tip_type)
自動識別文本類型,并點擊文本。
_text: 待點擊的文本 tip_type:提示類型,如果傳入 no_tip,則不會在文字尋找失敗后給出提示彈窗(默認啟用)顏色點擊
click_color(_color, x, y, w, h)
在指定的區域點擊傳入的顏色
_color:待點擊的顏色 x:區域左上角的 x 坐標 y:區域左上角的 y 坐標 w:區域寬度 h:區域高度等待前點擊
wait_befor_click(target, source)
在 target 出現前,如果出現 source,就點擊。
例如進入有開屏廣告的應用前,點擊 “跳過廣告” 文本,有效節約啟動時間:
wait_befor_click(‘首頁’, ‘跳過’)
開發者的話
還有很多函數等待你去發掘,比如日期時間處理,日志,坐標處理等能力,均可參考 autojs_sdk/lib.js 的函數注釋,同時也希望你能和我一起來完善它,一起構建一個易用的自動化測試工具;你可以將自己基于 autojs_sdk 編寫的應用提交到 example 目錄下。
作者:開朗米奇羅
鏈接:https://www.jianshu.com/p/5bacb1bfbaa2
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
https://www.bilibili.com/read/cv2156861 基礎掃盲
https://www.cnblogs.com/corsacsherry/p/10609339.html 布局分析軟件
總結
以上是生活随笔為你收集整理的autojs问题汇总的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 详解Python 画蝰蛇(适合初学者)
- 下一篇: springsecurity oauth