دستگاه‌های Pixel 8 را با پشتیبانی ۱۶ کیلوبایت بسازید و فلش کنید

این صفحه نحوه ساخت Pixel 8، Pixel 8 Pro و Pixel 8a را با پشتیبانی 16 کیلوبایت نشان می دهد.

همگام سازی و ساخت AOSP

برای همگام سازی و ساخت AOSP:

  1. مخزن AOSP را بررسی کنید:

     $ mkdir ~/aosp_main && cd ~/aosp_main
     $ repo init -u https://android.googlesource.com/platform/manifest -b main
     $ repo sync -c -j$(nproc)
    
  2. منبع اسکریپت envsetup.sh برای تنظیم محیط ساخت خود:

     $ source build/envsetup.sh
    
  3. یکی از سه هدف را برای دستگاه‌های Pixel 8 انتخاب کنید:

    • aosp_husky_pgagnostic-trunk_staging-userdebug برای Pixel 8 Pro
    • aosp_shiba_pgagnostic-trunk_staging-userdebug برای پیکسل 8
    • aosp_akita_16k-trunk_staging-userdebug برای Pixel 8a
     $ lunch target
    
  4. کد را بسازید:

     $ m -j$(nproc)
    

    این تصاویر پس از اتمام ساخت تولید می شوند:

     $ ls out/target/product/<husky|shiba|akita>/*.img
    out/target/product/husky/boot.img          out/target/product/husky/vbmeta.img
    out/target/product/husky/dtb.img           out/target/product/husky/vbmeta_system.img
    out/target/product/husky/dtbo.img          out/target/product/husky/vendor-bootconfig.img
    out/target/product/husky/init_boot.img     out/target/product/husky/vendor_boot-debug.img
    out/target/product/husky/product.img       out/target/product/husky/vendor_boot.img
    out/target/product/husky/pvmfw.img         out/target/product/husky/vendor_boot-test-harness.img
    out/target/product/husky/ramdisk.img       out/target/product/husky/vendor.img
    out/target/product/husky/super_empty.img   out/target/product/husky/vendor_kernel_boot.img
    out/target/product/husky/system_dlkm.img   out/target/product/husky/vendor_kernel_ramdisk.img
    out/target/product/husky/system_ext.img    out/target/product/husky/vendor_ramdisk-debug.img
    out/target/product/husky/system.img        out/target/product/husky/vendor_ramdisk.img
    out/target/product/husky/system_other.img  out/target/product/husky/vendor_ramdisk-test-harness.img
    out/target/product/husky/userdata.img
    

همگام سازی و ساخت هسته

  1. یکی از این هسته های 6.1 را انتخاب کنید:

    • android-gs-shusky-6.1-android15-qpr2-beta برای دستگاه های Pixel 8 و Pixel 8 Pro
    • android-gs-akita-6.1-android15-qpr2-beta برای دستگاه Pixel 8a
  2. همگام سازی هسته:

    # Sync the kernel.
    $ mkdir ~/android-gs-shusky-6.1
    $ cd ~/android-gs-shusky-6.1
    $ repo init -u https://android.googlesource.com/kernel/manifest -b kernel
    $ repo sync -c -j6
    
  3. ساخت هسته:

    • برای ساخت هسته پیکسل 8 یا پیکسل 8 پرو، از موارد زیر استفاده کنید:

      $ ./tools/bazel run \
          --config=shusky \
          //private/devices/google/shusky:zuma_shusky_dist \
          --config=16k
      
      [dist] INFO: Copying to ~/android14-gs-pixel-6.1/out/shusky/dist
      
    • برای ساخت هسته Pixel 8a، از این موارد استفاده کنید:

      $ ./tools/bazel run \
          --config=akita \
          //private/devices/google/akita:zuma_akita_dist \
          --confige=16k
      
      [dist] INFO: Copying to ~/android14-gs-pixel-6.1/out/akita/dist
      

دانلود تصاویر فروشنده

مخزن AOSP حاوی تصاویر فروشنده نیست که برای بوت کردن دستگاه لازم است. می توانید تصاویر را از ci.android.com دانلود کنید:

  1. به ci.android.com/git_aosp-main-with-phones-throttled بروید.

  2. ساختی را انتخاب کنید که با رنگ سبز مشخص شده و مطابق با دستگاه شما است:

    • برای Pixel 8 Pro، روی aosp_husky_pgagnostic کلیک کنید.

    • برای Pixel 8، روی aosp_shiba_pgagnostic کلیک کنید.

    • برای Pixel 8a، روی aosp_akita_16k کلیک کنید.

    تب Artifacts در پایین صفحه ظاهر می شود.

  3. روی Artifacts کلیک کنید. مصنوعات دستگاه شما فهرست شده است.

  4. برای دانلود آرتیفکت، روی فایلی که به .sh ختم می شود کلیک کنید.

  5. از داخل دایرکتوری که فایل در آن دانلود شده است، دستور زیر را برای استخراج محتوا اجرا کنید:

     $ cd ~/Downloads
     $ chmod +x aosp_<selected target>-flashable-<build id>-with-license.sh
     ./aosp_<selected target>-flashable-<build id>-with-license.sh
    
    # After reading the license, type
    Type "I ACCEPT" if you agree to the terms of the license:  I ACCEPT
    
    # The extracted file will be in the current directory
     $ ls
    aosp_<selected_target>-flashable-with-license.zip
    
    # unzip that file in a directory named aosp_vendor
     $ unzip aosp_<selected_target>-flashable-with-license.zip -d aosp_vendor
    
    # The content of the directory will look like:
     $ ls aosp_vendor
    android-info.txt  init_boot.img  super_empty.img  system_other.img   vbmeta_vendor.img  vendor_kernel_boot.img
    boot.img          product.img    system_dlkm.img  userdata.img       vendor_boot.img
    bootloader.img    pvmfw.img      system_ext.img   vbmeta.img         vendor_dlkm.img
    dtbo.img          radio.img      system.img       vbmeta_system.img  vendor.img
    

تصاویر را در دایرکتوری موقت کپی کنید

تصاویر AOSP، هسته و فروشنده را به ترتیب زیر در یک فهرست کپی کنید:

 $ mkdir ~/images && cd ~/images

# Copy AOSP generated images
 $ cp ~/aosp_main/out/target/product/<akita|husky|shiba>/*.img  ./images

# Copy kernel generated images
 $ cp ~/android-gs-shusky-6.1/out/<akita|shusky>/dist ./images

# Copy the vendor images
 $ cp ~/Downloads/aosp_vendor/vendor.img  ./images
 $ cp ~/Downloads/aosp_vendor/vbmeta_vendor.img ./images

تصاویر فلش

برای فلش کردن تصاویر مراحل زیر را دنبال کنید:

  1. تصاویر پارتیشن پویا را فلش کنید:

     $ IMGS_DIR=~/images
    
     $ adb reboot fastboot
    
     $ fastboot flash product $IMGS_DIR/product.img
     $ fastboot flash system $IMGS_DIR/system.img
     $ fastboot flash system_ext $IMGS_DIR/system_ext.img
     $ fastboot flash system_dlkm $IMGS_DIR/system_dlkm.img
     $ fastboot flash vendor $IMGS_DIR/vendor.img
     $ fastboot flash vendor_dlkm $IMGS_DIR/vendor_dlkm.img
    
  2. تصاویر کرنل را فلش کنید:

     $ fastboot reboot bootloader
    
     # Wipe out /data partition
     $ fastboot -w
    
     # Disable pkvm
     $ fastboot oem pkvm disable
    
     $ fastboot flash boot $IMGS_DIR/boot.img
     $ fastboot flash init_boot $IMGS_DIR/init_boot.img
     $ fastboot flash dtbo $IMGS_DIR/dtbo.img
     $ fastboot flash vendor_kernel_boot $IMGS_DIR/vendor_kernel_boot.img
     $ fastboot flash pvmfw $IMGS_DIR/pvmfw.img
     $ fastboot flash vendor_boot $IMGS_DIR/vendor_boot.img
    
     $ fastboot flash --disable-verity --disable-verification vbmeta $IMGS_DIR/vbmeta.img
     $ fastboot flash --disable-verity --disable-verification vbmeta_system $IMGS_DIR/vbmeta_system.img
     $ fastboot flash --disable-verity --disable-verification vbmeta_vendor $IMGS_DIR/vbmeta_vendor.img
    
  3. دکمه پاور را فشار دهید تا دستگاه بوت شود.

  4. اندازه صفحه را با:

     $ adb shell getconf PAGE_SIZE
    16384