Remote Compose

  
O Remote Compose é um modelo para criar interfaces em superfícies remotas.
Atualização mais recente Versão estável Versão candidata a lançamento Versão Beta Versão Alfa
6 de maio de 2026 - - - 1.0.0-alpha010

Declarar dependências

Para adicionar uma dependência ao compose-remote, inclua o repositório Maven do Google no seu projeto. Leia Repositório Maven do Google para ver mais informações.

Adicione as dependências dos artefatos necessários ao arquivo build.gradle do seu app ou módulo:

Groovy

dependencies {
    implementation "androidx.compose.remote:remote-core:1.0.0-alpha010"

    // Use to create Remote Compose documents
    implementation "androidx.compose.remote:remote-creation:1.0.0-alpha010"
    implementation "androidx.compose.remote:remote-creation-core:1.0.0-alpha010"
    implementation "androidx.compose.remote:remote-creation-android:1.0.0-alpha010"
    implementation "androidx.compose.remote:remote-creation-jvm:1.0.0-alpha010"
    implementation "androidx.compose.remote:remote-creation-compose:1.0.0-alpha010"

    // Use to render a Remote Compose document
    implementation "androidx.compose.remote:remote-player-core:1.0.0-alpha010"
    implementation "androidx.compose.remote:remote-player-view:1.0.0-alpha010"

    implementation "androidx.compose.remote:remote-tooling-preview:1.0.0-alpha010"
}

Kotlin

dependencies {
    implementation("androidx.compose.remote:remote-core:1.0.0-alpha010")

    // Use to create Remote Compose documents
    implementation("androidx.compose.remote:remote-creation:1.0.0-alpha010")
    implementation("androidx.compose.remote:remote-creation-core:1.0.0-alpha010")
    implementation("androidx.compose.remote:remote-creation-android:1.0.0-alpha010")
    implementation("androidx.compose.remote:remote-creation-jvm:1.0.0-alpha010")
    implementation("androidx.compose.remote:remote-creation-compose:1.0.0-alpha010")

    // Use to render a Remote Compose document
    implementation("androidx.compose.remote:remote-player-core:1.0.0-alpha010")
    implementation("androidx.compose.remote:remote-player-view:1.0.0-alpha010")

    implementation("androidx.compose.remote:remote-tooling-preview:1.0.0-alpha010")
}

Para mais informações sobre dependências, consulte Adicionar dependências de build.

Feedback

Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.

Criar novo problema

Consulte a documentação do Issue Tracker para saber mais.

Versão 1.0

Versão 1.0.0-alpha010

6 de maio de 2026

Lançamento de androidx.compose.remote:remote-*:1.0.0-alpha010. A versão 1.0.0-alpha010 inclui estes commits.

Recursos

  • Adição da flag EnforceCleanRecomposition (I6e4408). Como uma etapa para oferecer suporte à recomposição no RemoteCompose, impedimos que qualquer coisa seja gravada no documento antes que a composição seja concluída. Isso evita que os documentos sejam parcialmente gravados durante a recomposição. Se esse comportamento causar problemas com o código atual, ele poderá ser desativado definindo isEnforceCleanRecompositionEnabled como false.

Mudanças na API

  • Uma biblioteca de testes para o Remote Compose foi adicionada. (I78746, b/504687418)

Correções de bugs

  • Correção do recorte de plano de fundo ao usar uma RemoteColor (em vez de uma cor estática) como cor de plano de fundo (If70842, b/505116577).
  • Suporte para fornecer um tamanho explícito para bitmaps carregados do URI. Anteriormente, o tamanho era calculado como 1x1, e esse pixel era dimensionado para o tamanho do contêiner (Id4fff, b/487936996).
  • Prevenção de bugs de falha em dispositivos que não têm SensorManager (I1fc947,b/498302479).
  • Correção de TIME_FROM expressões que não usam o relógio fornecido (impedindo testes confiáveis para expressões de duração) (I5f816, b/501405389)

Versão 1.0.0-alpha09

22 abril de 2026

Lançamento de androidx.compose.remote:remote-*:1.0.0-alpha09. A versão 1.0.0-alpha09 contém estas confirmações.

Mudanças na API

  • O modificador clicável foi alterado para não aceitar o valor nulo para o parâmetro de ação. Em vez disso, use Action.Empty. (I21be9, b/498881738)
  • Os parâmetros do modificador de preenchimento foram alterados de esquerda/direita para início/fim. (Id781c, b/500760020)
  • Os modificadores onTouchDown(varargs action) e onTouchUp(varargs action) foram alterados para onTouchDown/onTouchUp(action). Use CombinedAction para uma lista de ações. (I8af9d, b/498881738)
  • O modificador clickable(varargs action) foi alterado para clickable(action). Use CombinedAction para uma lista de ações. (I8432d, b/498881738)

