Android 9 dan yang lebih tinggi menyertakan dukungan untuk mem-build
  partisi product menggunakan sistem build Android. Sebelumnya,
  Android 8.x menerapkan pemisahan komponen khusus SoC
  dari partisi system ke partisi
  vendor tanpa menyediakan ruang untuk komponen khusus OEM yang di-build dari
  sistem build Android. Android 9 dan yang lebih tinggi menyediakan
  izin
  dan fitur daftar yang diizinkan tambahan yang berlaku untuk aplikasi priv di partisi yang berbeda.
Tentang partisi produk
  Banyak OEM menyesuaikan image sistem AOSP untuk menerapkan fitur mereka sendiri,
  serta persyaratan operator. Namun, penyesuaian tersebut membuat
  satu image sistem tidak dapat digunakan untuk beberapa SKU software. Setiap
  gambar harus berbeda untuk mendukung penyesuaian, seperti dengan
  lokalitas atau operator yang berbeda. Menggunakan
  partisi product terpisah untuk memuat penyesuaian memungkinkan
  penggunaan satu image sistem untuk beberapa SKU software. (Partisi
  system menghosting kode generik yang dapat dibagikan di antara
  banyak SKU software). Partisi vendor terus menghosting
  kode BSP khusus SoC yang dapat dibagikan di antara beberapa
  perangkat berdasarkan SoC tertentu.
  Menggunakan partisi terpisah memiliki beberapa kelemahan, seperti
  mengelola ruang disk (jumlah ruang yang terbatas harus tetap dicadangkan untuk
  pertumbuhan di masa mendatang) dan mempertahankan
  antarmuka biner aplikasi (ABI) yang stabil di antara partisi. Sebelum
  memutuskan untuk menggunakan partisi product, luangkan waktu untuk mempertimbangkan
  implementasi AOSP unik dan kemungkinan taktik mitigasi (seperti
  mempartisi ulang perangkat selama update over-the-air
  (OTA), yang tidak dilakukan oleh Google, tetapi dilakukan oleh beberapa OEM).
  Pembagian dinamis adalah
  solusi yang baik untuk hal ini.
Partisi dan izin produk
  Di Android 9 dan yang lebih baru, perubahan pada izin
  dan proses daftar yang diizinkan memengaruhi cara Anda memberikan izin priv-apps di
  partisi `produk`. File permissions.xml
  harus berada di partisi yang sama dengan priv-apps. Menempatkan
  file permissions.xml di partisi system
  untuk aplikasi dengan hak istimewa tidak memperluas izin tersebut ke aplikasi dengan hak istimewa di
  partisi product, meskipun yang pertama adalah ekstensi dari yang kedua.
  Untuk mengetahui detail tentang izin dan proses daftar yang diizinkan, lihat
  Daftar yang Diizinkan untuk Izin dengan Hak Istimewa.
/oem lama versus /product
  Kami memiliki dua jenis atribut partisi product, bergantung
  pada penerapan
  antarmuka produk. Selain itu, partisi product berbeda
  dengan partisi oem lama:
| Partisi | Atribut | 
|---|---|
| oem | 
 | 
| product | 
 | 
| product(antarmuka yang diterapkan) | 
 | 
  Karena alasan ini, Android 9 mendukung partisi product sekaligus
  mempertahankan dukungan untuk partisi oem lama, untuk perangkat yang bergantung
  padanya. Untuk memisahkan partisi product dari
  partisi system, Android 11 mendukung
  menerapkan antarmuka
  product.
/product components
  Partisi product berisi komponen berikut:
- Properti sistem khusus produk (/product/build.prop)
- RRO spesifik per produk (/product/overlay/*.apk)
- Aplikasi khusus produk (/product/app/*.apk)
- Aplikasi priv khusus produk (/product/priv-app/*.apk)
- Library khusus produk (/product/lib/*)
- Library java khusus produk (/product/framework/*.jar)
- Konfigurasi sistem Framework Android khusus produk
  (/product/etc/sysconfig/*dan/product/etc/permissions/*)
- File media khusus produk (/product/media/audio/*)
- File bootanimationkhusus produk
Tidak ada custom_images
  Anda tidak dapat menggunakan custom_images. Fitur ini tidak mendukung hal berikut:
- Menginstal modul ke target tertentu.
  custom_imagesmendukung penyalinan artefak ke dalam image, tetapi tidak dapat menginstal modul ke partisi tertentu dengan menentukan partisi targetnya sebagai bagian dari aturan build.
- Dukungan Soong. custom_imagestidak dapat di-build menggunakan sistem build Soong.
- Dukungan update OTA. custom_imagesdigunakan sebagai image ROM bawaan yang tidak dapat menerima update OTA.
Mempertahankan ABI di antara partisi
  Partisi product di Android 9 adalah ekstensi dari
  partisi system. Ada ABI yang lemah antara
  partisi product dan system, sehingga keduanya harus
  diupgrade secara bersamaan, dan ABI harus berbasis SDK sistem. Jika
  SDK sistem tidak mencakup semua platform API antara product dan
  system, OEM harus mempertahankan ABI mereka sendiri di antara
  kedua partisi.
Partisi product dan system dapat saling bergantung. Namun, pengujian dengan
  Generic System Image (GSI)
  harus berfungsi dengan baik tanpa partisi product.
  Saat antarmuka product diterapkan, partisi product
  akan dipisahkan dengan partisi system. Partisi product
  hanya menggunakan antarmuka yang diizinkan dari partisi system.
Partisi product tidak boleh memiliki dependensi apa pun melalui antarmuka yang tidak stabil pada
  partisi vendor. Interaksi langsung antara
  partisi product dan vendor dilarang.
  (Hal ini diterapkan oleh SEpolicy.)
Menerapkan pemisahan produk
  Sebelum menerapkan partisi produk baru, tinjau
  perubahan
  partisi produk terkait di AOSP. Kemudian, untuk menyiapkan product,
  sertakan flag build produk atau board berikut:
- BOARD_USES_PRODUCTIMAGE
- BOARD_PRODUCTIMAGE_PARTITION_SIZE
- BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE
- PRODUCT_PRODUCT_PROPERTIESuntuk- /product/build.prop. Nilai ini harus berada dalam- $(call inherit-product path/to/device.mk), seperti dalam- PRODUCT_PRODUCT_PROPERTIES += product.abc=ok.
Menginstal modul ke partisi produk
  Gunakan flag build berikut untuk menginstal modul ke partisi product.
- product_specific: truedalam- Android.bp
- LOCAL_PRODUCT_MODULE := truedalam- Android.mk
Mengaktifkan Booting Terverifikasi
  Untuk mencegah partisi product diubah oleh
  software berbahaya, aktifkan
  Android
  Verified Boot (AVB) untuk partisi tersebut (seperti yang Anda lakukan untuk
  partisi vendor dan system). Untuk mengaktifkan AVB,
  sertakan flag build berikut:
  BOARD_AVB_PRODUCT_ADD_HASHTREE_FOOTER_ARGS.
