[Android] 使用 Automate 控制 SpeedTest App 持續測速

[Android] 使用 Automate 控制 SpeedTest App 持續測速

很久之前寫過一篇 用 Automate 設定工作流程,自動觸發事件、執行動作

最近有網友問到能不能用它來操作 Speedtest 持續測速,

試了一下是可行的,來記錄一下方法吧~

 

1. 讓工作流程啟動 Speedtest app

在 Automate 裡新增一個 App start 的動作:

 

這個 App start 要啟動什麼呢?

按下 Pick activity 來選擇要啟動的 activity:

 

找到 Speedtest app 之後展開,選擇 MainActivity,

好讓 Automate 把 Speedtest 的主要 activity 叫起來:

 

選好後的樣子:

 

按下 Done 之後,把 Flow beginning 和 Start app 的線連接起來,

也就是工作流程一啟動,就去執行 Start app 去把 Speedtest 叫起來:

 

2. 按下 Speedtest 的測速按鈕

Speedtest 的測速按鈕有兩種,

一種是第一次開啟 app 時,有個大大的 Go 按鈕,

一種是測速完成時,在廣告的下方有個較小的 Go 按鈕。

 

要讓 Automate 可以處理兩種狀況應該是可以,

但我決定作簡單版的就好,

先自己手動把 Speedtest 執行過一次測速,

之後再讓 Automate 一直去點那個小的 Go 按鈕,就不用管大的 Go 按鈕了~

 

在 Automate 裡面,新增一個 Interact 的動作:

 

把 Proceed 的時機,從 Immediate 改成 When UI element appear,

這樣可以確保 Go 按鈕出現後,Automate 才去點擊~

接著按下 Record interactions 按鈕來錄製一下動作:

 

Automate 會在下方跑出一個浮動視窗,

這時我們可以按下 Home 鍵或是切換視窗鍵,

去把 Speedtest app 叫出來:

 

按下 Speedtest app 上的 Go 按鈕後,

就可以按下 Automate 浮動視窗的勾勾結束錄製:

 

Automate 會把你剛剛做過的動作列出來,

我們要用的是 Click 到 Start a Speedtest 這個動作,

注意不要選錯了,選錯的話 Automate 是沒辦法點擊到 Go 按鈕的。

如果找不到這個動作,請重新錄製動作再試試看:

 

設定好的 Click 動作的細節如下圖:

 

按下 Done 之後,讓 Start app 和 Interact Click 連線起來,

表示 Start app 打開 Speedtest app 之後,就執行 Click 動作,

Automate 會等待小的 Go 按鈕出現後點擊:

 

註:Automate 要能與其他 app 的 UI 元件互動是需要權限的,

過程中會提示給予權限、以及安裝一個輔助用的 app,

忘了抓圖就不列出來了,請自行照 Automate app 的指示給予權限~

 

3. 持續測速

上面完成的動作可以點擊一次測速按鈕,

如果要持續測速,一個簡單的想法是等待小的 Go 按鈕再次出現,

出現後就可以點擊~

 

正好我們剛剛的 Interact Click 動作會等待小 Go 按鈕出現,

所以就直接把 Interact Click 的 Yes 連到自己的 In,

表示說 Click 動作完成之後,就再執行一次 Click 動作,

反正 Click 動作會等待小 Go 按鈕出現才執行,所以不會出問題:

 

至於 No 這個出口呢?

No 表示 Click 動作沒成功完成,可能是沒點到按鈕,

不過失敗的話我也不知道可以做什麼,就先不管它了。

 

以上的設定全部完成之後,就可以測試了:

  1. 先手動把 Speedtest app 叫起來,執行過一次測速
  2. 執行 Automate 這個我們剛設定好的工作流程,它就會點小 Go 按鈕測速。測速完畢會再持續點擊按鈕,也就是不間斷的測速了。

 

這次的研究讓我發現 Automate 的功能真的非常的強大,

可以操作到其他 app 的 UI 介面,

這讓自動化的可能性變得很高,可以好好利用呀~

(不過也要歸功於 Android 有開放這些功能,

像 iPhone 上許多自動化的動作是完全沒可能做的…)

 

(本頁面已被瀏覽過 1,962 次)

4 thoughts on “[Android] 使用 Automate 控制 SpeedTest App 持續測速

  1. 您好,請問一下如果我只想讓Speedtest跑10次 然後換跑youtube,是可以設定次數的嗎?

    1. 可以參考我新寫的這篇:https://ephrain.net/android-%E5%9C%A8-automate-app-%E4%B8%AD%E6%8E%A7%E5%88%B6%E8%BF%B4%E5%9C%88%E6%AC%A1%E6%95%B8/

  2. 非常清楚又實用的教學,太感謝了。一直想要藉由automate app 執行其他app ui中的某個功能,卻不得其門而入,也經歷了好多個熬夜嘗試卻挫折的日子。看完這篇示範,終於找到答案,破繭而出,讓自己的自動化設定,又進入到一個新的天地。版主真的是太棒了。

  3. 天啊,雖然新版的automate介面好像跟大大的已經不一樣,但照著做也是做出來了,好好玩~~

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料