Yanıp sönen cihazlar

Bu sayfada derlemelerin belirli cihazlarda çalıştırılmasına ilişkin ayrıntılar sağlanır. Bu ayrıntılar Android Oluşturma bölümündeki bilgileri tamamlamaktadır.

Fastboot ve adb oluşturma

Zaten fastboot ve adb yoksa, bunları normal derleme sistemiyle oluşturabilirsiniz. Android Oluşturma bölümündeki talimatları kullanın ve ana make komutunu şununla değiştirin:

make fastboot adb

Android Hata Ayıklama Köprüsü (ADB) ile ilgili ayrıntılar için Android Hata Ayıklama Köprüsü'ne (ADB) bakın.

Fastboot moduna önyükleme

fastboot önyükleyici modundayken bir cihazı flaşlayabilirsiniz. Bir aygıt soğuk önyüklemeye geçtiğinde fastboot moduna girmek için Fastboot tuş birleşimlerinde listelenen tuş birleşimlerini kullanın.

Doğrudan önyükleyiciye yeniden başlatmak için adb reboot bootloader komutunu da kullanabilirsiniz. Talimatların tamamı için Yanıp sönen talimatlara bakın.

Önyükleyicinin kilidini açma

Özel bir sistemi yalnızca önyükleyici izin veriyorsa flaşlayabilirsiniz. Ancak önyükleyicinin varsayılan olarak kilitli olduğunu unutmayın. Önyükleyicinin kilidini açabilirsiniz ancak bunu yaptığınızda gizlilik nedeniyle kullanıcı verileri silinir. Kilidi açtıktan sonra cihazdaki tüm veriler, yani hem özel uygulama verileri hem de USB üzerinden erişilebilen paylaşılan veriler (fotoğraflar ve filmler dahil) silinir. Önyükleyicinin kilidini açmaya çalışmadan önce cihazdaki önemli dosyaları yedekleyin.

Önyükleyicinin kilidini yalnızca bir kez açmanız gerekir ve gerekirse yeniden kilitleyebilirsiniz.

Son cihazların kilidini açma

2014'ten bu yana piyasaya sürülen tüm Nexus ve Pixel cihazlarda (Nexus 6 ve Nexus 9'dan başlayarak) fabrika ayarlarına sıfırlama koruması bulunur ve önyükleyicinin kilidini açmak için çok adımlı bir işlem gerekir.

  1. Cihazda OEM kilit açmayı etkinleştirmek için:
    1. Ayarlar'da Telefon hakkında'ya ve ardından Yapı numarası'na yedi kez dokunun.
    2. Mesajını gördüğünüzde Artık bir geliştiricisiniz! , geri düğmesine dokunun.
    3. Ayarlar'da Sistem'e dokunun, ardından Geliştirici seçenekleri'ne dokunun ve OEM kilit açma ve USB hata ayıklamayı etkinleştirin. ( OEM kilit açma devre dışıysa, cihazın en az bir kez giriş yapabilmesi için internete bağlanın. Devre dışı kalırsa cihazınız operatörünüz tarafından SIM kilitlenmiş olabilir ve önyükleyicinin kilidi açılamayabilir.)
  2. Önyükleyiciyi yeniden başlatın ve kilidini açmak için fastboot kullanın.
    • Daha yeni cihazlar için (2015 ve üzeri):
      fastboot flashing unlock
    • Daha eski cihazlar için (2014 ve öncesi):
      fastboot oem unlock
    İpucu: Yeniden başlatmadan önce "adb devices" çıktısını görüyorsanız ancak fastboot veya flash komut dosyası hatalı çalışıyorsa sorun USB kablonuzda olabilir. Farklı bir bağlantı noktası ve/veya konnektörleri değiştirmeyi deneyin. Bilgisayarınızda USB C bağlantı noktası kullanıyorsanız bunun yerine USB A bağlantı noktasını deneyin.
  3. Kilit açmayı ekrandan onaylayın.

Önyükleyiciyi yeniden kilitleme

Önyükleyiciyi yeniden kilitlemek için:

  • Daha yeni cihazlar için (2015 ve üzeri):
    fastboot flashing lock
  • Daha eski cihazlar için (2014 ve öncesi):
    fastboot oem lock

