Her sürümde belirli Android API'leri kullanımdan kaldırılabilir veya daha iyi bir geliştirici deneyimi sunmak ya da yeni platform özelliklerini desteklemek için yeniden tasarlanması gerekebilir. Bu durumlarda Android, eski API'lerin desteğini resmen sonlandırır ve geliştiricileri bunun yerine kullanacakları yeni API'lere yönlendirir.
Desteği sonlandırma, API'ler için resmi desteği sona erdirdiğimiz anlamına gelir ancak geliştiriciler bu API'leri kullanmaya devam edebilir. Bu sayfada, Android'in bu sürümünde desteği sonlandırılan özelliklerden bazıları vurgulanmaktadır. Diğer kullanımdan kaldırmaları görmek için API farkları raporuna bakın.
RenderScript
Android 12'den itibaren RenderScript API'lerinin desteği sonlandırıldı. Bu sürümler çalışmaya devam edecek ancak cihaz ve bileşen üreticilerinin zaman içinde donanım hızlandırma desteği sunmayı bırakmasını bekliyoruz. GPU hızlandırmasından tam olarak yararlanmak için RenderScript'ten geçiş yapmanızı öneririz.
Android şarkı listeleri
Android şarkı listeleri desteği sonlandırıldı. API artık desteklenmemektedir ancak uyumluluk için mevcut işlevler korunmaktadır.
Oynatma listelerini m3u dosyası olarak okumanızı ve kaydetmenizi öneririz.
Display API'nin kullanımdan kaldırılması
Android cihazlar; büyük ekranlar, tabletler ve katlanabilir cihazlar gibi birçok farklı form faktöründe kullanıma sunulmaktadır. İçeriğin her cihaz için uygun şekilde oluşturulması amacıyla uygulamanızın ekran veya ekran boyutunu belirlemesi gerekir. Android zaman içinde bu bilgileri almak için farklı API'ler sağladı. Android 11'de WindowMetrics
API'yi kullanıma sunduk ve aşağıdaki yöntemleri kullanımdan kaldırdık:
Android 12'de WindowMetrics
kullanmaya devam etmenizi öneririz ve aşağıdaki yöntemleri kullanımdan kaldırıyoruz:
Uygulamalar, pencerelerinin sınırlarını sorgulamak için WindowMetrics
API'lerini veya geçerli yoğunluğu sorgulamak için Configuration.densityDpi
kullanmalıdır.
Jetpack WindowManager
kitaplığının, Android 4.0.1 (API seviyesi 14) ve sonraki sürümleri destekleyen bir WindowMetrics
sınıfı içerdiğini unutmayın.
Örnekler
WindowMetrics
işlevinin nasıl kullanılacağına dair bazı örnekleri aşağıda bulabilirsiniz.
Öncelikle, uygulamanızın etkinliklerini tamamen yeniden boyutlandırabileceğinden emin olun.
Etkinlikler, kullanıcı arayüzüyle ilgili tüm çalışmalarda, özellikle WindowManager.getCurrentWindowMetrics()
için etkinlik bağlamındaki WindowMetrics
öğesine dayanmalıdır.
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ılabiliyorsa 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 WindowContext
örneğinden sınırları sorgulamalı ve WindowManager.getMaximumWindowMetrics()
kullanarak uygulamanın kullanabileceği maksimum ekran alanının WindowMetrics değerini 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();