怎么在iOS中查找私有API?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
方法1:strings檢測
這個方法是我在被拒信息中看到的蘋果大大建議的方法,步驟如下:
1、獲取release的ipa包,打包是選擇的方式為:App Store
2、將 .ipa 修改為 .zip,減壓,獲取到兩個文件夾Payload、Symbols
3、打開命令行,cd 到 Payload 里面的 app,然后使用 strings 命令進行查找
strings - -a -arch armv7 "工程名" | grep com.apple.springboard.lockcomplete
還有一種命令,直接生成一個 txt 文件。
strings - -a -arch armv7 "工程名" > /Users/admin/Desktop/strings.txt
運行后會在桌面上出現一個 strings.txt
文件,文件的路徑和名字隨個人開發習慣
兩種命令獲取方式都沒有定位到具體位置,只是告訴我們存在這個私有api
方法2:otool工具(xcode自帶,可以直接在終端中使用)
前兩步同方法1
terminal中 cd 到 Payload 里面的 app
然后使用如下命令
otool -L appName
這個命令會列出你所有使用的系統庫,檢查一下給出的列表中有沒有私有api的庫
如果對命令不熟悉還可以使用
otool -help
去查看命令幫助文檔
方法3:全局搜索(建議使用)
這個方法是我認為最直接最有效的方法!
1、 cd 到你的工程目錄
2、使用全局搜索命令(注意最后要加一個點)
grep -r lockcomplete .
看完上述內容,你們掌握怎么在iOS中查找私有API的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。