[英]Android App Crawler not working -> Permission Denial failure
我試圖在本地運行應用程序爬蟲,以測試在 Android Studio 中創建的機器人腳本。
我按照這篇方便的文章 ( https://android.jlelse.eu/test-robo-scripts-locally-useful-for-firebase-test-lab-pre-launch-reports-41da83d5769f ) 遇到了一個問題,其中爬蟲剛才說抓取開始,抓取立即完成。 對於這個問題,我在谷歌上找不到任何答案。
這是日志中的錯誤:
Permission Denial: starting instrumentation ComponentInfo{androidx.test.tools.crawler/androidx.test.tools.crawler.CrawlMonitor} from pid=3778, uid=3778 not allowed because package androidx.test.tools.crawler 沒有簽名匹配目標 androidx.test.tools.crawler.stubapp
我終於想出了一個解決方案,所以我提出這個問題是為了幫助那些可能像我一樣被困住的人。 聽起來有些人在這個問題上有同樣的問題( https://stackoverflow.com/a/58631206/13071692 )
我發現這個錯誤正在出現,因為我使用的是我的應用程序的調試 apk 版本。 它需要一個簽名版本,所以一旦我在 android 工作室(Build > Generate Signed Bundle...)創建了一個簽名版本,它工作得很好
我遇到了同樣的問題:就我而言,我需要做兩件事。
我沒有向應用爬蟲提供正確的signingConfig
憑據,因此出現錯誤: does not have a signature matching the target
。
我當時使用的是調試版本,認為這不可能是問題,因為我的默認 buildType 沒有設置 signingConfig - 它看起來像這樣:
buildTypes {
debug {
debuggable true
}
...
}
我錯了,因為項目定義了一個 signingConfigs.debug 值,然后隱式用作調試的 signingConfig(參見https://stackoverflow.com/a/28512848/6007104 )。
因此,我將--key-store
和--key-store-password
參數添加到java -jar crawl_launcher.jar
命令,其值與我的signingConfigs.debug
配置相匹配。
我在日志中進一步查看並找到一行: Unable to find instrumentation target package <my.package>
。 為了解決這個問題,我手動安裝了應用程序並測試了 apks,而不是依賴應用程序爬蟲為我做這件事。
我使用./gradlew assembleDebug
生成了應用程序 apk,使用 ./gradlew ./gradlew connectedDebugAndroidTest
生成了測試 apk,然后在設備上手動安裝了這兩個 apk(首先是應用程序,然后是測試)。 然后我運行了應用程序爬蟲。
這是我每次想要啟動應用程序爬蟲時所做的。
adb uninstall androidx.test.tools.crawler
adb uninstall androidx.test.tools.crawler.stubapp
adb uninstall <my.package>
生成應用程序 apk: ./gradlew assembleDebug
生成測試apk: ./gradlew connectedDebugAndroidTest
安裝應用apk,然后安裝測試apk(你可以使用adb)
從解壓縮的應用程序爬蟲目錄運行應用程序爬蟲。 使用--app-package-name
參數而不是--apk-file
參數。 如果需要,請確保--key-store
和--key-store-password
:
java -jar crawl_launcher.jar --android-sdk <my/sdk/location> --app-package-name <my.package> --key-store <my/location/debug.keystore> --key-store-password <mypassword>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.