Google, ikinci Android Q beta sürümünün GSI'larını yayınladı. Bu sistem görüntüleri, uygulama testi için Project Treble uyumlu cihazlara kurulabilir. İşte nasıl.
Android Q'nun son sürümüne yaklaştıkça, geliştiricilerin uygulamalarını güncelleme süresi de kısalıyor. Android 9 Pie (API düzeyi 28) henüz cihazların büyük çoğunluğuna ulaşmamış olsa da, Google Play'in uygulamanız gereken API düzeyi gereksinimleri zaten iyice farkında olmak, sizi 2020'de API düzeyi 29'u hedeflemeye zorlayacaktır. Uygulamanızı henüz Android 9 Pie'ı hedefleyecek şekilde güncellemediyseniz, Daha sonra Yeni bir uygulamayı piyasaya sürmeyi planlıyorsanız Ağustos ayına kadar, mevcut bir uygulamayı güncellemeyi planlıyorsanız Kasım ayına kadar zamanınız var. Bir sonraki Android sürümünü geliştirmeye başlamak isteyenler için, uygulamanızı halihazırda test edebilirsiniz. Android Studio emülatörü veya eğer sahipseniz fiziksel donanımda herhangi bir Google Pixel akıllı telefon. Ancak bu yıl Google, geliştiricilere uygulamalarını en son Android sürümüne göre test etmeleri için başka bir yol sunuyor:
Android Q beta GSI Project Treble uyumlu bir cihaza.Proje Tiz akıllı telefon cihazı üreticilerinin yazılım ve güvenlik güncellemelerini yayınlama hızını artırmaya yönelik önemli bir girişimdir. Özetle Treble, cihaz üreticilerinin donanımın çalışmasını sağlayan yazılımı işletim sisteminin arkasındaki yazılımdan ayırmasını gerektirir. Bu, cihaz üreticilerinin yeni Android sürümlerini mevcut cihazlarında başlatmasına olanak tanır, böylece mevcut kod tabanlarını yeni Android kaynak kodu sürümünün üstüne taşıma gibi zorlu bir göreve başlayabilirler. CTS'yi tamamlayan, cihaz üreticilerinin cihazlarının Project Treble'ın gereksinimlerini karşıladığını doğrulamak için kullandıkları bir dizi test olan VTS veya Satıcı Test Paketi'dir. Cihaz üreticilerinin test etmesi gereken en önemli kontrollerden biri, Tiz uyumlu bir akıllı telefonun GSI veya Genel Sistem Görüntüsü olarak adlandırılan şeyi önyükleme yeteneğidir. GSI, cihaz üreticilerinin Treble'ı doğru şekilde uygulayıp uygulamadıklarını görmeleri için tasarlanmış, değiştirilmemiş bir AOSP yapısıdır. Ancak OEM'lerin ötesinde Google inanıyor GSI'ların geliştiriciler tarafından Android uygulama uyumluluk testleri için kullanılabileceği.
Örneğin, bir Google Pixel'e sahip değilseniz, uygulamanızın davranışını Google'ın gereksinimlerine en uygun koşullar altında test etmenin tek yolu belgeler, kendinize ait bir Pixel cihazı almanız, Android Studio öykünücüsünü başlatmanız veya bir bulut testine bakmanız içindir. hizmet. Bunların her birinin artıları ve eksileri var, ancak mevcut bir Treble uyumlu cihazınız varsa ve herhangi bir para harcamak istemiyorsanız veya bir emülatörün sınırlamalarıyla uğraşmak istemiyorsanız, neden ona bir GSI tokat atmıyorsunuz? Uygulamanız bir GSI üzerinde çalışıyorsa, o Android sürümünü çalıştıran hemen hemen tüm cihazlarda çalışmalıdır.
Google'ın Android Q GSI'ları yayınlama kararının ardındaki düşünce süreci budur veya en azından biz böyle düşünüyoruz. Android Q'nun kaynak kodu Ağustos ayına kadar mevcut olmayacak, bu nedenle Google'ın resmi GSI ikili dosyaları şu anda Android Q'yu gerçek, Pixel olmayan donanımda test etmenin tek yolu. İşte nasıl başlayabileceğiniz.
Gereksinimler
Android Q beta sürümünü yüklemeyi düşünmeden önce, cihazınızın Project Treble uyumlu olup olmadığını ve önyükleyiciden yanıp sönen sistem görüntülerini kabul edip edemediğini kontrol etmelisiniz.
Gereksinimler:
- Cihazınız MUTLAK bir şeye sahip kilidi açılabilir önyükleyici. ABD'de satılan Snapdragon Samsung akıllı telefonlar, Huawei markalı cihazlar, Honor markalı cihazlar ve HMD Global'in Nokia markalı cihazları ( Nokia 8) burada uygun değildir.
- PC'nizde bulabileceğiniz en son ADB ve Fastboot ikili dosyaları yüklüdür. Burada. Fastboot'un eski sürümleri hatalı flaşlara neden olabilir.
- Cihazınız MUTLAK tanışmak bir Proje Tiz uyumluluğu olarak kabul edilecek aşağıdaki kriterlerden hangisi:
- Cihaz Android 9 Pie ile piyasaya sürüldü. Durum böyleyse bu bölümün sonuna geldikten sonra Tiz uyumluluğunu onaylamayı atlayabilirsiniz.
- Cihaz, Android 8.0 Oreo veya Android 8.1 Oreo ile piyasaya sürüldü ancak VNDK izolasyonu ve kök sistemiyle Android 9 Pie'a güncellendi. Bunu nasıl öğreneceğinizi aşağıdaki bölümde ayrıntılı olarak açıklıyoruz.
Daha ileri gitmeden önce, bir GSI'nın yanıp sönmesinin, kullanıcı verisi bölümünün tamamını silmenizi gerektireceğini belirtmekte fayda var. Bu, cihazın dahili ve harici (/veri/medya) deposundaki tüm fotoğrafları, videoları, müzikleri, belgeleri veya diğer şeyleri kaybedeceğiniz anlamına gelir. Bu nedenle, daha ileri gitmeden önce cihaz dışı bir yedekleme yapmanız önemle tavsiye edilir.
Daha sonra, bu GSI'ların CTS'yi geçmediğini unutmayın; dolayısıyla uygulamanız, CTS profil eşleşmesiyle cihaz bütünlüğünü kontrol etmek için SafetyNet Kanıtlama API'sini kullanıyorsa bu işe yaramaz. Ayrıca, bu yapılar günlük kullanıma yönelik değildir; bu nedenle, Android Q'da zaten belgelenmiş olan hataların yanı sıra bir veya daha fazla temel donanım işlevinin çalışmaması durumunda şaşırmayın. Google, GSI ile ilgili olarak bulabileceğiniz birkaç bilinen sorunu zaten listelemiştir. Burada. Bulduğunuz yeni hatalar bildirilmelidir Burada.
Tiz uyumluluğunun onaylanması
Aşağıdaki komutu çalıştırın:
adbshellgetpropro.treble.enabled
Yanıt ise YANLIŞ, bu durumda cihazınız Project Treble uyumlu değildir ve devam etmemelisiniz. Yanıt ise doğru, o zaman devam etmekte özgürsünüz.
Daha sonra şu komutları çalıştırarak sürümler arası desteği kontrol edin:
adb shell
cat /system/etc/ld.config.28.txt | grep -A 20"\[vendor\]"
Çıktıda bölümü arayın [SATICI]ve ardından bu bölümde şunu arayın: ad alanı.varsayılan.isolated. Bu özelliğin değeri ise doğru, bu durumda cihazınız Android 9 Pie satıcı görüntüsünün üzerinde Android Q GSI'nın başlatılmasını desteklemelidir. Değer ise YANLIŞ, cihazınız yalnızca işletim sisteminin aynı cihaz üstü sürümü için GSI'yı kullanabilir.
Son olarak, cihazınızın, ramdisk'in sistem görüntüsüyle birleştirildiği kök sistem olup olmadığını doğrulamanız gerekir. Android 9 Pie'a yükseltme yapan cihazlar için kök olarak sistem zorunlu değildir, ancak GSI aracılığıyla yeni bir işletim sistemi sürümünün yükseltilmesi durumunda olduğu gibi yalnızca sisteme yönelik bir OTA'yı desteklemek için gereklidir. Aşağıdaki komutları çalıştırın ve çıktının "kök olarak sistem" ile eşleştiğini doğrulayın:
adb shell
cat /proc/mounts | grep -q /dev/root && echo"system-as-root" || echo"non-system-as-root"
Artık cihazınızın Treble uyumlu olduğunu bildiğinize göre, farklı mimariler için farklı görüntüler olduğundan GSI ikili programının hangi sürümünü indireceğinizi bulmanız gerekir. Cihazınızın hangi mimariye sahip olduğunu görmek için aşağıdaki komutu çalıştırın:
adbshellgetpropro.product.cpu.abi
GSI'yi indirirken ihtiyacınız olacağından çıktıyı buraya not edin.
GSI'yi indirme
Android Q beta GSI'nın resmi sürümleri için indirme bağlantıları Google'da mevcuttur Burada. Bir önceki adımda öğrendiğiniz cihazınızın mimarisine göre uygun sürümü indirmelisiniz. Yapıyı GMS veya Google Mobil Hizmetleri ile indirirseniz indirme işlemi oldukça büyük olacaktır; bu, uygulamanızı Google Play Hizmetleri ile bir yapı üzerinde test edebilmeniz için şiddetle tavsiye ettiğimiz bir şeydir.
Dosyanın indirilmesi bittiğinde, onu açabilirsiniz. İçinde iki dosya bulunur, sistem.img, Ve vbmeta.img.
GSI'nin yanıp sönmesi
- Bir düğme kombinasyonunu kullanarak veya şu komutu vererek cihazınızın önyükleyicisini yeniden başlatın:
adb reboot bootloader
- Daha sonra Android Verified Boot'u (AVB) devre dışı bırakmamız gerekiyor. Bunu aşağıdaki komutu girerek yapabilirsiniz:
fastbootflashvbmetavbmeta.img
- Sonra sistem bölümünü silelim:
fastboot erase system
- Sonunda Android Q GSI'yi şununla güncelleyebiliriz:
fastbootflashsystemsystem.img
- Bu işlem tamamlandıktan sonra kullanıcı verileri bölümünü şununla silin:
fastboot -w
- Güç düğmesini kullanarak veya şunu girerek cihazınızı yeniden başlatın:
fastboot reboot
Umarım birkaç dakika sonra açılmalıdır. Bu adımlar Pixel 3 XL'de doğrulanmıştır ancak evrensel olarak çalışması gerekir. Android Q beta 2 GSI'nin OnePlus 6T'de önyükleme yapmadığını ancak Xiaomi Mi 9'da önyükleme yaptığını doğrulayabiliriz. Sony Xperia XZ3'te çalışabilir ancak bize Moto G7'de açılmadığı söylendi. Google'ın gereklilikleri yalnızca aynı işletim sistemi sürümünün GSI uyumluluğunu onayladığından, kat edeceğiniz mesafe farklılık gösterebilir.