Flaş kilidi durumlarını kullanma

getFlashLockState() sistem API'si önyükleyici durumunu iletir ve PersistentDataBlockManager.getFlashLockState() sistem API'si uyumlu cihazlarda önyükleyicinin kilit durumunu döndürür.

Geri dönüş değeri Koşullar
FLASH_LOCK_UNKNOWN Yalnızca, yanıp sönen kilitleme/kilit açma özelliğini destekliyorlarsa, flaş kilit durumunu almak için gereken önyükleyici değişikliklerini daha önce desteklemeyen, Android 7.x veya daha yeni bir sürüme yükseltme yapan cihazlar tarafından döndürülür.
  • Android 7.x veya üstünü çalıştıran yeni cihazlar FLASH_LOCK_LOCKED veya FLASH_LOCK_UNLOCKED durumunda olmalıdır.
  • Yanıp sönerek kilit açma/kilitleme özelliğini desteklemeyen, Android 7.x veya daha yeni bir sürüme yükseltilen cihazlar FLASH_LOCK_LOCKED durumunu döndürmelidir.
FLASH_LOCK_LOCKED Yanıp sönerek kilitleme/kilit açmayı desteklemeyen (yani cihaz her zaman kilitlidir) veya yanıp sönerek kilitleme/kilit açmayı destekleyen ve kilitli durumda olan herhangi bir cihaz tarafından döndürülür.
FLASH_LOCK_UNLOCKED Yanıp sönen kilitleme/kilit açmayı destekleyen ve kilit açık durumda olan herhangi bir cihaz tarafından döndürülür.

Üreticiler, kilitli ve kilidi açılmış önyükleyicilere sahip cihazların döndürdüğü değerleri test etmelidir. Örneğin, Android Açık Kaynak Projesi (AOSP), ro.boot.flash.locked önyükleme özelliğine dayalı olarak bir değer döndüren bir referans uygulaması içerir. Örnek kod aşağıdaki dizinlerde bulunur:

  • frameworks/base/services/core/java/com/android/server/PersistentDataBlockService.java
  • frameworks/base/core/java/android/service/persistentdata/PersistentDataBlockManager.java

Bir cihaz yapısı seçme

Önerilen cihaz yapılarına, lunch komutunu hiçbir argüman olmadan çalıştırırken erişilen lunch menüsünden ulaşılabilir. lunch komutu hakkında ek bilgi için bkz. Hedef seçin . Derleme hedeflerinin listesi için bkz. Derleme hedefleri .

Pixel ve Nexus cihazları için fabrika görsellerini ve ikili dosyaları geliştiriciler.google.com adresinden indirebilirsiniz. İndirmeler için Cihaz ikili dosyalarına bakın. Ayrıntılar ve ek kaynaklar için bkz. Özel ikili dosyaların elde edilmesi .

Cihaz Kod adı Yapı yapılandırması
Piksel 7 Pro çita aosp_cheetah-userdebug
Piksel 7 panter aosp_panther-userdebug
Piksel 6 Pro kuzgun aosp_raven-userdebug
Piksel 6 sarıasma aosp_oriole-userdebug
Piksel 5 kızıl yüzgeç aosp_redfin-userdebug
Piksel 4a 5G dikenli çalı aosp_bramble-userdebug
Piksel 4a güneş balığı aosp_sunfish-userdebug
Piksel 4 XL mercan aosp_coral-userdebug
Piksel 4 alev aosp_flame-userdebug
Piksel 3a XL palamut aosp_bonito-userdebug
Piksel 3a sargo aosp_sargo-userdebug
Piksel 3 XL çapraz tarama aosp_crosshatch-userdebug
Piksel 3 Mavi çizgi aosp_blueline-userdebug
Piksel 2 XL taimen aosp_taimen-userdebug
Piksel 2 vaşak aosp_walleye-userdebug
Piksel XL marlin aosp_marlin-userdebug
Piksel yelken balığı aosp_sailfish-userdebug
HiKey yürüyüş hikey-userdebug
Nexus 6P balıkçı aosp_angler-userdebug
Nexus5X boğa başı aosp_bullhead-userdebug
Nexus 6 Şamu aosp_shamu-userdebug
Nexus Oynatıcı fugu aosp_fugu-userdebug
Nexus 9 volantis (pisi balığı) aosp_flounder-userdebug
Nexus 5 (GSM/LTE) çekiç kafalı aosp_hammerhead-userdebug
Nexus 7 (Kablosuz) jilet (flo) aosp_flo-userdebug
Nexus 7 (Mobil) razorg (deb) aosp_deb-userdebug
Nexus10 mantaray (manta) full_manta-userdebug
Nexus4 occam (mako) full_mako-userdebug
Nexus 7 (Kablosuz) nakasi (orfoz) full_grouper-userdebug
Nexus 7 (Mobil) nakasig (tilapya) full_tilapia-userdebug
Galaxy Nexus (GSM/HSPA+) yakju (maguro) full_maguro-userdebug
Galaxy Nexus (Verizon) mysid (toro) √aosp_toro-userdebug
Galaxy Nexus (Deneysel) mysidspr (toroplus) aosp_toroplus-userdebug
Motorola Xoom (ABD Wi-Fi) kanat ışını full_wingray-userdebug
Nexus S soju (crespo) full_crespo-userdebug
Nexus S 4G soju (crespo4g) full_crespo4g-userdebug