Correções de bugs

  • Correção de MatrixExpression.write (Id3c52).

Versão 1.0.0-alpha08

8 de abril de 2026

Lançamento de androidx.compose.remote:remote-*:1.0.0-alpha08. A versão 1.0.0-alpha08 contém estas confirmações.

Novos recursos

  • Promoção das operações CoreText, TextStyle, TextTransform e ColorTheme para os perfis de referência do AndroidX e de widgets (I69671, b/494482597)
    • CoreText oferece recursos mais avançados para renderizar texto, incluindo redimensionamento de texto adaptável e controle aprimorado sobre recursos de layout de texto, como quebra de linha e comportamento de overflow.
    • TextStyle permite que atributos comuns de estilo de texto sejam capturados no documento uma vez e referenciados por várias execuções de texto.
    • TextTransform permite transformações de texto, por exemplo, texto em maiúsculas.
  • Renderização inversa de itens em layout horizontal quando a direção do layout é da direita para a esquerda e não usa o arranjo horizontal absoluto. (I2d38e)

Mudanças na API

  • Preferência por toRemoteString(DecimalFormat) como a API do desenvolvedor. (Ia4925, b/493924433)
  • O modificador clip(shape, size) foi removido. Em vez disso, use o modificador clip(shape). (I76301)

Correções de bugs

  • Atualização de TextLookup para rastrear mudanças de elementos de matriz. Isso garante que as expressões sejam reavaliadas se um elemento pesquisado em uma matriz tiver sido alterado (I162c7)

Versão 1.0.0-alpha07

25 de março de 2026

Lançamento de androidx.compose.remote:remote-*:1.0.0-alpha07. A versão 1.0.0-alpha07 contém estas confirmações.

Novos recursos

  • Implementação de dimensionamento de fonte não linear (73b23c0).
  • Layouts que reconhecem LayoutDirection (81f984b).

Mudanças na API

  • Exposição de RemoteSpacer como API pública (I1a540).
  • Tornar RemoteBrush applyTo e a API de tipo de letra pública (I87ce9, b/493249631).
  • Omitir parâmetros de alinhamento e posicionamento de drawTextOnCircle (I7fd16, b/446824085).
  • Exposição de funções de modificador semântico (Ice73b).
  • Exposição de RemoteImageVector e painterRemoteVector (If8f38, b/446824085).
  • Exposição de RemoteTimeDefaults como uma API pública em remote-creation-compose (Iddc74, b/446824085).
  • Tornar os métodos RemoteArrangement.spacedBy públicos (I36e86)
  • Exposição de mais APIs RemoteDrawScope (I1dde7).
  • Exposição de tipos RemotePainter na API (I1ec8e).
  • Exposição da API RemoteBrush (I4b074).
  • API pública mínima para RemoteCanvas (I00853, b/446824085).
  • Exposição de modificadores semânticos de RC (I8b175, b/446824085).
  • Exposição de RemoteFloat.asRemoteDp() (I28b36, b/446824085).
  • Exposição de operações RemoteFloat (I85fb5, b/446824085).
  • RemoteArrangement.CenterHorizontally foi removido e substituído por RemoteArrangement.Center. (I2f907, b/471212869, b/471153933)
  • Mudança do alinhamento de RemoteBox para aceitar um único RemoteAlignment. (I0bfbf, b/471212869)

Versão 1.0.0-alpha06

11 de março de 2026

Lançamento de androidx.compose.remote:remote-*:1.0.0-alpha06. A versão 1.0.0-alpha06 contém estas confirmações.

Novos recursos

  • Adição de uma nova operação experimental para TextStyle. TextStyle permite que o estilo de tipografia usado com frequência seja gravado no documento uma vez e reutilizado por várias execuções de texto (bfc6487).

Mudanças na API

  • Exposição da mesclagem RemoteTextStyle (I971ce, b/446824085).
  • Exposição de RemotePainter como API pública (I252c1, b/446824085).
  • Exposição dos modificadores Border/Clip e RemoteShape. (Id26dd, b/446824085)
  • Exposição das APIs RemoteColor em remote-creation-compose (I4ab00, b/446824085).
  • Exposição da API RemoteText (I6b019).
  • Exposição da API RemoteImage (Ided31).
  • Exposição das APIs RemoteBoolean, RemoteString e RemoteFloat (Id9ee6).
  • Elemento combinável remoto da anotação WidthIn (I80784)

