Android partition

/system_extPartitions are optional. (This partition is /systemwhere you put non-AOSP components in the partition that are tightly coupled with AOSP-defined components.) /system_extThe partition is considered an /systemOEM-specific extension of the partition, and no interface is defined between the two partitions

  • vendor : Contains all binaries not distributable to the Android Open Source Project (AOSP). If there is no proprietary information, the partition may not be used.
  • product : Used to store product-specific configurations and applications so that OEMs can customize their own systems. This partition is supported on Android 9 and higher. The product partition is an extension of the system partition, and both partitions must be upgraded at the same time.
  • odm : Used for ODM to customize its own board support package. Android 10 starts supporting this partition. The odm partition is an extension of the vendor partition, and both partitions must be upgraded at the same time.

Storage in Android can be divided into two categories: private storage and shared storage

  • Private Storage (Private Storage): Each application has its own private directory, which cannot be seen by other applications and cannot be accessed by each other: internal storage private directory (/data/data/packageName); external storage private directory ( /sdcard/Android/data/packageName),
  • Shared Storage: Stores files accessible by other applications, including media files, document files, and other files, corresponding to device directories such as DCIM, Pictures, Alarms, Music, Notifications, Podcasts, Ringtones, Movies, and Download.

On Android Q, it is not expected that the application continues to access the non-sandbox path. The sandbox path is generally /storage/emulated/${userid}/Android/${dir}/${package}/ under the external storage. Here, the path is divided by the package name, and the application can directly access the data under the sandbox path without permission. Non-sandbox paths are other paths under the external storage, and access is not allowed.

Add permission

MANAGE_EXTERNAL_STORAGE : Similar to the previous READ_EXTERNAL_STORAGE + WRITE_EXTERNAL_STORAGE , except that the application-specific directory can be accessed.

Apps can request a special app access permission called All Files Access from the user by doing the following:

  1. Declare the MANAGE_EXTERNAL_STORAGE permission in the manifest.
  2. Use the ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION intent action to direct the user to a system settings page where they can enable the following option for your app: Grant administrative permissions to all files.
  • If it is listed on Google Play, it is necessary to submit a description of the use of this permission, and only the specified types of APP can be used.

Privileged apps are system apps that are located in a priv-app directory on one of the system image partitions. The partitions used for Android releases are

  • Android 8.1 and lower - /system
  • Android 9 and higher - /system, /product, /vendor

Beginning with Android 8.0, manufacturers must /etc/permissionsexplicitly grant privileged permissions in a system configuration XML file under the directory. Beginning with Android 9, implementers must explicitly grant or deny all privileged permissions, or the device will fail to boot.

Guess you like

Origin blog.csdn.net/iffy1/article/details/128344586