A cada versão, algumas APIs específicas do Android podem se tornar obsoletas ou precisarem ser refatoradas para fornecer uma melhor experiência aos desenvolvedores ou oferecer compatibilidade com as novas funcionalidades da plataforma. Nesses casos, o Android descontinuará oficialmente as APIs obsoletas e direcionará os desenvolvedores para usarem as novas APIs.
Descontinuação significa que encerramos o suporte oficial para as APIs, mas elas continuarão disponíveis para os desenvolvedores. Esta página destaca algumas das descontinuações nesta versão do Android. Para ver outras suspensões de uso, consulte o Relatório das diferenças de API.
RenderScript
A partir do Android 12, as APIs RenderScript foram descontinuadas. Elas continuarão funcionando, mas esperamos que os fabricantes de dispositivos e componentes parem de oferecer compatibilidade com a aceleração de hardware ao longo do tempo. Para aproveitar ao máximo a aceleração de GPU, recomendamos migrar do RenderScript.
Playlists do Android
As playlists do Android foram descontinuadas. A API não é mais mantida, mas a funcionalidade atual permanece para compatibilidade.
Recomendamos ler e salvar playlists como arquivos m3u (link em inglês).
Descontinuação da API Display
Os dispositivos Android estão disponíveis em vários formatos, como telas
grandes, tablets e dobráveis. Para renderizar conteúdo corretamente em cada
dispositivo, o app precisa determinar o tamanho da tela ou da exibição. Com
o tempo, o Android forneceu APIs diferentes para extrair essas informações. No
Android 11, introduzimos a API
WindowMetrics
e descontinuamos
estes métodos:
No Android 12, continuamos a recomendar o uso das WindowMetrics
e
descontinuamos estes métodos:
Os apps precisam usar as APIs WindowMetrics
para consultar os limites da janela ou
Configuration.densityDpi
para consultar a densidade atual.
A biblioteca WindowManager
do Jetpack inclui uma classe WindowMetrics
que oferece suporte ao Android 4.0.1 (nível 14 da API) e mais recentes.
Exemplos
Veja alguns exemplos de como usar as WindowMetrics
.
Primeiro, confira se o app pode tornar as atividades totalmente redimensionáveis.
Uma atividade depende das WindowMetrics
de um contexto de atividade para
qualquer trabalho relacionado à IU, especialmente
WindowManager.getCurrentWindowMetrics()
.
Se o app criar uma MediaProjection
, os limites precisam ser dimensionados corretamente,
já que a projeção captura a tela. Se o app for totalmente redimensionável, o
contexto da atividade retornará os limites corretos.
Kotlin
val projectionMetrics = activityContext .getSystemService(WindowManager::class.java).maximumWindowMetrics
Java
WindowMetrics projectionMetrics = activityContext .getSystemService(WindowManager.class).getMaximumWindowMetrics();
Se o app não for totalmente redimensionável, ele precisará consultar os limites de uma instância do
WindowContext
e extrair as WindowMetrics da área máxima de exibição
disponível para o app usando o método
WindowManager.getMaximumWindowMetrics()
.
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();