Üretken Veri Zekası

Android 10'a Geçiş: Çok Tatlı İçtiğinizde

Tarih:


Android 10 çıktı! 🎉

Istikrarlı sürümü Android 10 tarihinde Google tarafından yayınlandı Eylül 3rd, 2019 ve bununla birlikte, Android kullanıcıları için bir dizi yeni özellik geldi. 🥳

Bu makalede, geliştiriciler için yenilikleri ve mevcut uygulamalarını desteklemek için yeni Android 10 özelliklerinden ve API'lerinden nasıl yararlanabileceklerini ve yeni Android işletim sistemine sorunsuz bir şekilde geçiş yapabileceklerini kısaca inceleyeceğiz.

İsmi ne, Android 10?

Fark etmiş olabileceğiniz gibi, Android 10'un adı iyi ... Android 10. Adını genellikle Android sürümleri gibi bir tatlı veya tatlıdan almıştır.

Tatlı isimleri tatlıya düşkünlüğümüzü tatmin ederken, Google bunu rakamlarla basit tutmaya karar verdi, çünkü çoğu zaman, isimler küresel topluluktaki herkes tarafından gerçekten anlaşılmıyordu. Ayrıca, yeni kullanıcılar sürüm sıralarını takip etmekte zorlandılar.

KitKat'tan sonra gelen lolipop değil mi?

"Yani, Lollipop'un iki versiyonu olduğunu mu söylüyorsun?"

"Now-gat veya Noo-jat olarak mı telaffuz ediliyor?"

Bu karışıklığın ardından Google, bundan sonra tüm Android sürümlerinin sadece eski sayılar olacağına karar verdi.

Android 10'deki yenilikler

Android 10'un getirdiği yeni özellikler, API'ler ve değişiklikler hakkında kısaca konuşalım:

5G Ağları

Android10 Taşıma 5g ağı

Android 10, daha düşük gecikme süresiyle süper hızlı bağlantıya sahip olmak için 5G'yi destekler. 5G'nin desteğini geliştiricilere genişletmek için bazı yeni sınıflar da var.

Bu, geliştiricilerin artık bir telefonun 5G bağlantısına sahip olup olmadığını kontrol edebileceği anlamına gelir. TelephonyManager. Genişletilmiş paket özetini bulabilirsiniz okuyun.

5G bağlantısının nasıl kontrol edileceğine dair temel bir kod parçasına bakalım:

 val telephonyManager = context.getSystemService(Context.TELEPHONY_SERVICE) as TelephonyManager // Requires the permission ACCESS_COARSE_LOCATION val cellInfo = telephonyManager.allCellInfo[0] // CellInfoNr is the newly-introduced class for 5G connectivity if (cellInfo is [CellInfoNr](https://developer.android.com/reference/android/telephony/CellInfoNr.html)) { // Device has 5G connectivity doSomething() }

Katlanabilirler ve Çoklu Ekran Desteği