Correções de bugs

  • Movimentação de bibliotecas para usar o destino Java 11. Isso significa que o bytecode produzido será Java 11 (versão 55 do arquivo de classe) e poderá exigir simplificação para usar a biblioteca (If4c2a, b/457821470)
    • Garantia de que o comprimento e a atualização do textlookup estejam corretos. Anteriormente, o comprimento de RemoteStrings era calculado no primeiro frame e não era atualizado depois (e49cb53).
    • Suporte a TextFromFloat para números com grandes componentes fracionários. Anteriormente, valores grandes de "digitsAfter" podiam resultar na avaliação do float como 0 (5080bc54)

Versão 1.0.0-alpha05

25 de fevereiro de 2026

Lançamento de androidx.compose.remote:remote-*:1.0.0-alpha05. A versão 1.0.0-alpha05 contém estas confirmações.

Novos recursos

  • Introdução de fillParentMaxWidth e fillParentMaxHeight. (4c6d77c)

Mudanças na API

  • Exposição de tipos comuns de modificadores e elementos combináveis remotos (Id1d40).
  • Exposição de tipos para RemoteState (I22429, b/465453482).

Correções de bugs

  • Correções para rolagem (0a25299).
  • Correções para inclinação de toque (0192b69).
  • Definição da densidade mais cedo no processo de renderização para que ela seja aplicada corretamente no primeiro frame (geralmente capturado em testes de captura de tela) (f775399).

Versão 1.0.0-alpha04

11 de fevereiro de 2026

Lançamento de androidx.compose.remote:remote-*:1.0.0-alpha04. A versão 1.0.0-alpha04 contém estas confirmações.

Novos recursos

  • Ativação do uso do RemoteApplier por padrão, o que impede o uso de funções combináveis não remotas ao criar uma interface remota. Isso pode ser desativado mudando isRemoteApplierEnabled em RemoteComposeCreationComposeFlags. (67a405f)
  • Adição de espaçamento de glifos para fontes de bitmap (0852657).
  • Rotação com ponto de articulação em RemoteCanvas (9a292b3).
  • Adição de RemoteSpacer (12beb72).
  • Evitar a dependência de java.time, permitindo que o minSdk das bibliotecas de criação seja reduzido para 23 (59e30d0)
  • FlowLayout (7efef02).

Correções de bugs

  • Correção da avaliação para ColorExpression não global e string computada. (c08d0bd)

Contribuição externa

  • O alias de tipo androidx.compose.ui.graphics.NativePaint foi descontinuado. Em vez disso, use android.graphics.Paint diretamente (I6303c, b/477394763).
  • Substituição da extensão Paint.asFrameworkPaint() por Paint.nativePaint para evitar a exposição do tipo de plataforma no conjunto de origem commonMain via typealias (I6303c, b/477394763)

Versão 1.0.0-alpha03

28 de janeiro de 2026

Lançamento de androidx.compose.remote:remote-*:1.0.0-alpha03. A versão 1.0.0-alpha03 contém estas confirmações.

Novos recursos

  • Suporte a diferentes formas e RemoteColors em BorderModifier 0afd343
  • Adição de CombinedAction para oferecer suporte a várias ações em eventos de clique 10e16a2

Mudanças na API

  • Migração das APIs de RemoteColor e RemoteBitmap para usar tipos de composição, em vez de expor tipos do Android diretamente a9bfbb8
  • Introdução de um tipo RemoteDensity para determinar se a densidade deve ser avaliada no player (ao produzir um documento para um dispositivo remoto) ou se as expressões devem ser in-line (para otimizar o tamanho do documento quando estiver no mesmo dispositivo) 54352bb
  • RemoteState constantValueOrNull renomeação (I6ad5c, b/467050397).

Versão 1.0.0-alpha02

14 de janeiro de 2026

Lançamento de androidx.compose.remote:remote-*:1.0.0-alpha02. A versão 1.0.0-alpha02 contém estas confirmações.

Novos recursos

  • Adição de tamanho mínimo/máximo da fonte para CoreText. I7bd3c

Mudanças na API

  • Exposição da API pública mínima para a infraestrutura do Glance Wear. (I7b4b9, b/467532762)
  • Retorno de CapturedDocument de captureSingleRemoteDocument (I5a283, b/467532762).

Correções de bugs

  • Correção da posição de rolagem após o relayout e adição de suporte para efeitos de borda (6d4551).

Versão 1.0.0-alpha01

17 de dezembro de 2025

Lançamento de androidx.compose.remote:remote-*:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.

  • O Remote Compose é um modelo para criar interfaces em superfícies remotas.