我想做一個任務管理器軟,我想檢查所有使用android.intent.action.BOOT_COMPLETED的應用程序,我也想在移動啓動時禁用自動啓動。我不知道,如果我需要root權限來完成它的任何建議可能會收到如何禁用通過BOOT_COMPLETED運行應用程序
回答
請注意,您不能更改上面的/data/system/packages.xml
文件以刪除android.intent.action.BOOT_COMPLETED
權限。
這是因爲android框架在啓動時會分析每個apk(即app)清單文件,並且當它看到android.intent.action.BOOT_COMPLETED
權限時,它會在當時調用該應用程序。
因此,修改該文件將不起作用。我試過了 - 相信我。我知道刪除android.intent.action.BOOT_COMPLETED
權限(除了修改andorid框架,重新編譯它並將其加載到手機上)的唯一方法是手動編輯要從中刪除權限的apk文件。
顯然不適合心靈的隱隱!
要檢查哪些應用程序收到BOOT_COMPLETED
意圖的行動,你可以使用Android PackageManager
和ResolveInfo
類類似,
Intent intent = new Intent(android.intent.action.BOOT_COMPLETED);
List<ResolveInfo> listApp = packageManager.queryIntentActivities(intent, 0);
for (ResolveInfo res : listApp) {
Log.e("Camera Application Package Name and Activity Name",res.activityInfo.packageName + " " + res.activityInfo.name));
}
但我認爲它不可能改變他們使用的其他應用程序的許可。所以你不能阻止它在BOOT_COMPLETED
時間開始。如果你想要這個,那麼你需要ROOT權限。
有安卓市場,允許你做它的應用之一,例如LBE Privacy Guard
UPDATE:
在Android框架結構,在/data/system/packages.xml
它包含所有已安裝的應用程序的信息,包括使用許可,(我從來沒有試過這個也不知道它的工作與否)如果你可以修改這個文件,那麼可能是你可以實現你想要的.. 謝謝..
如果我有root權限,如何調用命令來阻止它,以及如何獲取packages.xml來修改它? – pengwang 2012-03-16 00:32:55
我已經知道res.activityInfo.packageName,如果我可以使用root權限來阻止它,但我可以使用哪個命令? – pengwang 2012-03-16 00:37:52
不需要任何命令。只需從該文件中刪除該文件的權限並將其保存到該文件中,並在重新啓動設備時刪除權限即可生效。 – user370305 2012-03-16 05:18:07
如果你能找到(例如,通過查看應用程序的清單),可以使用以下命令禁用adb命令行或root shell中的組件:pm disable package.name/component.class.name
Autostarts應用程序確實這個。它具有GPL(我認爲)源代碼,如果您的應用程序是GPL,則可以重新用於您的應用程序。
- 1. 如何通過Boot_completed接收器通知您的(未啓動的)應用程序?
- 2. 通過index.html運行Angular2應用程序
- 3. 通過應用程序運行代碼
- 4. 通過Telnet運行應用程序
- 5. 通過asp.net運行winforms應用程序
- 6. 通過SSH運行web應用程序
- 7. 通過ASP.NET運行應用程序
- 8. 通過服務運行應用程序
- 9. 通過鏈接運行應用程序
- 10. 通過SD卡運行應用程序
- 11. 如何通過運行應用程序獲取CPU使用率
- 12. 如何運行通過在C#服務應用程序的GUI應用程序
- 13. 如何禁用Windows Phone 8.1運行時通用應用程序的webview緩存?
- 14. 在linux下,如何通過.html運行應用程序
- 15. 如何通過AppleScript安裝並運行SIlverlight應用程序?
- 16. 如何通過Atom編輯器運行ASP.NET 5應用程序?
- 17. 如何通過命令提示符運行c#應用程序?
- 18. NetBeans IDE - 如何通過控制檯運行Java應用程序
- 19. 如何通過應用程序運行類的實例
- 20. 如何通過腳本(.sh文件)運行mac應用程序?
- 21. 如何通過PhpStorm在Vagrant實例上運行應用程序?
- 22. 如何檢查應用程序是否通過SBT運行?
- 23. 如何通過.bat文件運行java應用程序
- 24. 如何通過您的應用程序運行traceroute命令?
- 25. android如何通過應用程序禁用更改
- 26. 如何在應用程序運行時禁用手機鍵盤?
- 27. Swift Debugger:如何禁用它以運行應用程序?
- 28. XCUITest - 如何在應用程序運行時禁用Wi-Fi?
- 29. 如何禁用Android應用程序禁用(可以通過設置完成)?
- 30. 你如何通過Python運行Twisted應用程序(而不是通過Twisted)?
不錯的問題+ 1.我也在等待SO – Sameer 2012-03-15 07:19:59
的回覆看看我更新的答案。 – user370305 2012-03-15 07:52:41