interface do privacysandbox

  
TODO
Atualização mais recente Versão estável Versão candidata a lançamento Versão Beta Versão Alfa
26 de junho de 2024 - - - 1.0.0-alpha09

Declarar dependências

Para adicionar uma dependência a privacysandbox-ui, é preciso adicionar o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para mais informações.

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

Groovy

dependencies {
    // Use to implement privacysandbox ui
    implementation "androidx.privacysandbox.ui:ui:1.0.0-alpha09"

    // Use to implement privacysandbox ui-core
    implementation "androidx.privacysandbox.ui:ui-core:1.0.0-alpha09"
   
    // Use to implement privacysandbox ui-core
    implementation "androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09"
}

Kotlin

dependencies {
    // Use to implement privacysandbox ui
    implementation("androidx.privacysandbox.ui:ui:1.0.0-alpha09")

    // Use to implement privacysandbox ui-core
    implementation("androidx.privacysandbox.ui:ui-core:1.0.0-alpha09")

    // Use to implement privacysandbox ui-provider
    implementation("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09")

    
}

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-alpha09

26 de junho de 2024

Lançamento de androidx.privacysandbox.ui:ui-client:1.0.0-alpha09, androidx.privacysandbox.ui:ui-core:1.0.0-alpha09 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09. A versão 1.0.0-alpha09 contém estas confirmações.

Novos recursos

  • Foram introduzidas as classes abstratas AbstractSandboxedUiAdapter e AbstractSandboxedUiAdapter.AbstractSession, que podem ser usadas por provedores de IU para evitar a implementação de todas as interfaces SandboxedUiAdapter ou Session. Recomendamos que os provedores de interface usem essas classes abstratas.
  • Foi adicionada a lógica registerObserverFactory, que permite que um SessionObserverFactory seja anexado a um SandboxedUiAdapter. Quando um SessionObserverFactory é anexado a um adaptador, um SessionObserver é criado para cada nova sessão de interface criada para esse adaptador. O SessionObserver criado vai receber um callback onSessionOpened quando a sessão de interface for aberta. Quando a apresentação da interface da visualização de Session mudar, SessionObserver.onUiContainerChanged será chamado. onUiContainerChanged é limitado e será chamado no máximo a cada 200 ms.
  • Foi adicionado SandboxedSdkViewUiInfo, que pode ser criado usando o Bundle enviado em SessionObserver.onUiContainerChanged. Esse objeto representa o estado da interface da SandboxedSdkView que está hospedando a sessão da interface. Ele contém informações de altura e largura, uma Rect que representa a geometria da visualização visível na tela e uma dica de opacidade que representa a opacidade da visualização.

Mudanças na API

  • A dica de opacidade foi adicionada à SandboxedSdkViewUiInfo. (I093ac).
  • Adicione SessionObserver.onUiContainerChanged e SandboxedSdkViewUiInfo. (Ie98bc).
  • Adicione a interface SessionObserver e a lógica de registro. (I047dc).
  • Adicione AbstractSandboxedUiAdapter e AbstractSession. (I3617a).

Problemas conhecidos

  • Quando o provedor de interface está no mesmo processo que o aplicativo cliente, SessionObserver.onUiContainerChanged não é enviado quando o contêiner rola a tela.

Versão 1.0.0-alpha08

14 de maio de 2024

Lançamento de androidx.privacysandbox.ui:ui-client:1.0.0-alpha08, androidx.privacysandbox.ui:ui-core:1.0.0-alpha08 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha08. A versão 1.0.0-alpha08 contém estas confirmações.

Novos recursos

  • Foi adicionado suporte ao uso de SandboxedSdkView dentro de um PoolingContainer, como um RecyclerView. Quando uma SandboxedSdkView tem um pai que é uma PoolingContainer, o ciclo de vida das sessões de interface é alinhado ao da PoolingContainer para garantir que a sessão possa persistir após a remoção da janela.

Mudanças na API

  • As APIs de atividade do Sandbox de privacidade foram descontinuadas. Essas APIs agora podem ser encontradas na biblioteca de atividades dedicada androidx.privacysandbox.activity. (I68beb).

Correções de bugs

  • Correção do bug de renderização ao exibir conteúdo remoto dentro de contêineres de pool. (I804df).
  • Correção de um bug que causava problemas de renderização para ViewGroups no modo de compatibilidade com versões anteriores. (I8de92).
  • Quando um dos pais da SandboxedSdkView for uma PoolingContainer, feche a sessão da interface quando o PoolingContainer indicar que os recursos podem ser liberados, em vez de quando a janela for removida. (I2046b).

Contribuição externa

  • O uso de GestureDetectorCompat foi descontinuado, já que GestureDetector está disponível no minSdk. (Icc4cd).

Versão 1.0.0-alpha07

18 de outubro de 2023

Lançamento de androidx.privacysandbox.ui:ui-client:1.0.0-alpha07, androidx.privacysandbox.ui:ui-core:1.0.0-alpha07 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha07. A versão 1.0.0-alpha07 contém estas confirmações.

