इस पेज पर, Pixel 8, Pixel 8 Pro, और Pixel 8a के लिए, 16 KB के साथ बने ऐप्लिकेशन बनाने का तरीका बताया गया है.
AOSP को सिंक और बिल्ड करना
AOSP को सिंक और बिल्ड करने के लिए:
AOSP रिपॉज़िटरी देखें:
$ mkdir ~/aosp_main && cd ~/aosp_main $ repo init -u https://android.googlesource.com/platform/manifest -b main $ repo sync -c -j$(nproc)
अपना बिल्ड एनवायरमेंट सेट अप करने के लिए,
envsetup.sh
स्क्रिप्ट का सोर्स बनाएं:$ source build/envsetup.sh
Pixel 8 डिवाइसों के लिए, इन तीन में से कोई एक टारगेट चुनें:
aosp_husky_pgagnostic-trunk_staging-userdebug
for Pixel 8 Pro- Pixel 8 के लिए
aosp_shiba_pgagnostic-trunk_staging-userdebug
aosp_akita_16k-trunk_staging-userdebug
Pixel 8a के लिए
$ lunch target
कोड बनाएं:
$ 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
सिंक करना और कर्नेल बनाना
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 डिवाइस के लिए
कर्नेल सिंक करना:
# 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
कर्नेल बनाएं:
Pixel 8 या Pixel 8 Pro के लिए कर्नेल बनाने के लिए, इनका इस्तेमाल करें:
$ ./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
से इमेज डाउनलोड की जा सकती हैं:
हरे रंग में हाइलाइट किया गया वह बिल्ड चुनें जो आपके डिवाइस के हिसाब से हो:
Pixel 8 Pro के लिए,
aosp_husky_pgagnostic
पर क्लिक करें.Pixel 8 के लिए,
aosp_shiba_pgagnostic
पर क्लिक करें.Pixel 8a के लिए,
aosp_akita_16k
पर क्लिक करें.
आर्टफ़ैक्ट टैब, पेज पर सबसे नीचे दिखता है.
आर्टफ़ैक्ट पर क्लिक करें. आपके डिवाइस के आर्टफ़ैक्ट की सूची दिखेगी.
आर्टफ़ैक्ट डाउनलोड करने के लिए,
.sh
पर खत्म होने वाली फ़ाइल पर क्लिक करें.कॉन्टेंट को निकालने के लिए, उस डायरेक्ट्री में जाकर यह कमांड चलाएं जहां फ़ाइल डाउनलोड की गई थी:
$ 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, kernel, और वेंडर इमेज को इस क्रम में किसी डायरेक्ट्री में कॉपी करें:
$ 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
फ़्लैश इमेज
इमेज फ़्लैश करने के लिए, यह तरीका अपनाएं:
डाइनैमिक पार्टीशन की इमेज फ़्लैश करें:
$ 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
कर्नेल इमेज फ़्लैश करें:
$ 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
डिवाइस को बूट करने के लिए, पावर बटन दबाएं.
पेज का साइज़ देखने के लिए:
$ adb shell getconf PAGE_SIZE 16384