Google地图似乎为其注册了大量的Intent,以及其他启动方式。
由于这是一个非常耗资源的应用程序(尤其是内存方面的应用程序),所以我非常希望它永久不运行,除非/直到我真正需要它为止。但是,Android会一直保持启动状态-例如,当连接状态发生变化(对我来说这在室内经常发生)或GPS /网络位置发生变化时。
有什么方法可以确保Google Maps在我单击有意启动图标之前不会启动任何进程?
环境:Droid X,运行根目录Froyo 2.2;我有自动启动。和Advanced Task Killer,以及安装专业版的Titanium Backup。
只要任何方法,我都相当开放
很可靠
它使我在需要时可以使用具有100%预期功能的Google Maps,而无需进行5分钟的重新配置。
理想情况下,不需要我重新启动即可使用它,但这不是交易杀手。
我强烈希望使用一种通用方法,该方法将适用于其他应用程序,而不仅仅是Google Maps。
我是一位具有大量Unix / Linux系统管理经验的软件开发人员。换句话说,非常需要需要shell提示或编写/运行shell脚本(或Android Scripting Environment中的Perl)的解决方案。
涉及编写我自己的Java Android应用程序的解决方案是可以接受的,只要它们的详细程度足以使一个新的Android开发新手可以完成至少一些工作而不会100%丢失。
我尝试过的事情:
通过Task Killer杀死进程无法正常工作-它们立即或短时间恢复。可能通过Intents,但不是100%确定。
摆脱GMaps问题的标准方法(退出“谷歌纵横” /关闭GPS和网络定位器)。这似乎有很大帮助,但是我发现需要永久关闭GPS /定位器是不可接受的-例如,它不允许我运行Locale应用程序或基于Locale的Tasker。
通过Titanium Backup Pro冻结。这需要重新启动,并且通常不是很愉快。
我想到的可能方法(但不知道如何做)是:
以某种方式完全消除(关闭)不需要时由Google Maps注册的所有Intent。
问题:首先,我不知道Google Maps使用的所有Intent。
其次,我知道的唯一实用的方法是Autostarts应用程序,它不是可行的解决方案-大约需要5-10分钟才能找到并重新启用我所知道的所有意图(Autostarts确实很差-app意图管理-以每个意图为中心),不用担心自动启动不知道的可能意图(这是一个黑匣子,我不知道会丢失哪些意图)。
有一个脚本,将重命名的JAR文件或任何Android手机上的可执行文件(整个.apk文件?)比如从
GoogleMaps.apk
到GoogleMaps.disabled.apk
和背部。问题:我不知道是否可以在扎根的Froyo上执行此操作。此外,Google Maps已预先安装在DroidX上,因此重命名只会以某种方式影响更新,而不会影响原始应用程序吗?
有一个脚本,它将进入APK并重命名/移动/清空清单文件,以删除该应用程序的所有意图。
问题:是否需要重新编译?绝对需要重新启动,这是一个负号