Bir cihazın yanıp sönmesi

Tek bir komutla tüm Android sistemini flashlayabilirsiniz; bunu yapmak, flashlanan sistemin kurulu önyükleyici ve radyoyla uyumlu olduğunu doğrular, önyükleme, kurtarma ve sistem bölümlerini birlikte yazar ve ardından sistemi yeniden başlatır. Yanıp sönme aynı zamanda fastboot oem unlock benzer şekilde tüm kullanıcı verilerini de siler.

Bir cihazı flaşlamak için:

  1. Görüntü dosyasını kendi dizinine açın.
  2. ANDROID_PRODUCT_OUT ortam değişkenini 1. adımda kullanılan dizine işaret edecek şekilde ayarlayın.
  3. Önyükleme sırasında uygun tuş kombinasyonunu basılı tutarak veya aşağıdaki komutu kullanarak cihazı fastboot moduna geçirin:
    adb reboot bootloader
  4. Aygıt fastboot moduna geçtikten sonra şunu çalıştırın:
    fastboot flashall -w
    -w seçeneği, aygıttaki /data bölümünü siler; bu, belirli bir cihazın ilk kez yanıp sönmesi için kullanışlıdır ancak bunun dışında gereksizdir.

Yanıp sönen yapılandırmalar

Fastboot talimatları, fastboot-info.txt adı verilen ve $ANDROID_PRODUCT_OUT/* dosyasında bulunan bir yapıda açıklanmıştır. Fastboot'un yürüteceği görevlerin bu .txt belge listesidir ve m fastboot_info aracılığıyla yeniden oluşturulabilir. Bu dosya değiştirilerek özel yanıp sönme mantığı tanıtılabilir

desteklenen komutlar:

  1. flash %s : Belirli bir bölümü flaşlayın. İsteğe bağlı bağımsız değişkenler arasında --slot-other, {filename_path}, --apply-vbmeta bulunur
  2. update-super : Süper bölümü günceller
  3. if-wipe : Eğer silme belirtilmişse koşullu olarak başka bir işlevi çalıştırır
  4. %s sil : Belirli bir bölümü if-wipe -> ile silin (yalnızca birlikte kullanılabilir). if-wipe erase cache

Cihazları fabrika durumuna geri yükleme

Google cihazları için fabrika görsellerine Nexus ve Pixel Cihazlar için Fabrika Görselleri'nden ulaşılabilir. Motorola Xoom'un fabrika görselleri doğrudan Motorola tarafından dağıtılıyor.

İzin reddedildi hatalarını çözme

Çoğu Linux sisteminde varsayılan olarak ayrıcalıksız kullanıcılar USB bağlantı noktalarına erişemez. İzin reddedildi hatası görürseniz Android Studio'nun Geliştirme için cihaz kurma talimatlarına bakın.

ADB zaten çalışıyorsa ve cihaza bağlanamıyorsa, ADB'yi adb kill-server ile durdurabilirsiniz. Bu komut ADB'nin yeni konfigürasyonla yeniden başlatılmasına neden olur.