亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

Android開發(fā)中如何模擬輸入

瀏覽:28日期:2022-09-20 15:27:49

主要思路是使用 adb shell input指令來模擬按鍵及觸摸輸入。

但是前提是需要root,且華為手機出于安全考慮已經(jīng)停止了root解碼。所以測試建議換個別的手機。或是直接用AS中的模擬器,用有Google Apis的版本。

input 指令

我們打開adb,進入shell,輸入input可以看到指令的參數(shù)說明。

Android開發(fā)中如何模擬輸入

其中source一般都是用的默認值可以忽略,我們主要關(guān)注的就是后面的command

text:文本輸入;keyevent:鍵盤按鍵;這兩條指令是所有設(shè)備通用的。 tap:點擊屏幕;swipe:滑動屏幕;這兩條指令適用于有觸摸屏的設(shè)備。 press,roll適用于有觸摸球的設(shè)備。模擬輸入

在使用input指令之前我們要先獲取一下root權(quán)限。

private void execShellCmd(String cmd) { try { Process process = Runtime.getRuntime().exec('su'); OutputStream outputStream = process.getOutputStream(); DataOutputStream dataOutputStream = new DataOutputStream( outputStream); dataOutputStream.writeBytes(cmd); dataOutputStream.flush(); dataOutputStream.close(); outputStream.close(); } catch (Throwable t) { t.printStackTrace(); } }text

1.輸入之前需要提前獲取焦點。2.輸入有特殊含義的特殊字符,無法直接輸入 需要使用keyevent 如: ’ ’

我們整一個EditText,然后進行text輸入測試。

execShellCmd('input text ’hello,world’');

我們發(fā)現(xiàn)少了一個H,在控制臺可以看到日志。

Android開發(fā)中如何模擬輸入

可以看到在按下H的時候,EditText沒有獲取到焦點。

Android開發(fā)中如何模擬輸入

可能是頁面初始化以后就開始執(zhí)行輸入操作,此時editText還沒有獲取到焦點,獲取焦點可能存在點延時。所以我們嘗試延遲1s后進行輸入。

private Handler handler = new Handler();private Runnable task = new Runnable() { public void run() { execShellCmd('input text ’hello,world’'); }};// 延遲1s后輸入handler.postDelayed(task,1000);

Android開發(fā)中如何模擬輸入

keyevent

execShellCmd('input text ’hello,world’ n input keyevent 68 n input keyevent 21');

輸入hello,world,然后輸入’,然后左移光標

Android開發(fā)中如何模擬輸入

常見的keycode可以參見frameworks/base/core/java/android/view/KeyEvent.java

Android開發(fā)中如何模擬輸入

tap

android 中坐標系如下圖所示。

Android開發(fā)中如何模擬輸入

我們可以打開手機中的 開發(fā)者選項 -> 指針位置 來輔助定位,可以再上方看到x,y相對的偏移量。

Android開發(fā)中如何模擬輸入

點擊屏幕(100,200)位置。

execShellCmd('input tap 100 200');swipe

滑動屏幕和tap相似只需要傳入兩個坐標即可。后面也可以設(shè)置滑動時間(ms),時間越短滑動的相應(yīng)距離就會越長。

從屏幕(100,200)滑動到(300,400)。

execShellCmd('input swipe 100 200 300 400');

以上就是Android開發(fā)中如何模擬輸入的詳細內(nèi)容,更多關(guān)于Android 模擬輸入的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標簽: Android
相關(guān)文章:
主站蜘蛛池模板: 国产精品欧美一区二区三区不卡 | 深夜影院在线视频观看 | 私人影院aaaaa毛片 | 欧洲免费无线码二区5 | 国产精品亚洲精品日韩动图 | 亚洲一级生活片 | 亚洲国产日韩在线人高清不卡 | 日本高清视频网址 | 久久99这里只有精品国产 | 国产精品亚洲色图 | 国内精品久久久久鸭 | 国产日韩一区二区三区在线播放 | 91秒拍国产福利一区 | 日本性生活网站 | 国产免费又色又爽又黄的网站 | 老头做爰xxxx视频 | 9久re在线观看视频精品 | 免费国产调教视频在线观看 | 国产精品欧美一区喷水 | 免费国产一级特黄久久 | 一级美女黄色片 | 国产精品99在线观看 | 伊人中文字幕 | 综合欧美日韩一区二区三区 | 公妇乱淫日本免费观看 | 国产精品久久在线观看 | 一级片免费观看视频 | 一级无遮挡理论片 | 国产成人免费高清在线观看 | 快猫在线观看入口免费网站满十八 | 久草视频在线看 | a一级免费 | 久亚洲精品不子伦一区 | 久久黄色免费网站 | 欧美伦理片在线播放 | 久久久久国产精品免费网站 | 久久中文亚洲国产 | 亚洲精品第五页中文字幕 | 91久久爱 | 久久久久久久免费视频 | 麻豆视频在线 |