(越獄)ios端完全自動化及簡單的.lua腳本

2021-02-07 悉在公門

感覺關注文章的人數不多,所以五一期間可以稍微放慢下步調休息下吧哈哈。趁快要到來的五一假期,聊一些比較深層次的內容,有沒有上車一起折騰一下的呢?


關於自動化,其實之前也做了不少的嘗試:

ios:

(捷徑)快捷指令——ios自動化

(捷徑)ios的偽自動化——以定時打卡提醒為例

(捷徑)捷徑全網搜再分享與ios13自動化。


安卓:

(軟體)安卓未root實現(半)自動化——以(半)自動打卡為例

(神器)安卓自動化——以螞蟻森林自動收取能量為例

(神器)別問,安卓必下的自動化app


在安卓實現完全的自動化是不需要root環境的,使用無障礙服務就能很好地完成自動化操作,例如上面的自動化app。但在ios,即使有捷徑的存在,要完全實現自動化還是需求越獄環境(各種轉發app不在此列)。那麼,下面就以在ios13下每天實現定時自動打卡然後自動退出app並鎖屏為例,聊聊ios端的全自動化方案吧,本期需要用到下面的插件,涉及到一些簡單的.lua腳本的使用:


插件:

autotouch

activator

例:(越獄不越獄)聊聊王者秒換裝?


在開始之前呢,有必要簡單聊聊.lua腳本,其實沒必要搞得太複雜,簡單理解就是用autotouch錄製完執行動作之後生成的腳本文件,比如下面的操作:



我進行了以下的操作:右劃——左劃——點擊打開文件夾。

之後就會生成一個腳本,進到autotouchrecords文件夾就能看到:



找到生成的腳本文件,點擊打開:



如下:



裡面的語句乍一看似乎很複雜,其實我們可以將其分成4個部分來看:



第一部分:激活相關程序,這裡是激活桌面;

第二部分:右劃操作;

第三部分:左劃;

第四部分:點擊。


觀察代碼發現,以上操作主要用到了四個命令語句,即:

touchdown——按下手指;

touchmove——手指移動至;

touchup——抬起手指;

usleep——間隔多少時間(單位:微秒)。


所以我們只要能夠把握以上命令的規範,就能輕易寫出需要的腳本,那麼下面就是規範,以下教程來自網絡搜集整理:


touchDown(id, x, y)——在屏幕的(x, y)坐標按下。
id: 手指的編號,按需填寫;
x: 屏幕x坐標;
y: 屏幕y坐標。
例子
touchDown(0, 100, 200);——在坐標(100, 200)處按下。


touchMove(id, x, y)——移動手指到(x, y)坐標。
id: 手指的編號,按需填寫;
x: 屏幕x坐標;
y: 屏幕y坐標;
例子
touchDown(0, 100, 200);——在坐標(100, 200)處按下,
touchMove(0, 200, 200);——移動手指到坐標(200, 200)處。


touchUp(id, x, y)——從(x, y)坐標抬起按下的手指。
id: 手指的編號,按需填寫;
x: 屏幕x坐標;
y: 屏幕y坐標;
例子
touchDown(0, 100, 200);——在坐標(100, 200)處按下,
touchMove(0, 200, 200);——移動手指到坐標(200, 200)處,
touchUp(0, 200, 200);——在坐標(200, 200)處抬起按下的手指。


usleep(microseconds)——停頓若干個微秒,即1/1000000秒。
例子
usleep(1000000);——停頓1秒。


補充開啟和關閉命令語句:
appActivate(appIdentifier)——用appIdentifier激活指定應用。
appIdentifier: 應用標識,如"com.apple.mobilesafari";
例子
appActivate("com.apple.mobilesafari");——激活safari


appKill(appIdentifier)——用appIdentifier關閉指定應用。
appIdentifier: 應用標識,如"com.apple.mobilesafari";
例子
appKill("com.apple.mobilesafari");——關閉運行著的safari

、、、


好啦,明白了以上語句後應該就能自己編寫腳本啦,多說句如果不能理解、獲取不了屏幕坐標的,可以音量鍵-呼出autotouch錄製,然後點相應位置獲取坐標。

下面說說定時打卡的流程,我不貼自己的腳本了,畢竟屏幕大小不同鎖屏密碼不同腳本也會有很大的差異,有興趣的自己錄製/編寫吧。如果嫌語句太複雜,可以分批錄製然後自行合併修改腳本。


1、解除屏幕鎖定:

