Android: Difference between revisions
m -cat |
m →Android 17 restricts how pre-installed apps are disabled (2026): Added archive link. |
||
| (5 intermediate revisions by 2 users not shown) | |||
| Line 57: | Line 57: | ||
===ADB restrictions=== | ===ADB restrictions=== | ||
Google has been adding more restrictions to what <code>[[wikipedia:Android_Debug_Bridge|adb]]</code> can access.{{Citation needed|reason= | Google has been adding more restrictions to what <code>[[wikipedia:Android_Debug_Bridge|adb]]</code> can access.{{Citation needed|reason=''When?''|date=18 May 2026}} For instance, if an app is not [https://developer.android.com/privacy-and-security/risks/android-debuggable debuggable], the user [[Data lock-in|cannot read any files in the app's data folder]]. Aside from transparency concerns, this makes full backups impossible, unless the app provides a way to export data. Google and many OEMs provide their own (proprietary) full-backup mechanisms, but those typically [[Forced account|require accounts]] and [[Forced cloud|cloud connections]]. Even if the app has <code>[https://developer.android.com/guide/topics/manifest/application-element#allowbackup allowBackup]</code> enabled, Android 12 forbids backup-restore via ADB unless it's a device-to-device transfer.<ref>{{Cite web |author= |title=Behavior changes: Apps targeting Android 12 |url=https://developer.android.com/about/versions/12/behavior-changes-12#backup-restore |website=Android |date= |access-date=6 Jul 2026 |url-status=live |archive-url=https://web.archive.org/web/20260521051408/https://developer.android.com/about/versions/12/behavior-changes-12#backup-restore |archive-date=21 May 2026}}</ref> However, there is a workaround.<ref>{{Cite web |author=mrrfv |title=Open Android Backup |url=https://github.com/mrrfv/open-android-backup |website=[[GitHub]] |date=26 Dec 2021 |access-date=6 Jul 2026 |url-status=live |archive-url=https://web.archive.org/web/20260704113646/https://github.com/mrrfv/open-android-backup |archive-date=4 Jul 2026}}</ref> | ||
Many other restrictions break standard {{Wplink|POSIX}} and {{Wplink|Linux}} APIs, such as [[wikipedia:Sysfs|reading device temperature from special files]]. The Android API provides some "official" alternatives to those interfaces, such as the <code>BATTERY_CHANGED</code> broadcast which any app can use to get info about the current state of the battery.{{Citation needed|date=6 July 2026}} | |||
===Android Cast restricted to Google-signed receivers=== | ===Android Cast restricted to Google-signed receivers=== | ||
| Line 70: | Line 72: | ||
Google is releasing Android 16 QPR1 update for Pixel devices on September 3, 2025, normally AOSP will get QPR1 update in 24-48 hours after Pixel devices. But until now, there still no QPR1 update for AOSP. Google later told Android Authority said they will release the source code "in the coming weeks." But they doesn't explain why they delaying QPR1 update for AOSP 16<ref>{{Cite web |last=Mishaal |first=Rahman |title=Android 16 QPR1’s source code is nowhere to be found, but Google swears it’s coming |url=https://www.androidauthority.com/android-16-qpr1-source-code-delay-3596650/ |website=Android Authority |date=10 Sep 2025 |access-date=18 Oct 2025 |url-status=live |archive-url=https://web.archive.org/web/20250911142548/https://www.androidauthority.com/android-16-qpr1-source-code-delay-3596650/ |archive-date=11 Sep 2025}}</ref> | Google is releasing Android 16 QPR1 update for Pixel devices on September 3, 2025, normally AOSP will get QPR1 update in 24-48 hours after Pixel devices. But until now, there still no QPR1 update for AOSP. Google later told Android Authority said they will release the source code "in the coming weeks." But they doesn't explain why they delaying QPR1 update for AOSP 16<ref>{{Cite web |last=Mishaal |first=Rahman |title=Android 16 QPR1’s source code is nowhere to be found, but Google swears it’s coming |url=https://www.androidauthority.com/android-16-qpr1-source-code-delay-3596650/ |website=Android Authority |date=10 Sep 2025 |access-date=18 Oct 2025 |url-status=live |archive-url=https://web.archive.org/web/20250911142548/https://www.androidauthority.com/android-16-qpr1-source-code-delay-3596650/ |archive-date=11 Sep 2025}}</ref> | ||
Update : Google is now releasing QPR1 update for AOSP 16 after 2 months delay<ref>{{Cite web |last=Mishaal |first=Rahman |title=The wait is over: Android 16 QPR1's source code is now available on AOSP |url=https://www.androidauthority.com/android-16-qpr1-source-code-available-3614853/ |website=Android Authority |date=12 Nov 2025 |access-date=12 Nov 2025 |url-status=live |archive-url=https://web.archive.org/web/20251112032612/https://www.androidauthority.com/android-16-qpr1-source-code-available-3614853/ |archive-date=12 Nov 2025}}</ref> | Update: Google is now releasing QPR1 update for AOSP 16 after 2 months delay<ref>{{Cite web |last=Mishaal |first=Rahman |title=The wait is over: Android 16 QPR1's source code is now available on AOSP |url=https://www.androidauthority.com/android-16-qpr1-source-code-available-3614853/ |website=Android Authority |date=12 Nov 2025 |access-date=12 Nov 2025 |url-status=live |archive-url=https://web.archive.org/web/20251112032612/https://www.androidauthority.com/android-16-qpr1-source-code-available-3614853/ |archive-date=12 Nov 2025}}</ref> | ||
===Android 17 restricts how pre-installed apps are disabled (''2026'')=== | |||
{{OngoingEvent}} | |||
Since Android 17, the command <code>adb shell pm uninstall --user 0</code> fails to disable ''any'' pre-installed package, regardless of how much the system depends on it (for instance, not even the Google Calculator can be disabled).<ref>{{Cite web |author= |title=PackageManagerShellCommand.java |url=https://cs.android.com/android/platform/superproject/+/android-latest-release:frameworks/base/services/core/java/com/android/server/pm/PackageManagerShellCommand.java;l=2283-2293;drc=b2b726fd471b63c7e1804866f1edefb995ddbc1c |website=Android Code Search |date= |access-date=6 Jul 2026 |url-status=live |archive-url=https://megalodon.jp/2026-0707-1245-00/https://cs.android.com:443/android/platform/superproject/+/android-latest-release:frameworks/base/services/core/java/com/android/server/pm/PackageManagerShellCommand.java;l=2283-2293;drc=b2b726fd471b63c7e1804866f1edefb995ddbc1c |archive-date=7 Jul 2026}}</ref> <code>adb shell pm disable-user --user 0</code> is still allowed, for now. | |||
This is a problem because it limits how users can neutralize [[bloatware]]. | |||
==References== | ==References== | ||
{{Reflist}} | {{Reflist}} | ||
[[Category:{{PAGENAME}}| ]] | [[Category:{{PAGENAME}}|Category:<nowiki>{{PAGENAME}}</nowiki>]] | ||