Uygulamaları Android 11'e taşıma

Android'in her sürümünde, Android'i daha faydalı, daha güvenli ve daha iyi performans gösteren bir platform haline getirmeyi amaçlayan yeni özelliklerin yanı sıra davranış değişiklikleri de sunarız. Birçok durumda uygulamanız kutudan çıktığı anda tam olarak beklendiği gibi çalışır. Diğer durumlarda ise platform değişikliklerine uyum sağlamak için uygulamanızda değişiklik yapmanız gerekebilir.

Kullanıcılar, kaynak kod AOSP'ye (Android Açık Kaynak Projesi) yayınlanır yayınlanmaz yeni platformu almaya başlayabileceğinden, uygulamaların hazır olması, kullanıcılar için beklendiği gibi performans göstermesi ve ideal olarak yeni platformdan en iyi şekilde yararlanmak için yeni özelliklerden ve API'lerden yararlanması önemlidir.

Bu doküman, platform sürüm zaman çizelgesiyle uyumlu bir hazırlık planı oluşturmanıza ve Android 11'de kullanıcılarınıza mükemmel bir deneyim sunmanıza yardımcı olabilecek, tipik geliştirme ve test aşamalarının genel bir görünümünü sunar.

Tipik bir taşıma işlemi, eşzamanlı olarak gerçekleştirilebilecek iki aşamadan oluşur:

  • Uygulama uyumluluğunu sağlama (Android 11'in son sürümüne göre)
  • Yeni platform özelliklerini ve API'leri hedeflemek (son sürümden sonra mümkün olan en kısa sürede)

Bu sayfada, bu aşamaların her birine ilişkin genel adımlar özetlenmektedir. Başlamaya hazır olduğunuzda Android 11'i edinme başlıklı makaleyi okuyun.

Android 11 ile uyumluluğu sağlama

Android'in en son sürümüne güncellenen kullanıcılara mükemmel bir deneyim sunmak için mevcut uygulamanızın işlevselliğini Android 11 ile test etmek önemlidir. Bazı platform değişiklikleri, uygulamanızın davranışını etkileyebilir. Bu nedenle, erken ve ayrıntılı bir şekilde test yapıp ardından uygulamanızda gerekli düzenlemeleri yapmanız önemlidir.

Genellikle uygulamanın targetSdkVersion ayarını değiştirmenize gerek kalmadan uygulamanızı ayarlayabilir ve güncelleme yayınlayabilirsiniz. Benzer şekilde, yeni API'ler kullanmanız veya uygulamanın compileSdkVersion değerini değiştirmeniz gerekmez. Ancak bu durum, uygulamanızın oluşturulma şekline ve kullandığı platform işlevine bağlı olabilir. Aşağıdaki bölümlerde adımlar özetlenmiştir.

Başlamadan önce, targetSdkVersion değerini değiştirmeseniz bile uygulamanızı etkileyebilecek davranış değişikliklerini inceleyin.

Uyumluluk testi yapma

Android 11 ile uyumluluğu test etmek, çoğu durumda uygulamanızı kullanıma sunmaya hazırlanırken yaptığınız test türüne benzer. Bu, temel uygulama kalitesi yönergelerini ve testle ilgili en iyi uygulamaları incelemek için iyi bir zamandır.

Yayınladığınız uygulamayı Android 11 çalıştıran bir cihaza yüklemeniz ve tüm akışları ve işlevleri inceleyerek sorun olup olmadığını kontrol etmeniz yeterlidir. Testinize odaklanmanıza yardımcı olması için Android 11'de kullanıma sunulan ve uygulamanızın işlevini etkileyebilecek ya da uygulamanın kilitlenmesine neden olabilecek davranış değişikliklerini inceleyin. Özellikle, gizlilikle ilgili önemli değişiklikleri incelediğinizden ve değişikliklere uyum sağlamak için uyguladığınız düzeltmeleri test ettiğinizden emin olun.

Ayrıca, kısıtlanmış SDK dışı arayüzlerin kullanımlarını inceleyip test edin ve bunların yerine herkese açık SDK veya NDK eşdeğerlerine geçin. Bu erişimleri vurgulayan logcat uyarılarını izleyin ve bunları programatik olarak yakalamak için StrictMode yöntemini detectNonSdkApiUsage() kullanın.

Son olarak, Android 11'de beklendiği gibi çalıştıklarından ve gizlilik, performans, kullanıcı deneyimi, veri işleme ve izinler için en iyi uygulamalara uyduklarından emin olmak üzere uygulamanızdaki kitaplıkları ve SDK'ları tam olarak test edin. Bir sorunla karşılaşırsanız SDK'yı en son sürüme güncellemeyi deneyin veya yardım için SDK geliştiriciyle iletişime geçin.

Testinizi tamamlayıp gerekli güncellemeleri yaptıktan sonra uyumlu uygulamanızı hemen yayınlamanızı öneririz. Bu sayede kullanıcılarınız uygulamayı erkenden test edebilir ve Android 11'e güncellenen kullanıcılara sorunsuz bir geçiş sunabilirsiniz.

Uygulamanın hedeflemesini güncelleyin ve yeni API'lerle derleyin

Uygulamanızın uyumlu sürümünü daha önce açıklandığı şekilde yayınladıktan sonra, sonraki adım targetSdkVersion dosyasını güncelleyerek ve Android 11'in yeni API'lerinden ve özelliklerinden yararlanarak Android 11 için tam destek eklemektir. Yeni platformu hedeflemeyle ilgili Google Play şartını göz önünde bulundurarak, hazır olduğunuzda bu işlemleri yapabilirsiniz.

Çalışmanızı Android 11'i tam olarak destekleyecek şekilde planlarken Android 11'i hedefleyen uygulamalar için geçerli davranış değişikliklerini incelemek iyi bir başlangıç olacaktır. Bu hedeflenen davranış değişiklikleri, çözmeniz gerekebilecek işlevsel sorunlara neden olabilir. Bazı durumlarda önemli geliştirmeler gerektirebilirler. Bu nedenle, bu değişiklikler hakkında erkenden bilgi edinmeniz önerilir. Etkileri değerlendirmenize yardımcı olması amacıyla, seçili değişiklikler etkin durumdayken mevcut uygulamanızı test etmek için uyumluluk açma/kapatma düğmelerini de kullanabilirsiniz.

Aşağıdaki adımlarda Android 11'in tam olarak nasıl destekleneceği açıklanmaktadır.

SDK'yı alın, hedeflemeyi değiştirin, yeni API'lerle geliştirin

Android 11 desteğini tam olarak kullanmaya başlamak için önce Android 11 SDK'sını (ve gereken diğer araçları) Android Studio'ya indirin. Sonra uygulamanın targetSdkVersion ve compileSdkVersion değerlerini "30" olarak değiştirin ve uygulamayı yeniden derleyin. Ayrıntılar için kurulum kılavuzuna bakın.

Android 11 uygulamanızı test etme

Uygulamayı derleyip Android 11 çalıştıran bir cihaza yükledikten sonra, Android 11'i hedeflediğinde uygulamanın düzgün çalıştığından emin olmak için test yapmaya başlayın. Bazı davranış değişiklikleri yalnızca uygulamanız yeni platformu hedeflediğinde geçerli olduğundan, başlamadan önce bu değişiklikleri incelemeniz gerekir.

Temel uyumluluk testinde olduğu gibi, tüm akışları ve işlevleri inceleyerek sorun olup olmadığını kontrol edin. Testinizi Android 11'i hedefleyen uygulamalarda yapılan davranış değişikliklerine odaklayın. Özellikle gizlilik değişikliklerini incelediğinizden ve değişikliklere uyum sağlamak için uyguladığınız düzeltmeleri test ettiğinizden emin olun. Ayrıca uygulamanızı temel uygulama kalitesi yönergelerine ve test için en iyi uygulamalara göre kontrol etmek de iyi bir zamandır.

Geçerli olabilecek kısıtlanmış SDK dışı arayüzlerin kullanımlarını inceleyip test edin. Bu erişimleri vurgulayan logcat uyarılarını izleyin ve bunları programatik olarak yakalamak için StrictMode yöntemini detectNonSdkApiUsage() kullanın.

Son olarak, Android 11'de beklendiği gibi çalıştıklarından ve gizlilik, performans, kullanıcı deneyimi, veri işleme ve izinler için en iyi uygulamalara uyduklarından emin olmak üzere uygulamanızdaki kitaplıkları ve SDK'ları tam olarak test ettiğinizden emin olun. Bir sorunla karşılaşırsanız SDK'yı en son sürüme güncellemeyi deneyin veya yardım için SDK geliştiriciyle iletişime geçin.

Uygulama uyumluluğu açma/kapatma düğmelerini kullanarak test etme

Android 11, geliştiricilere yönelik olarak uygulamanızı hedeflenen davranış değişiklikleriyle test etmeyi kolaylaştıran yeni bir özellik sunar. Hata ayıklama yapılabilir bir uygulamada açma/kapatma düğmeleri sayesinde şunları yapabilirsiniz:

  • Uygulamanın targetSdkVersion özelliğini değiştirmeden hedeflenen değişiklikleri test edin. Mevcut uygulamanız üzerindeki etkiyi değerlendirmek için belirli hedeflenmiş davranış değişikliklerini zorla etkinleştirmek üzere açma/kapatma düğmelerini kullanabilirsiniz.
  • Testinizde yalnızca belirli değişikliklere odaklanın. Açma/kapatma düğmeleri, hedeflenen tüm değişiklikleri tek seferde ele almak yerine, test etmek istediğiniz değişiklikler dışındaki tüm hedeflenen değişiklikleri devre dışı bırakmanıza olanak tanır.
  • Adb arasındaki açma/kapatmaları yönetin. Otomatik test ortamınızdaki açılabilir değişiklikleri etkinleştirmek ve devre dışı bırakmak için adb komutlarını kullanabilirsiniz.
  • Standart değişiklik kimliklerini kullanarak daha hızlı hata ayıklama Açma/kapatma düğmeli değişikliklerin her birinin, günlük çıkışında temel nedeni hızlıca hata ayıklamak için kullanabileceğiniz benzersiz bir kimliği ve adı vardır.

Uygulamanızın hedeflemesini değiştirmeye hazırlanırken veya Android 11 desteği için aktif geliştirme yaparken açma/kapatma düğmeleri yardımcı olabilir. Daha fazla bilgi için ilgili dokümanları inceleyin.