Google正調查手機廠商在殺Android後台進程時過於激進的問題

在過去的幾年裡,Google已經大大改善了Android系統處理後台應用程序的方式。Doze和App Standby Buckets等優化措施有助於將系統資源分配給最需要的應用程序,同時確保濫用的應用程序不會在後台肆意運行。

在很長一段時間裡Android用戶批評iOS積極殺死在後台運行的應用程序的方式。Android手機的多任務處理能力、更大的內存池和更大的電池被作為該平台優越性的例子四處宣揚。然而因為種種原因,一些製造商已經自行採取了更嚴格的措施,甚至可能違背了Google的政策,Google現在想知道這些OEM廠商是誰。

調查表格:

https://docs.google.com/forms/d/e/1FAIpQLSd9P3gLKgMbVwQnAra6UhOjnCWtKpp55kYmigUKo8-ynmvdPg/viewform?resourcekey=0-e65sRbpisoGmtEe_zPZnMg

大多數Android應用可能不需要總是在後台運行,但肯定有一類應用需要。事實上,有一類應用根本就不應該在後台運行,特別是那些意圖不純的應用,如惡意軟件。然而,一些以健康為中心的應用程序可能需要一直運行,但系統可能不會總是讓這些應用程序運行。

當然,後台應用程序雖然帶來了不少便利,但也不是沒有代價的,通常是在CPU佔用和最終帶來的電池續航表現縮短方面。這就是為什麼包括Android在內的平台對哪些應用程序可以這樣做以及何時這麼做設定了規則和限制。Android系統也為例外情況留出了空間,並提供了支持應用程序進入睡眠狀態並再次喚醒的方法。

另一方面,Google也為OEM廠商制定了規則,使其在後台殺應用程序進程的過程透明化,但這就是事情變得有點混亂的地方。一些原始設備製造商在Android系統的基礎上實施他們自己的應用程序殺進程政策,但通常不會讓開發者、更不會讓用戶知道這些。具體就會表現在一些應用程序,如睡眠監測或活動跟蹤應用程序可以在一個手機上運行,在另一個品牌上可能無法正常工作,只是因為後者更積極地殺死了在後台運行的應用程序。

多年來,應用程序開發人員一直在抱怨這種情況,似乎Google終於聽到了他們的請求。有人報告說某些品牌甚至扼殺了重要的Android可訪問性輔助服務(這被視為照顧視障聽障人士等弱勢群體的操作系統基本功能)。早在2018年,AOSP錯誤跟蹤器就創建了一個問題,詳細說明了一部分OEM廠商是如何濫用Android的核心功能,禁止第三方應用程序在後台運行。這個問題充滿了數百名應用開發者的回應,呼應了類似的經歷,敦促Google阻止OEM廠商違反Android系統的合規性,實施如此激進的政策。

dontkillmyapp.jpg

2021年6月8日,一位用戶評論說,小米和一加等OEM廠商甚至殺死了AccessibilityService。作為回應,一名Google員工最近評論說,他們將研究這個問題,並邀請應用程序開發人員提交他們的反饋。

Google要求開發者提供以下細節:

受影響的應用程序的名稱

他們觀察到問題的OEM和設備型號的名稱

Android操作系統版本

重現該問題的步驟,以及預期結果和觀察到的結果

受影響的API

他們是否能夠在Pixel設備(或其他運行相同Android版本的設備)上重現相同的問題。

考慮到這種情況已經持續了多年,這項調查真的是姍姍來遲。正如他們所說,遲到總比不到好。Google甚至不需要親自詢問開發者,因為 “Don’t Kill My App”網站也已經存在多年了,想要從苦手機廠商者久矣的程序員中獲得事實情況並不算困難。

Android資料庫中有關電源管理的章節:

https://developer.android.com/about/versions/pie/power

Android開發社區中投訴OEM廠商殺進程的錯誤跟蹤頁面:

https://issuetracker.google.com/issues/122098785?pli=1#comment155

(0)
上一篇 2021-06-14 11:57
下一篇 2021-06-14 11:57

相关推荐