Her sürümle birlikte belirli Android API'leri eskiyebilir veya daha iyi bir geliştirici deneyimi sunmak ya da yeni platform özelliklerini desteklemek için yeniden düzenlenmesi gerekebilir. Bu durumlarda Android, eski API'leri resmi olarak kullanımdan kaldıracak ve geliştiricileri bunun yerine kullanılacak yeni API'lere yönlendirecektir.
Desteğin sonlandırılması, API'ler için resmi desteği sona erdirdiğimiz ancak API'lerin geliştiricilerin kullanımına devam edeceği anlamına gelir. Bu sayfada, Android'in bu sürümündeki kullanımdan kaldırılanların bazıları vurgulanmaktadır. Diğer kullanımdan kaldırma işlemlerini görmek için API farkları raporuna bakın.
RenderScript
RenderScript API'leri, Android 12'den itibaren kullanımdan kaldırılmıştır. Bu mülkler çalışmaya devam edecektir, ancak cihaz ve bileşen üreticilerinin zaman içinde donanım hızlandırma desteği vermeyi bırakmasını bekliyoruz. GPU hızlandırmasından tam olarak yararlanmak için RenderScript'ten başka bir yere geçiş yapmanızı öneririz.
Android şarkı listeleri
Android oynatma listeleri kullanımdan kaldırılmıştır. API artık desteklenmiyor ancak şu anki işlevsellik uyumluluk için korunuyor.
Oynatma listelerini m3u dosyaları olarak okuyup kaydetmenizi öneririz.
Display API'nin kullanımdan kaldırılması
Android cihazlar büyük ekranlar, tabletler ve katlanabilir cihazlar gibi
pek çok farklı form faktöründe kullanılabilir hale geliyor. Uygulamanızın, içeriği her cihaza uygun şekilde
oluşturmak için ekran veya görüntü boyutunu belirlemesi gerekir. Android zaman içinde bu bilgilerin alınması için farklı API'ler sağladı. Android 11'de WindowMetrics
API'yi kullanıma sunduk ve şu yöntemleri kullanımdan kaldırdık:
Android 12'de WindowMetrics
kullanmanızı önermeye devam ediyoruz ve aşağıdaki yöntemleri kullanımdan kaldırıyoruz:
Uygulamalar, pencerelerinin sınırlarını sorgulamak için WindowMetrics
API'lerini, mevcut yoğunluğu sorgulamak için Configuration.densityDpi
kullanmalıdır.
Jetpack WindowManager
kitaplığının, Android 4.0.1 (API düzeyi 14) ve sonraki sürümleri destekleyen bir WindowMetrics
sınıfı içerdiğini unutmayın.
Örnekler
WindowMetrics
özelliğinin nasıl kullanılacağına dair bazı örnekleri aşağıda bulabilirsiniz.
Öncelikle, uygulamanızın etkinliklerini tamamen yeniden boyutlandırılabilir hale getirebildiğinden emin olun.
Bir etkinlik, özellikle WindowManager.getCurrentWindowMetrics()
olmak üzere kullanıcı arayüzüyle ilgili herhangi bir çalışma için etkinlik bağlamına dayalı WindowMetrics
temel alınarak gösterilmelidir.
Uygulamanız bir MediaProjection
oluşturuyorsa projeksiyon ekranı yakaladığı için sınırlar doğru şekilde boyutlandırılmış olmalıdır. Uygulama tamamen yeniden boyutlandırılabilirse etkinlik bağlamı doğru sınırları döndürür.
Kotlin
val projectionMetrics = activityContext .getSystemService(WindowManager::class.java).maximumWindowMetrics
Java
WindowMetrics projectionMetrics = activityContext .getSystemService(WindowManager.class).getMaximumWindowMetrics();
Uygulama tamamen yeniden boyutlandırılamıyorsa sınırları bir WindowContext
örneğinden sorgulamalı ve WindowManager.getMaximumWindowMetrics()
kullanarak uygulamanın kullanabildiği maksimum görüntüleme alanının WindowMetrics'ini almalıdır.
Kotlin
val windowContext = context.createWindowContext(mContext.display!!, WindowManager.LayoutParams.TYPE_APPLICATION, null) val projectionMetrics = windowContext.getSystemService(WindowManager::class.java) .maximumWindowMetrics
Java
Context windowContext = mContext.createWindowContext(mContext.getDisplay(), WindowManager.LayoutParams.TYPE_APPLICATION, null; WindowMetrics projectionMetrics = windowContext.getWindowManager() .getMaximumWindowMetrics();