Kaynak: [Android Geliştiricileri] (https://developer.android.com/guide/topics/ui/foldables)Kaynak: Android Geliştiricileri

Android 10, katlanabilir cihazlar ve ikincil ekranlar için daha fazla destek sağlar.

Katlanabilir cihazlar için geliştirme yaparken geliştiriciler, onResume() ve onPause() UI durum değişikliklerini incelikle işleme yöntemleri, Aktivite yaşam döngüsünde Android 10'un katlanabilirler için daha fazla iyileştirme getirdiği iki yöntem.

Android 10 ayrıca, katlanabilir cihazlar satıcıdan satıcıya değişiklik gösterebileceğinden, daha geniş bir ekran en boy oranını da destekler. Uygulamanızı test etmek için ihtiyaç duyduğunuz önerilen en boy oranları listesi:

Kaynak: [Android Geliştiricileri] (https://developer.android.com/guide/topics/ui/foldables)Kaynak: Android Geliştiricileri

Android 9.0'a (Pie) kadar, telefonunuzda yan yana çalışan iki uygulamanız varsa, yalnızca odaktaki uygulama devam durum. Diğer uygulama, durdurulmuş durum. Bu, diğer uygulamada duraklatılmış ve odak dışı olsa bile bir şeyin devam etmesine ihtiyacınız varsa sorunlara neden olabilir.

Android 10 ile, bu meta veri etiketini manifest dosyanızdaki uygulama etiketinin içine ekleyerek diğer uygulamanızın da devam ettirilmiş durumda olduğundan emin olabilirsiniz:

 <application> ... <meta-data android:name="android.allow_multiple_resumed_activities" android:value="true" /> ... </application>

Bu özelliğin adı çoklu özgeçmiş ve devam ettirilmiş durumda birden fazla uygulamanız olabileceği anlamına gelir. Ayrıca, adı verilen yeni bir yaşam döngüsü geri araması getiriyor onTopResumedActivityChanged()hakkında okuyabileceğiniz okuyun.

Android 8.0, birden çok ekran için destek sağladı, ancak Android 10 bunu destekleyerek genişletiyor birden çok ekranda aynı uygulamanın birden çok etkinliği için çoklu özgeçmiş. Yeni eklenen getDisplayContext() geliştiricilerin kaynakları yüklemeleri için geçerli görüntünün Bağlamını sağlayan yöntem.

Çoklu ekran özelliğinin nasıl kullanılacağını okuyabilirsiniz okuyun.

Bildirimler aracılığıyla Akıllı Yanıt

Kaynak: [Android Geliştiricileri] (https://developer.android.com/about/versions/10/highlights)Kaynak: Android Geliştiricileri

Cihazdaki makine öğrenimi modeli, Android 10 ile çalışır ve şunu önerir: bağlamsal eylemler ve akıllı yanıtlar doğrudan bildirimlerin içinde. Bu bağlamsal eylemler, bir metinde aldığınız Google Haritalar aracılığıyla bir konumu açmak gibi diğer uygulamalara yönelik amaçları içerebilir.

Bu, bir geliştirici olarak uygulamanıza almak için gerçekten hiçbir şey yapmanız gerekmeyen gerçekten harika bir özelliktir. Android 10'daki tüm cihazlarda varsayılan olarak yalnızca oradadır.

Ancak bu özelliği devre dışı bırakmak istiyorsanız arayabilirsin setAllowGeneratedReplies(false) sizinle ilgili Notification.Action.Builder, ve setAllowSystemGeneratedContextualActions(false) sizinle ilgili Notification.Builder.

Karanlığı Zorla

Kaynak: [Android Geliştiricileri] (https://developer.android.com/about/versions/10/highlights)Kaynak: Android Geliştiricileri

Android'in önceki sürümlerinde, geliştiricilerin bir DayNight genişleyen tema Theme.AppCompat.DayNight or Theme.MaterialComponents.DayNight Cihazınızda styles.xml dosyası.

Ancak Android 10 ile, karanlık temanız için açık bir stil bile tanımlamanıza gerek kalmadan karanlık bir temayı hemen zorlayabilirsiniz. Bu olarak bilinir Karanlığı Zorla.

Bunu yapmak için, sadece ayarlamanız gerekir forceDarkAllowed için true uygulamanızın temasında:

 <style name="AppTheme" parent="Theme.MaterialComponents.Light.NoActionBar"> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> <item name="android:forceDarkAllowed">true</item> </style>

Ayrıca belirli görünümlerde Karanlığa Zorla özelliğini devre dışı bırakabilir / etkinleştirebilirsiniz:

 myTextView.isForceDarkAllowed = false myOtherTextView.isForceDarkAllowed = true

Uygulamanız zaten karanlık bir tema kullanıyorsa Force Dark'ın çalışmadığını unutmayın (Theme.Material or Theme.AppCompat) veya bir DayNight tema. Ayrıca Force Dark kullanıyorsanız uygulamanızı iyice test ettiğinizden emin olun.

Force Dark hakkında daha fazlasını okuyun okuyun.

Hareketle Gezinme

Hareketle gezinme, iPhone XR ve iPhone XS'de fark etmiş olabileceğiniz bir şey ve Android 10'a da geliyor!

Hareketle gezinme, gezinme çubuğu düğmelerine olan ihtiyacı ortadan kaldırır. Kullanıcılar uygulamayı kapatmak için yukarı kaydırabilir veya önceki ekrana geri dönmek için sağa kaydırabilir. Bu özellikten daha iyi yararlanmak için, aşağıdaki değerleri sayfanızda ayarlamanızı tavsiye ederim. styles.xml Dosya:

 <!-- values-29/styles.xml: --> <style name="AppTheme" parent="..."> <item name="android:navigationBarColor">@android:color/transparent</item> <item name="android:statusBarColor">@android:color/transparent</item> </style>

Uygulamanızı tam ekran modunda düzenlemek için sistem kullanıcı arayüzü görünürlüğünü aşağıdaki gibi ayarlayın:

 window.decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_STABLE or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

Hareket eklerinin nasıl işleneceği hakkında daha fazla bilgi edinin okuyun.

Ayarlar Paneli API'si

Android 10 ile geliştiriciler artık Ayarlar Paneli API'si kullanıcıların İnternet Bağlantısı, NFC, Wi-Fi ve Ses gibi genel ayarlara hızlı erişim sağlamasına olanak tanımak için çalışan uygulamalarının üstünde yüzen bir UI göstermek.

Bunu kullanmak oldukça basittir: Bir Niyet'i yalnızca Ayarlar Paneli API'si:

 val intent = Intent([ACTION_WIFI](https://developer.android.com/reference/android/provider/Settings.Panel.html#ACTION_WIFI)) startActivity(intent)

Bu, kullanıcıların Wi-Fi ayarlarını değiştirmesine izin veren yüzen bir kullanıcı arayüzünü gösterir.

Arka Plan Konum İzni

Android 10'dan başlayarak, uygulamanız arka planda olsa bile kullanıcının konumuna ihtiyaç duyuyorsa, yeni ACCESS_BACKGROUND_LOCATION uygulamanızda izin:

 <manifest ... > <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> **<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />** </manifest>

Normalde diğer tehlikeli izinler için talep ettiğiniz gibi bu izni çalışma sırasında da talep etmelisiniz. Bu izin istendiğinde, kullanıcı aşağıdaki iletişim kutusunu gösterir:

Kaynak: [Android Geliştiricileri] (https://developer.android.com/about/versions/10/highlights)Kaynak: Android Geliştiricileri

Bu, kullanıcıların şunları yapmasına olanak tanır:

  • Uygulamanıza, arka planda bile her zaman konumu kullanma izni verin

  • Uygulamanıza konumu yalnızca uygulama kullanımdayken kullanma izni verin

  • Konum iznini tamamen reddet

Bu konum izni değişiklikleri hakkında daha fazla bilgi edinebilirsiniz okuyun.

Sonuç

Bu, Android 10'daki önemli değişiklikleri ve özellikleri kapsar. Bir dizi başka güvenlik ve davranış değişikliği de vardır.

Uygulamanızı bugün Android 10 uyumlu hale getirin ve kullanıcılarınızı mutlu edin. 😁

Tüm değişiklikler hakkında daha fazla bilgiyi buradan okuyun:

Geliştiriciler için Android 10 | Android Geliştiricileri

Kaynak: https://www.codementor.io/blog/android-10-migrate -7rjkctjfn2

spot_img

En Son İstihbarat

spot_img