Android'in en son sürümleri genellikle uygulamanız için mükemmel API'ler sunsa da daha fazla cihaz güncellenene kadar Android'in eski sürümlerini desteklemeye devam etmeniz gerekir. Bu Bu ders, eski API'leri desteklemeye devam ederken en yeni API'lerden nasıl yararlanacağınızı gösterir versiyonları da var.
Etkin projelerin dağılımını bulmak için Android Studio Yeni Proje sihirbazını Android'in her sürümünü çalıştıran cihazlar. Bu dağılım, Google Play Store'u ziyaret eden cihazların sayısına göre belirlenir. Genel olarak, etkin cihazların yaklaşık% 90'ını desteklemenizi öneririz. en yeni sürüme hedeflersiniz.
İpucu: Çeşitli Android sürümlerinde en iyi özellikleri ve işlevleri sunmak için uygulamanızda Android Destek Kitaplığı'nı kullanmanız gerekir. Bu kitaplık, eski sürümlerde çeşitli yeni platform API'lerini kullanmanıza olanak tanır.
Minimum ve hedef API düzeylerini belirtin
AndroidManifest.xml dosyası
uygulamanızla ilgili ayrıntıları açıklıyor ve
desteklediği Android sürümlerini tanımlar. Daha ayrıntılı olarak belirtmek gerekirse, minSdkVersion
ve <uses-sdk>
öğesi için targetSdkVersion
özellikleri
Uygulamanızın uyumlu olduğu en düşük API düzeyini ve kendisine göre en yüksek API düzeyini belirleme
temel bilgileri ve araçları
kullanabilirsiniz.
Örnek:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" ... > <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="15" /> ... </manifest>
Android'in yeni sürümleri kullanıma sunuldukça bazı stiller ve davranışlar değişebilir.
Uygulamanızın bu değişikliklerden yararlanmasını sağlamak ve
her kullanıcının cihazına göre
targetSdkVersion
değerini en son Android sürümüyle eşleşecek şekilde güncelleyin.
kullanılabilir.
Çalışma zamanında sistem sürümünü kontrol et
Android, Build
içindeki her platform sürümü için benzersiz bir kod sağlar.
sabit değerler sınıfıdır. Uygulamanızın içinde bu kodları kullanın, böylece kodun
yalnızca bu API'ler sistemde kullanılabilir olduğunda yürütülür.
Kotlin
private fun setUpActionBar() { // Make sure we're running on Honeycomb or higher to use ActionBar APIs if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { actionBar.setDisplayHomeAsUpEnabled(true) } }
Java
private void setUpActionBar() { // Make sure we're running on Honeycomb or higher to use ActionBar APIs if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { ActionBar actionBar = getActionBar(); actionBar.setDisplayHomeAsUpEnabled(true); } }
Not: Android, XML kaynaklarını ayrıştırırken mevcut cihaz tarafından desteklenmeyen XML özelliklerini yoksayar. Bu sayede, yalnızca yeni sürümler tarafından desteklenen XML özelliklerini, bu koda rastladıklarında eski sürümlerin bozulacağından endişelenmeden güvenle kullanabilirsiniz. Örneğin, targetSdkVersion="11"
değerini ayarlarsanız uygulamanız Android 3.0 ve sonraki sürümlerde varsayılan olarak ActionBar
değerini içerir. Ardından, işlem çubuğuna menü öğeleri eklemek için menü kaynağı XML'inizde android:showAsAction="ifRoom"
değerini ayarlamanız gerekir. Bu işlemi güvenli bir şekilde yapabilirsiniz
çünkü Android'in eski sürümleri yalnızca
showAsAction
özellik (yani, sizin sizin
res/menu-v11/
dilindedir).
Platform stillerini ve temalarını kullanın
Android, uygulamalara kullanıcı deneyimi ve kullanıcı deneyimi temalarında temel bir işletim sistemidir. Bu temalar, manifest dosyası içinde uygulamanıza uygulanabilir. Bu yerleşik stil ve temaları kullandığınızda uygulamanız doğal olarak her yeni sürümde Android'in en yeni görünümünü ve tarzını takip eder.
Etkinliğinizi iletişim kutusu gibi göstermek için:
<activity android:theme="@android:style/Theme.Dialog">
Etkinliğinizin şeffaf bir arka plana sahip olması için:
<activity android:theme="@android:style/Theme.Translucent">
/res/values/styles.xml
içinde tanımlanan kendi özel temanızı uygulamak için:
<activity android:theme="@style/CustomTheme">
Uygulamanızın tamamına (tüm etkinlikler) tema uygulamak için android:theme
özelliğini <application>
öğesine ekleyin:
<application android:theme="@style/CustomTheme">
Tema oluşturma ve kullanma hakkında daha fazla bilgi için Stiller ve Temalar kılavuzunu okuyun.