激活系統界面——上劃呼出密碼鎖——按順序點按密碼解鎖。


2、打卡:

激活打卡程序——按流程點擊打卡。


3、關閉打卡程序:

關閉


4、鎖定屏幕:

雙擊鎖屏(可選)。


注意!間隔的存在很重要!每兩個操作之間必須插入間隔語句,間隔語句要適當延長以避免偶爾的不準確!



那麼操作腳本有了,如何定時運行呢?

先藉助activator創建計劃事件(時間及循環):



然後在autotouch運行設置裡選定即可:



說一些可預見性的問題和注意事項:

首先是定位、數據的不穩定有可能會跟不上操作流以至整個流程失敗,解決方法是適當延長間隔時間!

第二個是安全問題,你的設備會在一天的某兩個時段(上班和下班)自動解鎖。

第三,以上流程因為加上了開屏解鎖的操作,所以如果設備在開屏狀態下(例如你正好在玩手機時)會失效。

以上結合XX定位更香,該教程只是作為拋磚引玉用。



好啦,以上就是本期所有的內容了,喜歡請點讚,好用請轉發。

















end

相關焦點

  • 兩句命令搞定移動端 (iOS 和 Android) 真機並發自動化測試
    一、前言大概在4個月前我發布過那篇Web 應用並發自動化測試,其實在web之前我還做過移動端的並發自動化嘗試,但遇到太多坑了,可能是之前對技術或工具的不熟悉
  • iOS 11-14優秀越獄插件
    這些增加的複雜性使某人猜測以矩陣為中心的密碼更具挑戰性,與許多其他這種性質的越獄調整相比,具有更高的安全感。,可讓任何越獄的iPhone獲得三星Galaxy啟發的鎖屏美學。Kumquat是一項新的免費越獄調整,它使越獄者可以自定義其「正在播放」窗口小部件,並可以從「控制中心正在播放」模塊中訪問更多功能
  • 使用Nginx+Lua開發高性能Web應用
    Nginx的高性能是大家公認的,而Nginx開發主要是以C/C++模塊的形式進行,整體學習和開發成本偏高;如果有一種簡單的語言來實現Web應用的開發,那麼Nginx絕對是把好的瑞士軍刀;目前Nginx團隊也開始意識到這個問題,開發了nginxScript:可以在Nginx中使用JavaScript進行動態配置一些變量和動態腳本執行;而目前市面上用的非常成熟的擴展是由章亦春將Lua和Nginx粘合的ngx_lua
  • 乾貨 | Python實現iOS自動化打包詳解(含代碼)
    本文來自作者投稿,作者為FEC筷雲股份ios部門Qinz,FEC筷雲股份歡迎更多好作品投稿,以下欣賞正文▼可能最簡單的iOS自動化打包方式是
  • 觸動精靈腳本開發 Lua 簡明教程
    腳本開發手冊觸動精靈腳本開發函數擴展庫觸動精靈iOS腳本開發視頻教程已知與觸動精靈衝突的插件列表觸動精靈腳本開發實例代碼觸動精靈iOS/幫你玩腳本商城官方源觸動精靈iOS使用教程腳本編輯器取色、圖像工具腳本加密文字點陣識別字庫製作工具設備 SSH
  • 最棒的 5 款開源 Android/iOS 自動化工具
    簡單的,富有感染力的類似於英語的測試語句。支持屏幕所有的動作,比如滑動,縮放,旋轉和敲擊。大型而熱情的社區。支持原生,混合和手機網絡程序的自動化。缺點Appium伺服器桌面程序常常有不穩定版本。Window作業系統上對伺服器桌面應用不支持腳本錄製。
  • 移動應用安全基礎篇——繞過iOS越獄檢測
    今天主要是針對三款有不同越獄檢測的iOS應用,方式分為手動繞過越獄檢測和自動繞過越獄檢測。測試工具FridaNeedleIDA Pro7.0Hopper Disassembler V4Cydia(添加Darwin CC Tools依賴)……案例1首先對該APP進行一鍵dump(砸殼)frida-ios-dump,該工具基於frida提供的強大功能通過注入js實現內存
  • 安卓自動化工具(附自動刷抖音腳本實例)
    目前做Android自動化模擬用戶操作的工具不多,還有一些工具是基於一些腳本框架封裝的只能執行一些特定操作的應用。
  • 如何在iOS 13和iPhone 11設備上提取完整的文件系統和鑰匙串?
    有研究者最近發現了一種在運行iOS 13和iPhone 11的設備上提取完整的文件系統和鑰匙串的方法,這種方法快速、簡單和安全,且無需越獄。該方法是藉助 Elcomsoft iOS Forensic Toolkit的最新版本,該版本填補了以前的許多空白功能。
  • iOS越獄還有存在的價值嗎?
    關於這問題,小智今天想來和大家說說,是否 iOS 真的不需要再越獄?越獄是否還有沒有存在的價值。這幾年內越獄可以說一直在帶領著蘋果實現更多的功能,但蘋果封堵越獄的速度也越來越快,是不是有點過河拆橋的感覺?
  • 聊聊 Python 自動化腳本部署伺服器全流程(詳細)
    日常編寫的 Python 自動化程序,如果在本地運行穩定後,就可以考慮將它部署到伺服器,結合定時任務完全解放雙手但是,由於自動化程序與平臺兼容性有關聯,有一些依賴庫在伺服器運行需要做特殊處理本篇文章以一段 Selenium 編寫的 Python 自動化程序,聊聊腳本部署伺服器的詳細過程2.
  • 黑產大數據|黑產攻擊流程自動化體系
    只需要在界面上填入各個黑產資源平臺的帳號密碼,並進行一些簡單的配置,即可一鍵進行所有的自動化攻擊流程。根據情報顯示,大約從18年底開始,越來越多的黑灰產從業者使用Auto.js來開發自動化攻擊腳本。CEF的應用場景之一就是用於自動化Web測試,這也給黑灰產打開了便利之門,將之用於自動化攻擊。我們以某智能爬蟲採集器為例,該軟體內置了 Chromium瀏覽器,通過直接操控頁面控制項來完成自動化操作。該爬蟲採集器使用方式非常簡單,只需在軟體界面輸入目標網站,就可以根據需求爬取目標網站的數據,界面如下:
  • iOS14-iOS14.5 beta1 支持越獄!
    前幾天說過@coolstar已經確定在iOS14-iOS14.2之間的A14設備可以實現越獄。兩天時間內通過贊助(可能是贊助的)訂購了測試設備,使得他擁有iOS14.3的設備並且也成功實現了越獄。沒想到的是iOS14.3-iOS14.5 Beta1都可以越獄,這一點還比較令人意外的,畢竟iOS14.4的安全文檔中就修復了好幾個內核漏洞。
  • 手機端iOS&Android模態界面對比【2019新版】
    原文地址:https://developer.apple.com/design/human-interface-guidelines/ios/app-architecture/modality/暫且總結手機端中
  • iOS越獄將有重大改變,大家做好準備!
    而Installer 5 將會為越獄圈帶來重大的改變,如果後續大多數開發者和用戶都選擇 Installer 5 ,而 Cydia平臺是否還有必要存在將會是一個很大的疑問,雖然這在短期內不會發生,但是長期來看,如果大鬍子後續不再更新Cydia ,那未來Cydia被Installer 5完全取代也不是沒有可能的。
  • 2021年軟體測試工具大全(自動化、接口、性能、安全、測試管理)
    Cypress 支持端到端測試、集成測試、單元測試。 官網地址:https://www.cypress.io/Macaca 是一套完整的自動化測試解決方案。其特性是支持移動端和 PC 端,支持 Native, Hybrid, H5 等多種應用類型,提供客戶端工具和持續集成服務等。
  • iOS插件推薦大全
    MediaWidget的越獄插件將其變為現實。WidgetRadius是一個簡單的越獄插件,可讓任何越獄的iPhone獲得三星Galaxy啟發的鎖屏美學。,可以直接下載使用,但免費用戶每天只能下載2個腳本!
  • TimLiu總結的iOS、mac開源項目及庫 — Edit
    IGInterfaceDataTable - IGInterfaceDataTable是WKInterfaceTable對象的一個類別,可以讓開發者更簡單地配置多維數據。該項目使用類似UITableViewDataSource的數據源模式配置Apple Watch表格,而不是將數據結構扁平化成為數組。
  • 自動化測試框架
    為了滿足對卓越質量和更快迭代的要求,越來越多的企業引入自動化,並將優先進行自動化測試。敏捷開發模型使其測試過程自動化變得越來越必要,但是最關鍵的方面是選擇正確的測試自動化框架。什麼是測試自動化框架測試自動化框架是為自動化測試用例或者腳本提供執行環境而搭建的基礎設施。