Novos recursos

  • Foi adicionado suporte à compatibilidade com versões anteriores da biblioteca. Na API 33 e em versões anteriores, a visualização do provedor será renderizada dentro do processo do app, em um classloader diferente. (If0b7a).
  • Foi adicionada uma lógica que permite que o redimensionamento dos contêineres de host e provedor seja confirmado no mesmo frame para evitar instabilidade visível na interface. (Ic2cd9).

Mudanças na API

  • O MinSdk da biblioteca mudou para a API 21. (I474b8).

Versão 1.0.0-alpha06

20 de setembro de 2023

Lançamento de androidx.privacysandbox.ui:ui-client:1.0.0-alpha06, androidx.privacysandbox.ui:ui-core:1.0.0-alpha06 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha06. A versão 1.0.0-alpha06 contém estas confirmações.

Novos recursos

  • A lógica do clipe SandboxedSdkView foi adicionada à visualização "mãe delimitadora" que pode ser rolada. Isso garante que o conteúdo do SandboxedSdkView não oculte outras visualizações ou componentes de interface fora da visualização de conteúdo raiz. (I9ea94).

Mudanças na API

  • SandboxedSdkView.setZOrderOnTopAndEnableUserInteraction foi renomeado como orderProviderUiAboveClientUi (Iecb7e).

Correções de bugs

  • Envie o valor correto da ordem Z para o host. (Ib0ddf).
  • Transfira o foco de toque apenas para rolagens verticais. (I0528c).

Versão 1.0.0-alpha05

9 de agosto de 2023

Lançamento de androidx.privacysandbox.ui:ui-client:1.0.0-alpha05, androidx.privacysandbox.ui:ui-core:1.0.0-alpha05 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha05. A versão 1.0.0-alpha05 contém estas confirmações.

Novos recursos

  • Foi adicionada uma lógica para transferir o foco de toque para o host em gestos de rolagem e deslize rápido originados de SandboxedSdkView. Isso permite que a interface rolável do provedor de hospedagem do contêiner do cliente responda corretamente a rolagens e deslizes rápidos.

Mudanças na API

  • O parâmetro windowInputToken foi adicionado a SandboxedUiAdapter (Ief578).

Correções de bugs

  • Definir o estado da sessão como "Ativo" após o primeiro desenho (I36f3f).
  • Correção do problema de layout com SandboxedSdkView (I09cb8).
  • Foi adicionada uma lógica para transferir o foco de toque para o host. (I33b54).
  • Adicione o parâmetro windowInputToken a SandboxedUiAdapter. Isso é necessário para garantir que o token do SurfaceControlViewHost esteja associado corretamente ao host da hierarquia incorporada. (Ief578).
  • Execute notifyResized na linha de execução principal. (I62440).
  • Correção da falha no fluxo de Session.close(). (I5392e).

Versão 1.0.0-alpha04

21 de junho de 2023

Lançamento de androidx.privacysandbox.ui:ui-client:1.0.0-alpha04, androidx.privacysandbox.ui:ui-core:1.0.0-alpha04 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha04. A versão 1.0.0-alpha04 contém estas confirmações.

Novos recursos

  • Apresente o SdkActivityLauncher. Uma interface para permitir que SDKs ativados pelo ambiente de execução iniciem atividades. (I5b3dc).

Correções de bugs

  • Correção da disputa de notifyZOrderChanged. Garante que o provedor da interface seja notificado sobre todas as mudanças na ordem Z. O provedor de interface não será notificado explicitamente se a ordem Z do SandboxedSdkView for modificada antes que openSession seja invocada.

Versão 1.0.0-alpha03

24 de maio de 2023

Lançamento de androidx.privacysandbox.ui:ui-client:1.0.0-alpha03, androidx.privacysandbox.ui:ui-core:1.0.0-alpha03 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha03. A versão 1.0.0-alpha03 contém estas confirmações.

Novos recursos

  • StateChangedListener informa o aplicativo sobre mudanças na sessão da interface.

Mudanças na API

  • StateChangedListener foi adicionado para substituir ErrorConsumer (Icd5d3).

Correções de bugs

  • A condição de corrida de notifyZOrderChanged foi corrigida para que o provedor da interface seja notificado sobre todas as mudanças na ordem Z.

Versão 1.0.0-alpha02

19 de abril de 2023

Lançamento de androidx.privacysandbox.ui:ui-client:1.0.0-alpha02, androidx.privacysandbox.ui:ui-core:1.0.0-alpha02 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha02. A versão 1.0.0-alpha02 contém estas confirmações.

Correções de bugs

  • Teste de flaking de testChangeSandboxedSdkViewLayoutChangesChildLayout desativado.

Versão 1.0.0-alpha01

8 de março de 2023

Lançamento de androidx.privacysandbox.ui:ui-client:1.0.0-alpha01, androidx.privacysandbox.ui:ui-core:1.0.0-alpha01 e androidx.privacysandbox.ui:ui-provider:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.

Novos recursos

  • Essas são novas bibliotecas do Jetpack que podem ser usadas por aplicativos e SDKs ativados pelo ambiente de execução (Sandbox de privacidade) para permitir que o aplicativo (cliente) hospede qualquer interface fornecida pelo SDK (provedor).