題:
如何防止應用程序在啟動時運行?
Aaronaught
2010-09-14 01:38:19 UTC
view on stackexchange narkive permalink

可能重複:
如何停止應用程序和服務的運行?

我已經安裝了一些我最喜歡的應用程序,但事實是它們都認為它們太重要了,無法自動啟動。他們都沒有給我應用程序中 中的任何選項來禁用自動啟動“功能”。

我可以阻止這些應用程序自動啟動嗎?如果可以,怎麼辦?

注意:我的手機沒有植根,所以我對不需要需要植根設備但可以接受所有答案的解決方案特別感興趣。即使他們需要植根設備,因為我最終還是可以這樣做。

還請注意:我寧願擺弄任務殺手中笨拙的自動殺手功能程序,因為我發現它們在我的手機上(摩托羅拉Milestone / Droid)非常不可靠。

這對於Android來說是很正常的行為。 Android通過觸發Intent來管理正在運行的應用程序。在大多數情況下,您不需要控制/殺死自動運行的應用程序,Android可以聰明地管理資源,並且會在必要的情況下殺死*和復活*應用程序,以在內存不足的情況下提供所需的盡可能多的服務。但是,如果某個特定的應用程序有令人不安的行為(例如,始終打開GPS / Wifi並消耗電池),則只需將其卸載即可。
您可以在應用啟動後將其殺死,但是與您的問題的要求相矛盾。這些應用程序真的會產生那麼多的開銷嗎?如果是這樣,我會尋找無法自動啟動的替代應用程序。
這並不是真正的開銷問題,更多的是錯誤問題。它們似乎可以很好地交互運行,但是我已經看到它們莫名其妙地吞噬了大量的CPU,因此在後台消耗了電池。然後還有像Google財經這樣的應用程序,它們沒有任何業務可以自動啟動。我當然會尋找替代品,但正如您確定的那樣,要找到一個完美的選擇並不總是那麼容易。
我發現[Android助手](https://market.android.com/details?id=com.advancedprocessmanager&feature=search_result)在某種程度上很有用,因為它實際上不是“預防者”,而是“殺手”(之後任務開始),還有一些應用程序/服務無法處理,並要求用戶手動關閉它們。
將http://android.stackexchange.com/questions/2258/apps-automatically-starting#question合併到此問題中
相關:[禁用啟動時自動啟動](https://android.stackexchange.com/a/209345/218526)。
八 答案:
#1
+15
Bryan Denny
2010-10-19 21:20:24 UTC
view on stackexchange narkive permalink

請,請,請放下任務殺手。

不需要。操作系統知道如何很好地處理和終止應用程序。否則,您將浪費性能/電池,因為當您殺死某個任務時,它將重新生成備份。而且,如果您殺死了正在寫入磁盤(或數據庫)的任務,則有可能造成腐敗

您永遠唯一一次應該殺死一個磁盤。任務是它顯然正在瘋狂運行或掛斷(通常發生這種情況時,您會得到“強制關閉”屏幕。否則,請轉到“設置”->“應用程序”->“找到您的應用並在此處終止任務)。

坦白說,我不介意(例如)重啟後自動運行而無需觸碰地圖的情況(例如)。它不需要存儲任何數據。無論如何寫到磁盤上是做什麼的?實際上,我不會運行自動運行的任務殺手(實際上具有諷刺意味)。
#2
+15
Martin
2011-11-29 01:44:53 UTC
view on stackexchange narkive permalink

周圍有一些應用程序聲稱可以提供此功能。但是,它們基本上是後台的任務殺手。這意味著他們將允許該應用加載,然後將其殺死。這意味著將使用多餘的電池電量來殺死該應用程序,然後稍後可能會在某個事件觸發器上重新加載該應用程序,然後再次將其殺死。

老實說,如果您使用這些應用程序,並且不想卸載它們,最好的辦法就是讓它們加載。只要有一些未使用的內存,它們就會佔用一點內存。只要有東西需要內存,系統就會殺死該應用程序-相信我,與任何愚蠢的任務殺手相比,Android系統對殺死哪些任務有更好的了解。

這裡有一個很好的說明,說明為什麼任務殺手不是一個好主意: http://forum.xda-developers.com/showthread.php?p=6426198#post6426198

否則,除非應用專門提供禁用自動啟動的選項,否則無法在無根電話上執行此操作。但是,在紮根電話上,有許多應用程序可以實際更改將廣播意圖傳遞給應用程序的方式,這意味著可以搶先阻止它們啟動。

老實說,我努力思考應用程序可能要在啟動時加載服務的原因,而僅僅通過註冊廣播偵聽器是無法實現的。服務通常應用於壽命有限的後台任務。某些應用程序可能會在啟動時加載服務以進行某些處理,但是通常會在處理完成後將其關閉。

不過,並不是所有的開發人員都能理解規則。我寧願卸載使用此類資源的寫得不好的應用程序。

這些都是好點,隨著新設備獲得處理能力和內存,任務殺手最終可能會滅絕。儘管如此,我的問題並不是源於對應用程序浪費資源的擔憂,而是源於*觀察*有用的應用程序,這些應用程序無法完全卸載,但*在實現中顯然存在錯誤*-從字面上將我的手機變成迷你空間加熱器的意義。
明白了雖然任務殺手方法肯定適用於僅響應電話啟動事件的應用程序,但某些應用程序也會響應其他事件(例如,位置更改,SMS到達,電子郵件,來電,應用程序安裝/卸載等)。對於那些應用程序,任務殺手將在每次加載時永久重新關閉該應用程序。在這種情況下,它可能是一個有用的工具,但請注意它。
“當然,我不會問我是否對任務殺手感到滿意-但要提及的是,我們專門談論的是* startup *應用程序,這意味著目標並不是完全阻止應用程序運行(否則它們將被卸載),只是為了更好地控制它們的運行時間。
我已經更新了答案,希望能澄清一下。我只是看到其他答案中推薦了許多任務殺手,因為這不是您想要的。我對Android來源非常熟悉,並且基本上想在那兒說,除非您的手機紮根,否則所有解決方案都依賴於啟動任務後終止該任務。
您能否啟發我“能夠實際改變廣播意圖向應用程序傳遞方式的應用程序範圍”。請告訴我三個。也許還有一些關鍵字可以搜索其餘的關鍵字。如果您知道的話,添加它們的差異。
#3
+8
Lie Ryan
2010-10-20 06:15:10 UTC
view on stackexchange narkive permalink

Android是專門為資源受限環境設計的操作系統。 Android會智能地管理資源,並在其他應用程序需要使用內存時將其殺死,並在以後恢復它們以恢復服務。與其他一些手機不同,後者通過一次只允許一個正在運行的應用程序犧牲了基本的智能手機功能(如多任務處理)。

關於Android如何確定如何復活應用程序,它主要由Intents決定。當某些事件發生時,應用程序可以註冊以由OS通知。電話啟動,您要輸入的特定位置,wifi開啟等。處理通知(Intent)時,該應用程序(或其部分)可能會恢復。從某種意義上講,從概念上講,在Android中,所有已安裝的應用程序始終始終運行,並且從概念上講,您具有無限的內存。操作系統將根據需要終止並恢復應用程序,以保持這種幻覺。

我討厭討厭的答案...或者實際上根本沒有答案!操作系統不會保持任何幻想,但是會使電話變慢,因為無休止的應用程序一直掛在內存中,並且操作系統不斷被殺死並啟動。 –此問題詢問如何防止應用程序運行。
#4
+7
ale
2010-10-19 20:52:51 UTC
view on stackexchange narkive permalink

您實際上並不需要運行任務殺手。請參閱:我真的需要安裝任務管理器嗎?

Android上的應用程序運行良好。如果某個應用程序正在自動啟動,那是因為它需要啟動。設計良好的應用程序可能會或不一定真正需要自動運行,它們的設置中有一個選項可以將其打開或關閉。

請注意,與您的PC不同,擁有額外的RAM不會提高性能,因此許多。啟動您的常用應用程序時最好將它們放在RAM中,這樣就無需加載它們。在Android上運行很少甚至沒有可用RAM都是一件好事,而OS可以很好地殺死不需要的東西。

嗯,自動啟動的應用程序示例是即時消息客戶端,這使我在不需要時可以上網,而我懷疑同步客戶端會消耗大量電池。
感謝您提供的信息,小的可用RAM是一件好事,+ 1 :)
我見過的每個為您同步的應用程序都允許您修改其同步頻率。減少使用頻率會減少電池消耗。
#5
+3
joweiser
2011-12-09 04:58:18 UTC
view on stackexchange narkive permalink

我建議應用程序自動啟動

它的作用(引用市場說明):

請保持對您的控制phone:查看背後有哪些應用程序。

向您顯示哪些應用程序在電話啟動時運行,以及哪些其他事件在後台觸發。 root用戶可以禁用不需要的自動啟動並加快電話啟動速度。

#6
+1
Irfan
2011-11-26 17:40:29 UTC
view on stackexchange narkive permalink

儘管不是專用的應用程序,但系統調諧器免費應用程序具有禁用“啟動應用程序”的功能。

您可以通過滾動列表來找到該選項。應用程序下面的按鈕,然後選擇“應用程序”,然後選擇“啟動”標籤。

這似乎比其他啟動管理器的執行方式要好得多。

我是不知道它是否像自動任務殺手一樣工作,還是明確需要root用戶(系統調諧器的其他功能實際上可能是要求root用戶的功能)

#7
+1
Riyaz Mohammed Ibrahim
2011-12-02 13:40:20 UTC
view on stackexchange narkive permalink

我懷疑您可以在不紮根手機的情況下解決此問題。但是,如果您準備紮根,則可以嘗試自動運行管理器

這些看起來很有希望,尤其是第二種,因為它明確描述了root的不同行為以及對*所有*觸發事件的控制(不僅僅是系統啟動)。我會盡快嘗試。
#8
-1
Ravi Vyas
2010-09-14 18:02:39 UTC
view on stackexchange narkive permalink

您可以使用“ 啟動清理器”之類的應用程序,也可以使用其他類似應用程序

似乎只是一個任務自動殺手;您可以確認還是否認?
其實我相信是這樣。 :-(
+1用於提供指向工具的鏈接,這些工具至少提供了實現我一直在尋找的東西的機會。


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 2.0許可。
Loading...