summaryrefslogtreecommitdiffstats
path: root/docs/html-intl
diff options
context:
space:
mode:
authorDavid Friedman <dmail@google.com>2015-07-07 21:30:41 -0700
committerDavid Friedman <dmail@google.com>2015-07-07 21:30:41 -0700
commit9c0bb4f214f4a43ddd0a69815325e73b9beaa87d (patch)
treec1a71a9643b73492c0fca7123852ac3d76f1ec51 /docs/html-intl
parentd6473b0f68dcd42f97dce1586a424ba11a5ed2d9 (diff)
downloadframeworks_base-9c0bb4f214f4a43ddd0a69815325e73b9beaa87d.zip
frameworks_base-9c0bb4f214f4a43ddd0a69815325e73b9beaa87d.tar.gz
frameworks_base-9c0bb4f214f4a43ddd0a69815325e73b9beaa87d.tar.bz2
Docs: L10N for remaining M Preview docs (pt-br).
Change-Id: I53d52c7f625d6fab5e9939364617c005573a718f
Diffstat (limited to 'docs/html-intl')
-rw-r--r--docs/html-intl/intl/pt-br/preview/backup/index.jd327
-rw-r--r--docs/html-intl/intl/pt-br/preview/download.jd348
-rw-r--r--docs/html-intl/intl/pt-br/preview/features/app-linking.jd123
-rw-r--r--docs/html-intl/intl/pt-br/preview/index.jd67
-rw-r--r--docs/html-intl/intl/pt-br/preview/license.jd143
-rw-r--r--docs/html-intl/intl/pt-br/preview/samples.jd70
-rw-r--r--docs/html-intl/intl/pt-br/preview/setup-sdk.jd207
-rw-r--r--docs/html-intl/intl/pt-br/preview/support.jd67
-rw-r--r--docs/html-intl/intl/pt-br/preview/testing/guide.jd187
-rw-r--r--docs/html-intl/intl/pt-br/preview/testing/performance.jd656
10 files changed, 2195 insertions, 0 deletions
diff --git a/docs/html-intl/intl/pt-br/preview/backup/index.jd b/docs/html-intl/intl/pt-br/preview/backup/index.jd
new file mode 100644
index 0000000..1ba039b
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/preview/backup/index.jd
@@ -0,0 +1,327 @@
+page.title=Backup automático para aplicativos
+page.tags=backup, previewresources, androidm
+page.keywords=backup, autobackup, preview
+page.image=images/cards/card-auto-backup_2x.png
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>Neste documento</h2>
+ <ol>
+ <li><a href="#overview">Visão geral</a></li>
+ <li><a href="#configuring">Configurar backup de dados</a></li>
+ <li><a href="#testing">Testar configuração de backup</a></li>
+ <li><a href="#issues">Problemas conhecidos</a></li>
+ </ol>
+ </div>
+</div>
+
+<p>
+ Frenquentemente, os usuários investem muito tempo e esforço para criar dados e configurar preferências
+ nos aplicativos. Preservar esses dados para os usuários caso substituam um dispositivo quebrado ou atualizem-se para um novo
+ é importante para garantir uma ótima experiência de usuário. Dispositivos que executam o sistema Android M Preview
+ ajudam a garantir uma boa experiência para os usuários nessas circunstâncias realizando o backup dos dados do aplicativo
+ automaticamente no Google Drive. Os dados do aplicativo são restaurados automaticamente se um usuário alterar ou atualizar um
+ dispositivo.
+</p>
+
+<p>
+ Os backups automáticos estão ativos para todos os aplicativos instalados nos dispositivos que executam o Android M Preview. Nenhum
+ código adicional de aplicativo é necessário. O sistema fornece aos usuários a habilidade de decisão
+ sobre os backups automáticos de dados. Também é possível limitar quais dados do aplicativo devem ter o backup.
+</p>
+
+<p>
+ Este documento descreve o novo comportamento do sistema e como especificar quais dados terão backup
+ para o aplicativo.
+</p>
+
+<h2 id="overview">Visão geral</h2>
+
+<p>
+ O recurso de backup automático preserva os dados que o aplicativo cria em um dispositivo de usuário enviando-os
+ à conta do Google Drive do usuário e criptografando-os. Não há cobranças para você ou para o usuário
+ em relação ao armazenamento de dados e os dados salvos não contam para a cota do Drive pessoal do usuário. Durante
+ o período do M Preview, os usuários podem armazenar até 25 MB por aplicativo do Android.
+</p>
+
+<p>
+ Os backups automáticos ocorrem a cada 24 horas, quando o dispositivo está ocioso, carregando e conectado
+ a uma rede Wi-Fi. Quando esses requisitos são atendidos, o serviço Backup Manager envia todos os dados de backup
+ disponíveis à nuvem. Quando um usuário transita para um novo dispositivo, ou desinstala e reinstala
+ o aplicativo com backup realizado, uma operação de restauração copia os dados de backup para o diretório de dados
+ do aplicativo recém-instalado.
+</p>
+
+<p class="note">
+ <strong>Observação:</strong> se o usuário usar o
+ <a href="{@docRoot}google/backup/index.html">serviço de Backup do Android</a> de legado, este novo comportamento
+ não se aplicará aos trabalhos de comportamento de backup existentes com o normal.
+</p>
+
+
+<h3 id="auto-exclude">Arquivos de dados excluídos automaticamente</h3>
+
+<p>
+ Nem todos os dados do aplicativo devem ter backup, como arquivos temporários e de armazenamento em cachê. Portanto, o serviço de backup automático
+ exclui determinados arquivos de dados por padrão:
+</p>
+
+<ul>
+ <li>Arquivos em diretórios identificados pelos métodos {@link android.content.Context#getCacheDir
+ getCacheDir()} e {@link android.content.ContextWrapper#getCodeCacheDir getCodeCacheDir()}
+.
+ </li>
+
+ <li>Arquivos localizados no armazenamento externo, a não ser que estejam no diretório identificado pelo método
+ {@link android.content.Context#getExternalFilesDir getExternalFilesDir()}
+.
+ </li>
+
+ <li>Arquivos localizados no diretório identificado pelo método
+ {@link android.content.Context#getNoBackupFilesDir getNoBackupFilesDir()}.
+ </li>
+</ul>
+
+<h2 id="configuring">Configurar backup de dados</h2>
+
+<p>
+ Os dados criados por qualquer aplicativo instalado em um dispositivo M Preview têm backup, exceto
+ os arquivos excluídos automaticamente listados na seção anterior. É possível limitar e configurar
+ quais dados terão backup no seu aplicativo usando as configurações no manifesto do aplicativo.
+</p>
+
+<h3 id="include-exclude">Incluir ou excluir dados</h3>
+
+<p>
+ Dependendo de quais dados o aplicativo precisar e do modo que forem salvos, você precisará definir
+ regras específicas para incluir ou excluir determinados arquivos ou diretórios. O serviço de backup automático suporta
+ a configuração dessas regras de backup por meio do uso de um arquivo de configuração XML e do
+ manifesto do aplicativo. No manifesto do aplicativo, é possível especificar o arquivo de configuração de esquema de backup como exibido
+ no seguinte exemplo:
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ package="com.my.appexample"&gt;
+ &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
+ &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
+ &lt;app ...
+<strong> android:fullBackupContent="&#64;xml/mybackupscheme"&gt;</strong>
+ &lt;/app&gt;
+ ...
+&lt;/manifest&gt;
+</pre>
+
+<p>
+ Neste código de exemplo, o atributo <code>android:fullBackupContent</code> especifica um arquivo XML,
+ localizado no diretório <code>res/xml/</code> do projeto de desenvolvimento do aplicativo, chamado
+ <code>mybackupscheme.xml</code>. Este arquivo de configuração inclui as regras de quais arquivos terão
+ backup. O seguinte código de exemplo mostra um arquivo de configuração que exclui um arquivo específico
+ dos backups:
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;full-backup-content&gt;
+ &lt;exclude domain="database" path="device_info.db"/&gt;
+&lt;/full-backup-content&gt;
+</pre>
+
+<p>
+ Esta configuração de backup de exemplo exclui do backup somente um arquivo específico do banco de dados.
+ Todos os outros arquivos terão backup.
+</p>
+
+<h4>Sintaxe da configuração de backup</h4>
+
+<p>
+ A configuração do serviço de backup permite que você especifique quais arquivos incluir ou excluir do
+backup. A sintaxe para o arquivo XML de configuração de backup de dados é a seguinte:
+</p>
+
+<pre>
+&lt;full-backup-content&gt;
+ &lt;include domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
+ &lt;exclude domain=["file" | "database" | "sharedpref" | "external" | "root"] path="string" /&gt;
+&lt;/full-backup-content&gt;
+</pre>
+
+<p>
+ Os seguintes elementos e atributos permitem que você especifique os arquivos que serão incluídos ou excluídos
+ do backup:
+</p>
+
+<ul>
+ <li>
+ <code>&lt;include&gt;</code>. Use este elemento se quiser especificar um conjunto de recursos
+para o backup, em vez de fazer o sistema realizar o backup de todos os dados no aplicativo por padrão. Ao especificar
+ uma tag <code>&lt;include&gt;</code>, o sistema realiza apenas o backup <em>dos recursos especificados</em>
+ com este elemento.
+ </li>
+
+ <li>
+ <code>&lt;exclude&gt;</code>. Use este elemento para especificar um conjunto de recursos que será excluído
+ do backup. O sistema realiza o backup de todos os dados no aplicativo, exceto os recursos especificados
+ com este elemento.
+ </li>
+
+ <li>
+ <code>domain.</code> O tipo de recurso que deseja excluir ou incluir no backup. Os valores válidos
+ que podem ser especificados para este atributo incluem:
+ </li>
+
+ <li style="list-style: none">
+ <ul>
+ <li>
+ <code>root</code>. Especifica que o recurso está no diretório raiz do aplicativo.
+ </li>
+
+ <li>
+ <code>file</code>. Corresponde ao recurso no diretório retornado
+ pelo método {@link android.content.Context#getFilesDir getFilesDir()}.
+ </li>
+
+ <li>
+ <code>database</code>. Corresponde ao banco de dados retornado
+ pelo método {@link android.content.Context#getDatabasePath getDatabasePath()} ou usando
+ a classe {@link android.database.sqlite.SQLiteOpenHelper}.
+ </li>
+
+ <li>
+ <code>sharedpref</code>. Corresponde a um objeto {@link android.content.SharedPreferences}
+ retornado pelo método {@link android.content.Context#getSharedPreferences getSharedPreferences()}
+.
+ </li>
+
+ <li>
+ <code>external</code>. Especifica que o recurso está no armazenamento externo e corresponde
+ a um arquivo no diretório retornado pelo método
+ {@link android.content.Context#getExternalFilesDir getExternalFilesDir()}.
+ </li>
+
+ <li>
+ <code>path</code>. O caminho de arquivo para um recurso que deseja excluir ou incluir
+ no backup.
+ </li>
+ </ul>
+ </li>
+</ul>
+
+
+<h3 id="prohibit">Proibir backup de dados</h3>
+
+<p>
+ É possível optar por evitar backups automáticos de quaisquer dados do aplicativo configurando
+ o atributo <code>android:allowBackup</code> para <code>false</code> no elemento do aplicativo
+ do manifesto. Esta configuração é ilustrada no seguinte código de exemplo:
+</p>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ package="com.my.appexample"&gt;
+ &lt;uses-sdk android:minSdkVersion="MNC"/&gt;
+ &lt;uses-sdk android:targetSdkVersion="MNC"/&gt;
+ &lt;app ...
+<strong> android:allowBackup="false"&gt;</strong>
+ &lt;/app&gt;
+ ...
+&lt;/manifest&gt;
+</pre>
+
+
+<h2 id="testing">Testar configuração de backup</h2>
+
+<p>
+ Ao criar uma configuração de backup, deve-se testá-la para garantir que o aplicativo
+ salva os dados e que eles podem ser restaurados corretamente.
+</p>
+
+
+<h4>Ativar registro de backup</h4>
+
+<p>
+ Para ajudar a determinar como o recurso de backup analisa o arquivo XML, ative o registro
+ antes de realizar um backup de teste:
+</p>
+
+<pre class="noprettyprint">
+$ adb shell setprop log.tag.BackupXmlParserLogging VERBOSE
+</pre>
+
+<h4>Teste de backup</h4>
+
+<p>Para executar um backup manualmente, primeiro deve-se inicializar o Backup Manager chamando o seguinte
+ comando:
+</p>
+
+<pre class="noprettyprint">
+$ adb shell bmgr run
+</pre>
+
+<p>
+ Em seguida, realiza-se o backup manualmente do aplicativo usando o seguinte comando, especificando o nome
+ do pacote para o aplicativo como o parâmetro <code>&lt;PACKAGE&gt;</code>:
+</p>
+
+<pre class="noprettyprint">
+$ adb shell bmgr fullbackup &lt;PACKAGE&gt;</pre>
+
+
+<h4>Teste de restauração</h4>
+
+<p>
+ Para iniciar manualmente uma restauração após o backup dos dados do aplicativo, chame o seguinte comando,
+ especificando o nome do pacote para o aplicativo como o parâmetro <code>&lt;PACKAGE&gt;</code>:
+</p>
+
+<pre class="noprettyprint">
+$ adb shell bmgr restore &lt;PACKAGE&gt;
+</pre>
+
+<p class="warning">
+ <b>Aviso:</b> esta ação impede o aplicativo de apagar os dados antes de realizar
+ a operação de restauração.
+</p>
+
+<p>
+ Para iniciar o processo de restauração do aplicativo, deve-se desinstalar e reinstalá-lo. Os dados
+ do aplicativo são restaurados automaticamente a partir da nuvem quando a instalação do aplicativo for concluída.
+</p>
+
+
+<h4>Resolução de problemas de backups</h4>
+
+<p>
+ Caso ocorra problemas, é possível apagar os dados de backup e os metadados associados desativando o backup
+ e reativando-o em <strong>Settings (Configurações) &gt; Backup</strong>, redefinindo o dispositivo para as especificações de fábrica, ou
+ chamando este comando:
+</p>
+
+<pre>$ adb shell bmgr wipe &lt;TRANSPORT&gt; &lt;PACKAGE&gt;</pre>
+
+<p>
+ O valor <code>&lt;TRANSPORT&gt;</code> deve ser prefixado por <code>com.google.android.gms</code>.
+ Para obter uma lista de transportes, chame o seguinte comando:
+</p>
+
+<pre>$ adb shell bmgr list transports</pre>
+
+<h2 id="issues">Problemas conhecidos</h2>
+
+<p>A seguir estão os problemas conhecidos com o serviço de backup automático:</p>
+
+<ul>
+ <li><strong>Google Cloud Messaging</strong> -
+ Para aplicativos que usam o Google Cloud Messaging para notificações push, há um problema conhecido
+ onde o backup do ID de registro retornado pelo registro do Google Cloud Messaging pode
+ desencadear notificações push para o aplicativo restaurado. É importante consultar a API para obter um novo ID de registro
+ após a instalação em um novo dispositivo, o que não deve ser o caso se o ID de registro antigo
+ tiver backup. Para evitar isto, exclua o ID de registro do conjunto de arquivos
+ de backup.
+ </li>
+</ul>
diff --git a/docs/html-intl/intl/pt-br/preview/download.jd b/docs/html-intl/intl/pt-br/preview/download.jd
new file mode 100644
index 0000000..b219116
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/preview/download.jd
@@ -0,0 +1,348 @@
+page.title=Downloads
+page.image=images/cards/card-download_16-9_2x.png
+
+@jd:body
+
+<div style="position:relative; min-height:600px">
+
+ <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
+
+ <p class="sdk-terms-intro">Antes de fazer o download ou instalar componentes do Android Preview
+ SDK, você deve concordar com os seguintes termos e condições.</p>
+
+ <h2 class="norule">Termos e condições</h2>
+
+ <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
+Este é o contrato de licença do Android SDK Preview (o “Contrato de Licença”).
+
+1. Introdução
+
+1.1 O Android SDK Preview (que este Contrato de licença chama de "Preview", incluindo especificamente os arquivos de sistema do Android, APIs integradas e arquivos da biblioteca Preview, se e quando estiverem disponíveis) é licenciado por meio da concordância com os termos deste contrato. O Contrato de licença forma um vínculo contratual legal entre o contratante e a Google em relação ao uso do Preview.
+
+1.2 "Android" se refere à pilha de software do Android para dispositivos, conforme disponibilizado no Projeto de código aberto do Android, localizado no URL a seguir: http://source.android.com/, atualizado periodicamente.
+
+1.3 "Google" refere-se à Google Inc, uma corporação de Delaware, com sede em 1600 Amphitheatre Parkway, Mountain View, CA 94043, Estados Unidos.
+
+2. Aceitação do Contrato de Licença
+
+2.1 A fim de usar o Preview, é necessário concordar com este Contrato de licença. O uso do Preview é proibido àqueles que não concordam com este Contrato de licença.
+
+2.2 Ao clicar em aceitar e/ou usar o Preview, você concorda com os termos do Contrato de licença
+
+2.3 É proibido o uso do Preview e a aceitação deste contrato pelo indivíduo que tenha impedimento legal sobre o recebimento do Preview sob as leis dos Estados Unidos ou de outros países, incluindo o país de residência ou no qual usa o Preview.
+
+2.4 Se for usar o Preview internamente na empresa ou organização, você deverá concordar com o vínculo com este contrato em nome do empregador ou de outra entidade e declarar e garantir que tem total autoridade legal para tanto. Se você não tem a autoridade necessária, não deve concordar com este contrato nem usar o Preview em nome do empregador ou de outra entidade.
+
+3. Licença do Preview da Google
+
+3.1 Sujeito aos termos do Contrato de licença, a Google confere uma licença limitada, revogável, livre de taxas, intransmissível, não sub-licenciável e não exclusiva para o uso apenas do Preview, pessoal ou internamente dentro da sua empresa ou organização, para fins de desenvolvimento de aplicativos executados na plataforma do Android.
+
+3.2 Você concorda que a Google ou terceiros detêm todos os direitos legais, títulos e interesses relativos ao Preview, incluindo quaisquer direitos de propriedade intelectual que subsistam no Preview. "Direitos de propriedade intelectual" se referem a todo e qualquer direito sob as leis de patentes, de direitos autorais, de segredo comercial, de marca registrada e todos os outros direitos de propriedade. A Google reserva todos os direitos não conferidos expressamente a você.
+
+3.3 O uso do Preview não é autorizado para qualquer finalidade não expressamente permitida por este Contrato de licença. Salvo na extensão exigida por licenças aplicáveis de terceiros, é proibido: (a) copiar (exceto para fins de cópia de segurança), modificar, adaptar, redistribuir, descompilar, fazer engenharia reversa, desmontar ou criar trabalhos derivados do Preview ou qualquer parte dele; ou (b) carregar qualquer parte do Preview em um aparelho celular ou outro dispositivo de hardware, exceto em computador pessoal, combinar qualquer parte do Preview com outros softwares ou distribuir qualquer software ou dispositivo que contenha uma parte do Preview.
+
+3.4 Você concorda que não tomará quaisquer medidas que possam causar ou resultar em fragmentação do Android, incluindo, sem limitar-se, a distribuição e a participação na criação ou na promoção, sob quaisquer formas, de um conjunto de desenvolvimento de software derivado do Preview.
+
+3.5 O uso, a reprodução e a distribuição de componentes do Preview licenciado sob licença de software de código aberto são regidos exclusivamente pelos termos daquela licença de software de código aberto, e não por este Contrato de licença. Você concorda em manter uma licença em bom estado para as licenças de software de código aberto sob todos os direitos concedidos e deter quaisquer ações que possam limitar, suspender ou romper tais direitos.
+
+3.6 Você concorda que a forma e a natureza do SDK que a Google fornece podem mudar sem aviso prévio e que as versões futuras do SDK podem ser incompatíveis com aplicativos desenvolvidos em versões anteriores do SDK. Você concorda que a Google pode cessar (permanente ou temporariamente) o fornecimento do Preview (ou quaisquer recursos dentro dele) a você ou a usuários em geral sob critério exclusivo da Google, sem aviso prévio.
+
+3.7 Nada neste Contrato de licença confere o direito de uso de quaisquer nomes comerciais, marcas comerciais, marcas de serviço, logomarcas, nomes de domínios e outros recursos de marcas especiais da Google.
+
+3.8 Você concorda que não removerá, ocultará nem alterará quaisquer observações de direitos de propriedade (incluindo observações de direitos autorais e de marcas registradas) que possam estar afixadas ou contidas no Preview.
+
+4. Uso do Preview por você
+
+4.1 A Google compreende que nada no Contrato de licença dá a ela direito, título nem interesse no usuário (ou em seus licenciadores), sob o presente Contrato de licença, no que tange ao desenvolvimento de aplicativos de software através do uso do Preview, incluindo quaisquer direitos de propriedade intelectual que subsistam nos referidos aplicativos.
+
+4.2 Você concorda em usar o Preview e desenvolver aplicativos somente para as finalidades permitidas por (a) este Contrato de licença e (b) quaisquer leis, normas, diretrizes geralmente aceitas ou orientações aplicáveis nas jurisdições relevantes (incluindo quaisquer leis acerca da exportação e da importação de dados ou softwares nos Estados Unidos ou em outros países relevantes).
+
+4.3 Você concorda que, se usar o Preview para o desenvolvimento de aplicativos, deverá proteger a privacidade e os direitos legais destes usuários. Se nomes de usuário, senhas ou outras informações de acesso ou informações pessoais forem fornecidos ao aplicativo, deve-se informá-los de que tais dados estarão disponíveis para o aplicativo, além de fornecer observações de privacidade e proteção legalmente adequadas a esses usuários. Se o aplicativo armazenar informações pessoais ou confidenciais fornecidas pelos usuários, deve fazê-lo com segurança. Se o usuário fornecer informações da conta do Google, o aplicativo poderá usar essas informações exclusivamente para acessar a conta da Google do usuário quando houver autorização para fazê-lo e para os fins limitados pela autorização.
+
+4.4 Você concorda que não se envolverá em qualquer atividade com o Preview, incluindo o desenvolvimento e a distribuição de um aplicativo que interfira, perturbe, danifique ou acesse, de modo não autorizado, servidores, redes ou outras propriedades ou serviços da Google ou qualquer outro terceiro.
+
+4.5 Você concorda que é exclusivamente responsável por (e que a Google não tem qualquer responsabilidade com você ou terceiro) quaisquer dados, conteúdo ou recursos que criar, transmitir ou exibir por meio do Android e/ou de aplicativos do Android e pelas consequências que suas ações (incluindo perda ou dano que a Google possa sofrer) podem gerar.
+
+4.6 Você concorda que é exclusivamente responsável por (e que a Google não tem qualquer responsabilidade com você ou terceiro) qualquer violação das obrigações exigidas neste Contrato de licença, qualquer contrato ou termos de serviço aplicáveis a terceiros, qualquer lei ou norma aplicável e pelas consequências (incluindo a perda ou dano que a Google ou qualquer terceiro possa sofrer) de quaisquer violações.
+
+4.7 O Preview está em desenvolvimento e o seu teste e feedback são uma parte importante deste processo. Ao usar o Preview, você está ciente de que a implementação de alguns recursos ainda estão em desenvolvimento e que não se deve confiar que o Preview tem a funcionalidade completa de uma versão estável. Você concorda em não distribuir nem enviar publicamente quaisquer aplicativos usando este Preview, pois ele não será mais suportado após o lançamento oficial do Android SDK.
+
+5. Suas credenciais de desenvolvedor
+
+5.1 Você é responsável pela manutenção da confidencialidade de quaisquer credenciais de desenvolvedor que possam ser emitidas pela Google ou escolhidas por você e será o único responsável por todos os aplicativos que forem desenvolvidos sob suas credenciais de desenvolvedor.
+
+6. Privacidade e informações
+
+6.1 A fim de inovar e aprimorar continuamente o Preview, a Google pode coletar certas estatísticas de uso do software, incluindo, sem limitar-se, um identificador exclusivo, endereço IP associado, número de versão do software e informações sobre quais ferramentas e/ou serviços no Preview estão sendo usados e como estão sendo usados. Antes de coletar quaisquer dessas informações, o Preview o notificará e buscará seu consentimento. Se você recusar, as informações não serão coletadas.
+
+6.2 Os dados coletados são examinados coletivamente para aprimorar o Preview e são mantidos em conformidade com a Política de privacidade da Google acessível em http://www.google.com/policies/privacy/.
+
+7. Aplicativos de terceiros
+
+7.1 Ao usar o Preview para executar aplicativos desenvolvidos por terceiros ou que acessam dados, conteúdo ou recursos fornecidos por terceiros, você concorda que a Google não é responsável por tais aplicativos, dados, conteúdo ou recursos. Você compreende que quaisquer dados, conteúdo ou recursos passíveis de aceitação por meio de tais aplicativos de terceiros imputam responsabilidade exclusiva ao indivíduo que os originou. A Google não é responsável por qualquer perda ou dano que possa ocorrer como resultado do uso ou acesso de quaisquer aplicativos, dados, conteúdo ou recursos de terceiros.
+
+7.2 Você deve estar ciente de que os dados, conteúdo e recursos apresentados a você por aplicativos de terceiros podem ser protegidos pelos direitos de propriedade intelectual de posse dos fornecedores (ou de outras pessoas ou empresas em seus nomes). Não é permitido modificar, alugar, arrendar, emprestar, vender, distribuir nem criar trabalhos derivados com base nestes dados, conteúdo ou recursos (na totalidade ou em parte), salvo se houver permissão explícita especificada pelos respectivos detentores de direitos.
+
+7.3 Você reconhece que o uso de tais aplicativos, dados, conteúdo ou recursos de terceiros pode estar sujeito a termos adicionais entre você e o terceiro em questão.
+
+8. Uso de APIs da Google
+
+8.1 APIs da Google
+
+8.1.1 Ao usar qualquer API para recuperar dados da Google, você reconhece que eles podem ser protegidos por direitos de propriedade intelectual de posse da Google ou dos terceiros que fornecem os dados (ou de pessoas ou empresas em nomes deles). O uso de tal API pode estar sujeito a termos de serviço adicionais. Não é permitido modificar, alugar, arrendar, emprestar, vender, distribuir nem criar trabalhos derivados baseados nesses dados (na totalidade ou em parte), salvo se permitido pelos termos de serviço pertinentes.
+
+8.1.2 Se você usar qualquer API para recuperar dados de um usuário a partir da Google, reconhece e concorda que deve recuperar dados somente com consentimento explícito do usuário e somente quando, e para os fins limitados aos quais, o usuário conceder permissão para fazê-lo.
+
+9. Rescisão do Contrato de licença
+
+9.1 O Contrato de licença continuará a se aplicar até que ocorra uma rescisão sua ou da Google, como definido abaixo.
+
+9.2 Caso queira rescindir o Contrato de licença, você pode fazer isto cessando o uso do Preview e de qualquer credencial de desenvolvedor relevante.
+
+9.3 A Google pode, a qualquer momento, rescindir o Contrato de licença, com ou sem causa, com uma notificação.
+
+9.4 O Contrato de licença será encerrado automaticamente sem aviso ou outras ações na ocorrência de:
+(A) a Google interromper o fornecimento do Preview ou de determinadas partes do Preview aos usuários no país em que você reside ou de onde o serviço é usado; e
+(B) a Google emitir uma versão de lançamento final do Android SDK.
+
+9.5 Quando o Contrato de licença é rescindido, a licença concedida a você no Contrato de licença é finalizada, todo o uso do Preview será interrompido e as provisões dos parágrafos 10, 11, 12 e 14 deverão permanecer indefinidamente.
+
+10. EXCLUSÕES
+
+10.1 VOCÊ COMPREENDE E CONCORDA EXPRESSAMENTE QUE O RISCO DO USO DO PREVIEW É EXCLUSIVAMENTE SEU E QUE O PREVIEW É FORNECIDO NA FORMA EM QUE SE ENCONTRA E COMO DISPONIBILIZADO, SEM GARANTIA DE QUALQUER TIPO DA GOOGLE.
+
+10.2 O USO DO PREVIEW E DE QUALQUER MATERIAL BAIXADO OU OBTIDO DE OUTRO MODO PELO USO DO PREVIEW ESTÁ A SEU CRITÉRIO E RISCO E VOCÊ É O ÚNICO RESPONSÁVEL POR QUALQUER DANO AO SEU SISTEMA OPERACIONAL OU OUTRO DISPOSITIVO OU PELA PERDA DE DADOS QUE RESULTEM DE TAL USO. SEM LIMITAR OS PRECEDENTES, VOCÊ ENTENDE QUE O PREVIEW NÃO É UMA VERSÃO ESTÁVEL E QUE PODE CONTER ERROS, DEFEITOS E VULNERABILIDADES DE SEGURANÇA QUE PODEM RESULTAR EM DANOS SIGNIFICANTES, INCLUINDO A PERDA IRRECUPERÁVEL OU COMPLETA DO USO DO SISTEMA DO COMPUTADOR OU DE OUTROS DISPOSITIVOS.
+
+10.3 A GOOGLE EXCLUI EXPRESSAMENTE TODAS AS GARANTIAS E CONDIÇOES DE QUALQUER TIPO, EXPRESSAS OU IMPLÍCITAS, INCLUINDO, MAS NÃO LIMITADO A, GARANTIAS E CONDIÇÕES DE COMERCIALIZAÇÃO IMPLÍCITAS, ADEQUAÇÃO A UMA FINALIDADE PARTICULAR E A NÃO VIOLAÇÃO.
+
+11. LIMITAÇÃO DE RESPONSABILIDADE
+
+11.1 VOCÊ COMPREENDE E CONCORDA EXPRESSAMENTE QUE A GOOGLE, SUAS SUBSIDIÁRIAS, AFILIADAS E SEUS LICENCIADORES NÃO SERÃO RESPONSABILIZADOS POR VOCÊ SOB QUALQUER TEORIA DE RESPONSABILIDADE POR QUAISQUER DANOS, SEJAM ELES DIRETOS, INDIRETOS, INCIDENTAIS, ESPECIAIS, CONSEQUENCIAIS OU DE EXEMPLO QUE POSSAM INCORRER, INCLUINDO QUALQUER PERDA DE DADOS, INDEPENDENTE DE AVISO À GOOGLE OU A SEUS REPRESENTANTES OU DA NECESSIDADE DE AVISO SOBRE A POSSIBILIDADE DA INCORRÊNCIA DE TAIS PERDAS.
+
+12. Indenização
+
+12.1 Ao limite máximo permitido por lei, você concorda em defender, indenizar e isentar a Google, suas afiliadas e respectivos conselheiros, diretores, empregados e agentes com relação a todas e quaisquer reivindicações, ações, processos ou procedimentos, bem como todas e quaisquer perdas, responsabilidades, danos, custos e despesas (incluindo honorários advocatícios) decorrentes ou provenientes de: (a) seu uso do Preview, (b) qualquer aplicativo desenvolvido no Preview que infrinja direitos de propriedade intelectual de qualquer pessoa, difame qualquer pessoa ou viole seus direitos de publicidade ou privacidade e (c) qualquer não cumprimento deste Contrato de licença.
+
+13. Mudanças no Contrato de licença
+
+13.1 A Google pode realizar mudanças no Contrato de licença à medida que distribui novas versões do Preview. Quando essas mudanças forem realizadas, a Google fará uma nova versão do Contrato de licença disponível no site em que o Preview estiver disponível.
+
+14. Termos legais gerais
+
+14.1 Esse Contrato de licença constitui o contrato legal integral entre você e a Google e rege o uso do Preview (excluindo quaisquer serviços que a Google possa fornecer a você sob um contrato escrito em separado), e substitui inteiramente quaisquer contratos anteriores entre você e a Google em relação ao Preview.
+
+14.2 Você concorda que, se a Google não exercer nem impetrar qualquer direito ou recurso legal que esteja contido no Contrato de licença (ou que a Google detenha direitos nos termos de qualquer lei aplicável), não se considerará esse fato como uma renúncia formal aos direitos da Google e esses direitos ou recursos continuarão disponíveis à Google.
+
+14.3 Se qualquer tribunal de justiça que tiver a competência para decidir sobre esse tema determinar que qualquer cláusula do Contrato de licença é inválida, tal cláusula será removida do contrato sem afetar as cláusulas restantes ou sua vigência. As cláusulas restantes do Contrato de licença continuarão válidas e obrigatórias.
+
+14.4 Você reconhece e concorda que cada membro do grupo de empresas das quais a Google é a empresa controladora deve ser beneficiário terceiro do Contrato de licença e que essas outras empresas terão o poder de aplicar diretamente, e apoiar-se em, qualquer cláusula do Contrato de licença que confira um direito (ou direitos em favor) deles. Além disso, nenhuma outra pessoa nem empresa deve ser beneficiário terceiro do Contrato de licença.
+
+14.5 RESTRIÇÕES DE EXPORTAÇÃO. O PREVIEW ESTÁ SUJEITO ÀS LEIS E NORMAS DE EXPORTAÇÃO DOS ESTADOS UNIDOS. VOCÊ DEVE CUMPRIR TODAS AS LEIS E NORMAS DOMÉSTICAS E INTERNACIONAIS QUE SE APLICAREM AO PREVIEW. ESSAS LEIS INCLUEM RESTRIÇÕES SOBRE DESTINOS, USUÁRIOS FINAIS E USO FINAL.
+
+14.6 O Contrato de licença não pode ser atribuído nem transferido por você sem a aprovação prévia por escrito da Google. Qualquer tentativa de atribuição sem a aprovação será inválida. Você não deve delegar as próprias responsabilidades ou obrigações nos termos do Contrato de licença sem aprovação prévia por escrito da Google.
+
+14.7 O Contrato de licença e sua relação com a Google nos termos do contrato serão regidos pelas leis do estado da Califórnia sem considerar conflitos de disposições legais. Você e a Google concordam em se submeter à competência exclusiva dos tribunais localizados na comarca de Santa Clara, Califórnia, para dirimir quaisquer questões legais decorrentes do Contrato de licença. Não obstante a isso, você concorda que a Google continua habilitada a impetrar medidas cautelares (ou mecanismo legal urgente equivalente) em qualquer jurisdição.
+ </div><!-- sdk terms -->
+
+
+
+ <div id="sdk-terms-form">
+ <p>
+ <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+ <label id="agreeLabel" for="agree">Li e concordo com todos os termos e condições expressos acima</label>
+ </p>
+ <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+ </div>
+
+
+ </div><!-- end TOS -->
+
+
+ <div id="landing">
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>Neste documento</h2>
+ <ol>
+ <li><a href="#sdk">Preview SDK</a></li>
+ <li><a href="#docs">Documentação do desenvolvedor</a></li>
+ <li><a href="#images">Imagens do sistema de hardware</a></li>
+ </ol>
+ </div>
+</div>
+
+
+<p>
+ O Android M Preview SDK inclui ferramentas de desenvolvimento, arquivos de sistema do Android e arquivos da biblioteca
+ para ajudar você a testar o aplicativo e novas APIs da próxima versão da plataforma. Este documento
+ descreve como adquirir os componentes disponíveis para download da prévia para o teste do aplicativo.
+</p>
+
+
+<h2 id="sdk">Preview SDK</h2>
+
+<p>
+ O Preview SDK está disponível para download no <a href="{@docRoot}tools/help/sdk-manager.html">Android SDK Manager</a>. Para obter mais informações
+ sobre o download e a configuração do Preview SDK, consulte <a href="{@docRoot}preview/setup-sdk.html#downloadSdk">Configuração do Preview SDK</a>.
+</p>
+
+
+<h2 id="docs">Documentação do desenvolvedor</h2>
+
+<p>
+ O pacote de download da documentação do desenvolvedor fornece informações de referência de API detalhadas e um relatório de diferença de API para a prévia.
+</p>
+
+<table>
+ <tr>
+ <th scope="col">Descrição</th>
+ <th scope="col">Download / Somas de verificação</th>
+ </tr>
+ <tr id="docs-dl">
+ <td>Android M Preview<br>Documentações do desenvolvedor</td>
+ <td><a href="#top" onclick="onDownload(this)">m-preview-1-developer-docs.zip</a><br>
+ MD5: b65201b0d35416f5a1b7a071b52854a7<br>
+ SHA-1: d47e856aa65e06897e6edd902ad8d2b1f05ac3ec
+ </td>
+ </tr>
+<table>
+
+
+<h2 id="images">Imagens do sistema de hardware</h2>
+
+<p>
+ Essas imagens do sistema permitem que você instale uma versão de prévia da plataforma em um dispositivo físico
+para fins de teste. Ao configurar um dispositivo com uma dessas imagens, é possível instalar e testar o aplicativo
+ para verificar o seu desempenho na próxima versão da plataforma. O processo de instalação de uma imagem do sistema
+ em um dispositivo <em>remove todos os dados do dispositivo</em>. Portanto, deve-se realizar um backup dos dados
+ antes de instalar uma imagem do sistema.
+</p>
+
+<p class="warning">
+ <b>Aviso:</b> as seguintes imagens do sistema Android são prévias e estão sujeitas a alterações. O uso
+ dessas imagens do sistema são governadas pelo Contrato de licença do Android SDK Preview. As imagens do sistema do Android Preview
+ não são versões estáveis e podem conter erros e defeitos que podem resultar
+ em danos aos sistemas do computador, aos dispositivos e aos dados. As imagens do sistema Android Preview
+ não estão sujeitas ao mesmo teste do sistema operacional de fábrica e podem fazer com que o telefone e aplicativos e os serviços
+ instalados parem de funcionar.
+</p>
+
+<table>
+ <tr>
+ <th scope="col">Dispositivo</th>
+ <th scope="col">Download / Somas de verificação</th>
+ </tr>
+ <tr id="hammerhead">
+ <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
+ <td><a href="#top" onclick="onDownload(this)">hammerhead-MPZ44Q-preview-55d76d3a.tgz</a><br>
+ MD5: 9e2631b06c6525e401ceaae3677ff320<br>
+ SHA-1: 55d76d3a379b18f3363f28d8a462c236ab96fc36
+ </td>
+ </tr>
+ <tr id="shamu">
+ <td>Nexus 6 <br>"shamu"</td>
+ <td><a href="#top" onclick="onDownload(this)">shamu-MPZ44Q-preview-c1d6506a.tgz</a><br>
+ MD5: 307cbf9dab0a38df4ab2639d02be12aa<br>
+ SHA-1: c1d6506a74094bdb2f4b8677c7fe4967334f9ea8
+ </td>
+ </tr>
+ <tr id="volantis">
+ <td>Nexus 9 <br>"volantis"</td>
+ <td><a href="#top" onclick="onDownload(this)">volantis-MPZ44Q-preview-d15ad483.tgz</a><br>
+ MD5: fae40377fd999d2b09128665c915264d<br>
+ SHA-1: 7ab05f96093b2cb370b226f65931202714cbc2ca
+ </td>
+ </tr>
+ <tr id="fugu">
+ <td>Nexus Player <br>"fugu"</td>
+ <td><a href="#top" onclick="onDownload(this)">fugu-MPZ44Q-preview-2406ba05.tgz</a><br>
+ MD5: 815902141a85cc65e7725f005cad31d5<br>
+ SHA-1: 2406ba0598dea1e69110497ac0bc8e16789bc8fb
+ </td>
+ </tr>
+</table>
+
+<h3 id="install-image">Instalar uma imagem no dispositivo</h3>
+
+<p>
+ Para usar uma imagem de dispositivo para testes, deve-se instalá-lo em um dispositivo compatível. Siga
+ as instruções abaixo para instalar uma imagem de sistema.
+</p>
+
+<ol>
+ <li>Faça o download e descompacte um dos pacotes de imagem do sistema listados aqui.</li>
+ <li>Faça um backup dos dados do dispositivo que deseja preservar.</li>
+ <li>Siga as instruções em
+ <a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a>
+ para programar em flash a imagem no dispositivo.</li>
+</ol>
+
+<p class="note">
+ <strong>Observação:</strong> ao programar em flash a imagem do sistema de prévia no dispositivo de desenvolvimento,
+ ele é atualizado automaticamente com o próximo lançamento da prévia por meio de atualizações over-the-air (OTA).
+</p>
+
+<h3 id="revertDevice">Reverter um dispositivo para as especificações de fábrica</h3>
+
+<p>
+ Caso queira desinstalar a prévia e reverter o dispositivo para as especificações de fábrica, acesse
+ <a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a> e
+ faça o download da imagem que deseja programar em flash no dispositivo. Siga as instruções nesta página
+ para programar em flash a imagem no dispositivo.
+</p>
+
+ </div><!-- landing -->
+
+</div><!-- relative wrapper -->
+
+
+
+<script>
+ var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/";
+ function onDownload(link) {
+
+ $("#downloadForRealz").html("Download " + $(link).text());
+ $("#downloadForRealz").attr('href', urlRoot + $(link).text());
+
+ $("#tos").fadeIn('fast');
+ $("#landing").fadeOut('fast');
+
+ return true;
+ }
+
+
+ function onAgreeChecked() {
+ /* verify that the TOS is agreed */
+ if ($("input#agree").is(":checked")) {
+ /* reveal the download button */
+ $("a#downloadForRealz").removeClass('disabled');
+ } else {
+ $("a#downloadForRealz").addClass('disabled');
+ }
+ }
+
+ function onDownloadForRealz(link) {
+ if ($("input#agree").is(':checked')) {
+ /*
+ $("#tos").fadeOut('fast');
+ $("#landing").fadeIn('fast');
+ */
+
+ ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html());
+
+ /*
+ location.hash = "";
+ */
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ $(window).hashchange( function(){
+ if (location.hash == "") {
+ location.reload();
+ }
+ });
+
+</script>
diff --git a/docs/html-intl/intl/pt-br/preview/features/app-linking.jd b/docs/html-intl/intl/pt-br/preview/features/app-linking.jd
new file mode 100644
index 0000000..17a9896
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/preview/features/app-linking.jd
@@ -0,0 +1,123 @@
+page.title=Links de aplicativos
+page.image=images/cards/card-app-linking_2x.png
+page.keywords=applinking, deeplinks, intents
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>Neste documento</h2>
+ <ol>
+ <li><a href="#web-assoc">Declarar uma associação de site</a></li>
+ <li><a href="#verfy-links">Solicitar verificação de link de aplicativo</a></li>
+ <li><a href="#user-manage">Gerenciar configurações de link de aplicativo</a></li>
+ </ol>
+ </div>
+</div>
+
+<p>
+ O sistema de intenções do Android é um mecanismo flexível para possibilitar que aplicativos lidem com conteúdos e solicitações.
+ Vários aplicativos podem declarar padrões de URI correspondentes em seus filtros de intenções. Quando um usuário clica em um
+ link da web que não tem um manipulador de inicialização padrão, a plataforma pode exibir um diálogo para
+ o usuário selecionar entre uma lista de aplicativos que declararam filtros de intenções correspondentes.
+</p>
+
+<p>
+ O Android M Developer Preview introduz suporte para links de aplicativos, que aprimora
+ a manipulação de links existentes, permitindo que desenvolvedores de aplicativos associem um aplicativo a um domínio da web pertencente a eles. Quando
+ os desenvolvedores criam esta associação, a plataforma pode automaticamente determinar o aplicativo padrão usado
+ para lidar com um link da web particular e ignorar a solicitação aos usuários.
+</p>
+
+
+<h2 id="web-assoc">Declarar uma associação de site</h2>
+
+<p>
+ Os donos de sites da web devem declarar as associações aos aplicativos para estabelecer um link de aplicativo. O dono do site
+ declara a relação com um aplicativo hospedando um arquivo JSON chamado {@code statements.json} no
+ local bem conhecido no domínio:
+</p>
+
+<pre>http://&lt;domain&gt;:&lt;optional port&gt;/.well-known/statements.json</pre>
+
+<p class="note">
+ <strong>Observação:</strong>
+ durante o período do M Developer Preview, o arquivo JSON é verificado por meio de protocolo http. Para
+ o lançamento oficial da plataforma, o arquivo é verificado com o protocolo http criptografado.
+</p>
+
+<p>
+ Este arquivo JSON indica o aplicativo do Android que deve ser usado como o manipulador padrão para URLs
+ neste domínio. Ele identifica o aplicativo com base nestes campos:
+</p>
+
+<ul>
+ <li>{@code package_name}: o nome do pacote declarado no manifesto do arquivo.</li>
+
+ <li>{@code sha256_cert_fingerprints}: a impressão digital SHA256 do certificado assinado do aplicativo.
+ É possível usar o Java Keytool para gerar a impressão digital usando o seguinte comando:
+ <pre>keytool -list -v -keystore my-release-key.keystore</pre>
+ </li>
+</ul>
+
+<p>
+ A seguinte lista de arquivos exibe um exemplo de conteúdo e formato
+ de um arquivo {@code statements.json}:
+</p>
+
+<pre>
+[{
+ "relation": ["delegate_permission/common.handle_all_urls"],
+ "target": {
+ "namespace": "android_app",
+ "package_name": "<strong>&lt;package name&gt;</strong>",
+ "sha256_cert_fingerprints": ["<strong>6C:EC:C5:0E:34:AE....EB:0C:9B</strong>"]
+ }
+}]
+</pre>
+
+
+<h2 id="verfy-links">Solicitar verificação de link de aplicativo</h2>
+
+<p>
+ Um aplicativo pode solicitar que a plataforma verifique automaticamente quaisquer links de aplicativo relacionados aos arquivos {@code statements.json}
+ hospedados nos respectivos domínios da web que são definidos pelos nomes de host
+ nos elementos de dados dos seus filtros de intenções. Para solicitar a verificação de link de aplicativo, adicione um atributo {@code android:autoVerify}
+ a cada filtro de intenção desejado no manifesto, como exibido no seguinte fragmento
+ de código do manifesto:
+</p>
+
+<pre>
+&lt;activity ...&gt;
+ &lt;intent-filter <strong>android:autoVerify="true"</strong>&gt;
+ &lt;action android:name="android.intent.action.VIEW" /&gt;
+ &lt;category android:name="android.intent.category.DEFAULT" /&gt;
+ &lt;category android:name="android.intent.category.BROWSABLE" /&gt;
+ &lt;data android:scheme="http" android:host="www.android.com" /&gt;
+ &lt;data android:scheme="https" android:host="www.android.com" /&gt;
+ &lt;/intent-filter&gt;
+&lt;/activity&gt;
+</pre>
+
+<p>
+ Quando o atributo {@code android:autoVerify} está presente em um manifesto do aplicativo, a plataforma
+ tenta verificar os links do aplicativo quando o aplicativo é instalado. Se a plataforma não conseguir
+ verificar os links do aplicativo, o aplicativo não será definido como o aplicativo preferencial para lidar com os links da web. Na próxima vez
+ que um usuário tentar abrir um dos links, a plataforma voltará a apresentar ao usuário
+ uma caixa de diálogo.
+</p>
+
+<p class="note">
+ <strong>Observação:</strong> no teste, há chances de ocorrer um falso positivo se a verificação
+ falhar, mas o usuário explicitamente permitiu que o aplicativo abrisse links sem solicitar, usando
+ o aplicativo do sistema Settings (Configurações). Neste caso, nenhum diálogo é exibido e o link vai direto para o
+ aplicativo, mas somente devido à configuração do usuário, e não porque a verificação foi bem-sucedida.
+</p>
+
+
+<h2 id="user-manage">Gerenciar configurações de link de aplicativo</h2>
+
+<p>
+ Os usuários podem alterar as configurações de link de aplicativo para que os URLs sejam tratados da maneira que preferirem. É possível revisar e
+ gerenciar os links de aplicativo no aplicativo Settings (Configurações) do sistema, em <strong>Settings (Configurações) &gt; Apps (Aplicativos) &gt; App Info (Informações do aplicativo) &gt;
+ Open by default (Abrir por padrão)</strong>.
+</p>
diff --git a/docs/html-intl/intl/pt-br/preview/index.jd b/docs/html-intl/intl/pt-br/preview/index.jd
new file mode 100644
index 0000000..1e0252f
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/preview/index.jd
@@ -0,0 +1,67 @@
+page.title=Android M Developer Preview
+page.tags="preview",
+meta.tags="preview, M preview", androidm
+fullpage=true
+section.landing=true
+header.hide=1
+footer.hide=1
+@jd:body
+
+<section class="dac-expand dac-hero dac-light" >
+ <div class="wrap">
+ <div class="cols dac-hero-content">
+ <div class="col-9of16 col-push-7of16 dac-hero-figure">
+ <img class="dac-hero-image" src="{@docRoot}images/home/devices-hero_620px_2x.png" srcset="{@docRoot}images/home/devices-hero_620px.png 1x,
+ {@docRoot}images/home/devices-hero_620px_2x.png 2x">
+ </div>
+ <div class="col-7of16 col-pull-9of16">
+ <h1 class="dac-hero-title">Android M Developer Preview</h1>
+ <p class="dac-hero-description">
+ Prepare-se para a próxima versão do Android. Teste os aplicativos no Nexus 5, 6, 9 e
+ Player. Explore o que há de novo &mdash; <strong>permissões em tempo de execução</strong>,
+ recursos de economia de energia <strong>aplicativo em espera</strong> e <strong>soneca</strong>, novas
+ <strong>tecnologias de auxílio</strong> e muito mais.
+ </p>
+
+ <a class="dac-hero-cta" href="{@docRoot}preview/overview.html">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Comece!
+</a><br>
+ </div>
+ </div>
+ <div class="dac-section dac-small">
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="collection:preview/landing/resources"
+ data-cardSizes="6x2"
+ data-maxResults="6"></div>
+ </div>
+ </div>
+</section>
+
+<section class="dac-section dac-gray"><div class="wrap">
+ <h1 class="dac-section-title">Recursos</h1>
+ <div class="dac-section-subtitle">
+ Informações essenciais para ajudar você a preparar os aplicativos para Android M.
+ </div>
+
+ <div class="resource-widget resource-flow-layout col-16"
+ data-query="collection:preview/landing/more"
+ data-cardSizes="6x6"
+ data-maxResults="16"></div>
+
+ <ul class="dac-section-links">
+ <li class="dac-section-link">
+ <a href="https://code.google.com/p/android-developer-preview/">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Relate problemas
+</a>
+ </li>
+ <li class="dac-section-link"><a href="http://g.co/dev/AndroidMDevPreview">
+ <span class="dac-sprite dac-auto-chevron"></span>
+ Junte-se à comunidade do G+
+</a>
+ </li>
+ </ul>
+ </div>
+</section>
+
diff --git a/docs/html-intl/intl/pt-br/preview/license.jd b/docs/html-intl/intl/pt-br/preview/license.jd
new file mode 100644
index 0000000..9e28b8a
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/preview/license.jd
@@ -0,0 +1,143 @@
+page.title=Contrato de licença
+
+@jd:body
+
+<p>
+Para começar a usar o Android SDK Preview, você deve concordar com os seguintes termos e condições.
+Como descrito abaixo, observe que isto é uma versão de prévia do Android SDK, sujeita a alterações, que deve ser usada a seu risco. O Android SDK Preview não é uma versão estável e pode conter erros e defeitos que podem resultar em danos sérios aos sistemas de computador, aos dispositivos e aos dados.
+</p>
+
+<p>
+Este é o contrato de licença do Android SDK Preview (o “Contrato de Licença”).
+</p>
+<div class="sdk-terms" style="height:auto;border:0;padding:0;width:700px">
+1. Introdução
+
+1.1 O Android SDK Preview (que este Contrato de licença chama de "Preview", incluindo especificamente os arquivos de sistema do Android, APIs integradas e arquivos da biblioteca Preview, se e quando estiverem disponíveis) é licenciado por meio da concordância com os termos deste contrato. O Contrato de licença forma um vínculo contratual legal entre o contratante e a Google em relação ao uso do Preview.
+
+1.2 "Android" refere-se à pilha de software do Android para dispositivos, conforme disponibilizado no Projeto de código aberto do Android, localizado no URL a seguir: http://source.android.com/, atualizado periodicamente.
+
+1.3 "Google" refere-se à Google Inc, uma corporação de Delaware, com sede em 1600 Amphitheatre Parkway, Mountain View, CA 94043, Estados Unidos.
+
+2. Aceitação do Contrato de Licença
+
+2.1 A fim de usar o Preview, é necessário concordar com este Contrato de licença. O uso do Preview é proibido àqueles que não concordam com este Contrato de licença.
+
+2.2 Ao clicar em aceitar e/ou usar o Preview, você concorda com os termos do Contrato de licença
+
+2.3 É proibido o uso do Preview e a aceitação deste contrato pelo indivíduo que tenha impedimento legal sobre o recebimento do Preview sob as leis dos Estados Unidos ou de outros países, incluindo o país de residência ou no qual usa o Preview.
+
+2.4 Se for usar o Preview internamente na empresa ou organização, você deverá concordar com o vínculo com este contrato em nome do empregador ou de outra entidade e declarar e garantir que tem total autoridade legal para tanto. Se você não tem a autoridade necessária, não deve concordar com este contrato nem usar o Preview em nome do empregador ou de outra entidade.
+
+3. Licença do Preview da Google
+
+3.1 Sujeito aos termos do Contrato de licença, a Google confere uma licença limitada, revogável, livre de taxas, intransmissível, não sub-licenciável e não exclusiva para o uso apenas do Preview, pessoal ou internamente dentro da sua empresa ou organização, para fins de desenvolvimento de aplicativos executados na plataforma do Android.
+
+3.2 Você concorda que a Google ou terceiros detêm todos os direitos legais, títulos e interesses relativos ao Preview, incluindo quaisquer direitos de propriedade intelectual que subsistam no Preview. "Direitos de propriedade intelectual" se referem a todo e qualquer direito sob as leis de patentes, de direitos autorais, de segredo comercial, de marca registrada e todos os outros direitos de propriedade. A Google reserva todos os direitos não conferidos expressamente a você.
+
+3.3 O uso do Preview não é autorizado para qualquer finalidade não expressamente permitida por este Contrato de licença. Salvo na extensão exigida por licenças aplicáveis de terceiros, é proibido: (a) copiar (exceto para fins de cópia de segurança), modificar, adaptar, redistribuir, descompilar, fazer engenharia reversa, desmontar ou criar trabalhos derivados do Preview ou qualquer parte dele; ou (b) carregar qualquer parte do Preview em um aparelho celular ou outro dispositivo de hardware, exceto em computador pessoal, combinar qualquer parte do Preview com outros softwares ou distribuir qualquer software ou dispositivo que contenha uma parte do Preview.
+
+3.4 Você concorda que não tomará quaisquer medidas que possam causar ou resultar em fragmentação do Android, incluindo, sem limitar-se, a distribuição e a participação na criação ou na promoção, sob quaisquer formas, de um conjunto de desenvolvimento de software derivado do Preview.
+
+3.5 O uso, a reprodução e a distribuição de componentes do Preview licenciado sob licença de software de código aberto são regidos exclusivamente pelos termos daquela licença de software de código aberto, e não por este Contrato de licença. Você concorda em manter uma licença em bom estado para as licenças de software de código aberto sob todos os direitos concedidos e deter quaisquer ações que possam limitar, suspender ou romper tais direitos.
+
+3.6 Você concorda que a forma e a natureza do SDK que a Google fornece podem mudar sem aviso prévio e que as versões futuras do SDK podem ser incompatíveis com aplicativos desenvolvidos em versões anteriores do SDK. Você concorda que a Google pode cessar (permanente ou temporariamente) o fornecimento do Preview (ou quaisquer recursos dentro dele) a você ou a usuários em geral sob critério exclusivo da Google, sem aviso prévio.
+
+3.7 Nada neste Contrato de licença confere o direito de uso de quaisquer nomes comerciais, marcas comerciais, marcas de serviço, logomarcas, nomes de domínios e outros recursos de marcas especiais da Google.
+
+3.8 Você concorda que não removerá, ocultará nem alterará quaisquer observações de direitos de propriedade (incluindo observações de direitos autorais e de marcas registradas) que possam estar afixadas ou contidas no Preview.
+
+4. Uso do Preview por você
+
+4.1 A Google compreende que nada no Contrato de licença da a ela direito, título nem interesse no usuário (ou em seus licenciadores), sob o presente Contrato de licença, no que tange ao desenvolvimento de aplicativos de software através do uso do Preview, incluindo quaisquer direitos de propriedade intelectual que subsistam nos referidos aplicativos.
+
+4.2 Você concorda em usar o Preview e desenvolver aplicativos somente para as finalidades permitidas por (a) este Contrato de licença e (b) quaisquer leis, normas, diretrizes geralmente aceitas ou orientações aplicáveis nas jurisdições relevantes (incluindo quaisquer leis acerca da exportação e da importação de dados ou softwares nos Estados Unidos ou em outros países relevantes).
+
+4.3 Você concorda que, se usar o Preview para o desenvolvimento de aplicativos, deverá proteger a privacidade e os direitos legais dos usuários. Se nomes de usuário, senhas ou outras informações de acesso ou informações pessoais forem fornecidos ao aplicativo, deve-se informá-los de que tais dados estarão disponíveis para o aplicativo, além de fornecer observações de privacidade e proteção legalmente adequadas a esses usuários. Se o aplicativo armazenar informações pessoais ou confidenciais fornecidas pelos usuários, deve fazê-lo com segurança. Se o usuário fornecer informações da conta do Google, o aplicativo poderá usar essas informações exclusivamente para acessar a conta da Google do usuário quando houver autorização para fazê-lo e para os fins limitados pela autorização.
+
+4.4 Você concorda que não se envolverá em qualquer atividade com o Preview, incluindo o desenvolvimento e a distribuição de um aplicativo que interfira, perturbe, danifique ou acesse, de modo não autorizado, servidores, redes ou outras propriedades ou serviços da Google ou qualquer outro terceiro.
+
+4.5 Você concorda que é exclusivamente responsável por (e que a Google não tem qualquer responsabilidade com você ou terceiro) quaisquer dados, conteúdo ou recursos que criar, transmitir ou exibir por meio do Android e/ou de aplicativos do Android e pelas consequências que suas ações (incluindo perda ou dano que a Google possa sofrer) podem gerar.
+
+4.6 Você concorda que é exclusivamente responsável por (e que a Google não tem qualquer responsabilidade com você ou terceiro) qualquer violação das obrigações exigidas neste Contrato de licença, qualquer contrato ou termos de serviço aplicáveis a terceiros, qualquer lei ou norma aplicável e pelas consequências (incluindo a perda ou dano que a Google ou qualquer terceiro possa sofrer) de quaisquer violações.
+
+4.7 O Preview está em desenvolvimento e o seu teste e feedback são uma parte importante deste processo. Ao usar o Preview, você está ciente de que a implementação de alguns recursos ainda estão em desenvolvimento e que não se deve confiar que o Preview tem a funcionalidade completa de uma versão estável. Você concorda em não distribuir nem enviar publicamente quaisquer aplicativos usando este Preview, pois ele não será mais suportado após o lançamento oficial do Android SDK.
+
+5. Suas credenciais de desenvolvedor
+
+5.1 Você é responsável pela manutenção da confidencialidade de quaisquer credenciais de desenvolvedor que possam ser emitidas pela Google ou escolhidas por você e será o único responsável por todos os aplicativos que forem desenvolvidos sob suas credenciais de desenvolvedor.
+
+6. Privacidade e informações
+
+6.1 A fim de inovar e aprimorar continuamente o Preview, a Google pode coletar certas estatísticas de uso do software, incluindo, sem limitar-se, um identificador exclusivo, endereço IP associado, número de versão do software e informações sobre quais ferramentas e/ou serviços no Preview estão sendo usados e como estão sendo usados. Antes de coletar quaisquer dessas informações, o Preview o notificará e buscará seu consentimento. Se você recusar, as informações não serão coletadas.
+
+6.2 Os dados coletados são examinados coletivamente para aprimorar o Preview e são mantidos em conformidade com a Política de privacidade da Google acessível em http://www.google.com/policies/privacy/.
+
+7. Aplicativos de terceiros
+
+7.1 Ao usar o Preview para executar aplicativos desenvolvidos por terceiros ou que acessam dados, conteúdo ou recursos fornecidos por terceiros, você concorda que a Google não é responsável por tais aplicativos, dados, conteúdo ou recursos. Você compreende que quaisquer dados, conteúdo ou recursos passíveis de aceitação por meio de tais aplicativos de terceiros imputam responsabilidade exclusiva ao indivíduo que os originou. A Google não é responsável por qualquer perda ou dano que possa ocorrer como resultado do uso ou acesso de quaisquer aplicativos, dados, conteúdo ou recursos de terceiros.
+
+7.2 Você deve estar ciente de que os dados, conteúdo e recursos apresentados a você por aplicativos de terceiros podem ser protegidos pelos direitos de propriedade intelectual de posse dos fornecedores (ou de outras pessoas ou empresas em seus nomes). Não é permitido modificar, alugar, arrendar, emprestar, vender, distribuir nem criar trabalhos derivados com base nestes dados, conteúdo ou recursos (na totalidade ou em parte), salvo se houver permissão explícita especificada pelos respectivos detentores de direitos.
+
+7.3 Você reconhece que o uso de tais aplicativos, dados, conteúdo ou recursos de terceiros pode estar sujeito a termos adicionais entre você e o terceiro em questão.
+
+8. Uso de APIs da Google
+
+8.1 APIs da Google
+
+8.1.1 Ao usar qualquer API para recuperar dados da Google, você reconhece que eles podem ser protegidos por direitos de propriedade intelectual de posse da Google ou dos terceiros que fornecem os dados (ou de pessoas ou empresas em nomes deles). O uso de tal API pode estar sujeito a termos de serviço adicionais. Não é permitido modificar, alugar, arrendar, emprestar, vender, distribuir nem criar trabalhos derivados baseados nesses dados (na totalidade ou em parte), salvo se permitido pelos termos de serviço pertinentes.
+
+8.1.2 Se você usar qualquer API para recuperar dados de um usuário a partir da Google, reconhece e concorda que deve recuperar dados somente com consentimento explícito do usuário e somente quando, e para os fins limitados aos quais, o usuário conceder permissão para fazê-lo.
+
+9. Rescisão do Contrato de licença
+
+9.1 O Contrato de licença continuará a se aplicar até que ocorra uma rescisão sua ou da Google, como definido abaixo.
+
+9.2 Caso queira rescindir o Contrato de licença, você pode fazer isto cessando o uso do Preview e de qualquer credencial de desenvolvedor relevante.
+
+9.3 A Google pode, a qualquer momento, rescindir o Contrato de licença, com ou sem causa, com uma notificação.
+
+9.4 O Contrato de licença será encerrado automaticamente sem aviso ou outras ações na ocorrência de:
+(A) a Google interromper o fornecimento do Preview ou de determinadas partes do Preview aos usuários no país em que você reside ou de onde o serviço é usado; e
+(B) a Google emitir uma versão de lançamento final do Android SDK.
+
+9.5 Quando o Contrato de licença é rescindido, a licença concedida a você no Contrato de licença é finalizada, todo o uso do Preview será interrompido e as provisões dos parágrafos 10, 11, 12 e 14 deverão permanecer indefinidamente.
+
+10. EXCLUSÕES
+
+10.1 VOCÊ COMPREENDE E CONCORDA EXPRESSAMENTE QUE O RISCO DO USO DO PREVIEW É EXCLUSIVAMENTE SEU E QUE O PREVIEW É FORNECIDO NA FORMA EM QUE SE ENCONTRA E COMO DISPONIBILIZADO, SEM GARANTIA DE QUALQUER TIPO DA GOOGLE.
+
+10.2 O USO DO PREVIEW E DE QUALQUER MATERIAL BAIXADO OU OBTIDO DE OUTRO MODO PELO USO DO PREVIEW ESTÁ A SEU CRITÉRIO E RISCO E VOCÊ É O ÚNICO RESPONSÁVEL POR QUALQUER DANO AO SEU SISTEMA OPERACIONAL OU OUTRO DISPOSITIVO OU PELA PERDA DE DADOS QUE RESULTEM DE TAL USO. SEM LIMITAR OS PRECEDENTES, VOCÊ ENTENDE QUE O PREVIEW NÃO É UMA VERSÃO ESTÁVEL E QUE PODE CONTER ERROS, DEFEITOS E VULNERABILIDADES DE SEGURANÇA QUE PODEM RESULTAR EM DANOS SIGNIFICANTES, INCLUINDO A PERDA IRRECUPERÁVEL OU COMPLETA DO USO DO SISTEMA DO COMPUTADOR OU DE OUTROS DISPOSITIVOS.
+
+10.3 A GOOGLE EXCLUI EXPRESSAMENTE TODAS AS GARANTIAS E CONDIÇOES DE QUALQUER TIPO, EXPRESSAS OU IMPLÍCITAS, INCLUINDO, MAS NÃO LIMITADO A, GARANTIAS E CONDIÇÕES DE COMERCIALIZAÇÃO IMPLÍCITAS, ADEQUAÇÃO A UMA FINALIDADE PARTICULAR E A NÃO VIOLAÇÃO.
+
+11. LIMITAÇÃO DE RESPONSABILIDADE
+
+11.1 VOCÊ COMPREENDE E CONCORDA EXPRESSAMENTE QUE A GOOGLE, SUAS SUBSIDIÁRIAS, AFILIADAS E SEUS LICENCIADORES NÃO SERÃO RESPONSABILIZADOS POR VOCÊ SOB QUALQUER TEORIA DE RESPONSABILIDADE POR QUAISQUER DANOS, SEJAM ELES DIRETOS, INDIRETOS, INCIDENTAIS, ESPECIAIS, CONSEQUENCIAIS OU DE EXEMPLO QUE POSSAM INCORRER, INCLUINDO QUALQUER PERDA DE DADOS, INDEPENDENTE DE AVISO À GOOGLE OU A SEUS REPRESENTANTES OU DA NECESSIDADE DE AVISO SOBRE A POSSIBILIDADE DA INCORRÊNCIA DE TAIS PERDAS.
+
+12. Indenização
+
+12.1 Ao limite máximo permitido por lei, você concorda em defender, indenizar e isentar a Google, suas afiliadas e respectivos conselheiros, diretores, empregados e agentes com relação a todas e quaisquer reivindicações, ações, processos ou procedimentos, bem como todas e quaisquer perdas, responsabilidades, danos, custos e despesas (incluindo honorários advocatícios) decorrentes ou provenientes de: (a) seu uso do Preview, (b) qualquer aplicativo desenvolvido no Preview que infrinja direitos de propriedade intelectual de qualquer pessoa, difame qualquer pessoa ou viole seus direitos de publicidade ou privacidade e (c) qualquer não cumprimento deste Contrato de licença.
+
+13. Mudanças no Contrato de licença
+
+13.1 A Google pode realizar mudanças no Contrato de licença à medida que distribui novas versões do Preview. Quando essas mudanças forem realizadas, a Google fará uma nova versão do Contrato de licença disponível no site em que o Preview estiver disponível.
+
+14. Termos legais gerais
+
+14.1 Esse Contrato de licença constitui o contrato legal integral entre você e a Google e rege o uso do Preview (excluindo quaisquer serviços que a Google possa fornecer a você sob um contrato escrito em separado), e substitui inteiramente quaisquer contratos anteriores entre você e a Google em relação ao Preview.
+
+14.2 Você concorda que, se a Google não exercer nem impetrar qualquer direito ou recurso legal que esteja contido no Contrato de licença (ou que a Google detenha direitos nos termos de qualquer lei aplicável), não se considerará esse fato como uma renúncia formal aos direitos da Google e esses direitos ou recursos continuarão disponíveis à Google.
+
+14.3 Se qualquer tribunal de justiça que tiver a competência para decidir sobre esse tema determinar que qualquer cláusula do Contrato de licença é inválida, tal cláusula será removida do contrato sem afetar as cláusulas restantes ou sua vigência. As cláusulas restantes do Contrato de licença continuarão válidas e obrigatórias.
+
+14.4 Você reconhece e concorda que cada membro do grupo de empresas das quais a Google é a empresa controladora deve ser beneficiário terceiro do Contrato de licença e que essas outras empresas terão o poder de aplicar diretamente, e apoiar-se em, qualquer cláusula do Contrato de licença que confira um direito (ou direitos em favor) deles. Além disso, nenhuma outra pessoa nem empresa deve ser beneficiário terceiro do Contrato de licença.
+
+14.5 RESTRIÇÕES DE EXPORTAÇÃO. O PREVIEW ESTÁ SUJEITO ÀS LEIS E NORMAS DE EXPORTAÇÃO DOS ESTADOS UNIDOS. VOCÊ DEVE CUMPRIR TODAS AS LEIS E NORMAS DOMÉSTICAS E INTERNACIONAIS QUE SE APLICAREM AO PREVIEW. ESSAS LEIS INCLUEM RESTRIÇÕES SOBRE DESTINOS, USUÁRIOS FINAIS E USO FINAL.
+
+14.6 O Contrato de licença não pode ser atribuído nem transferido por você sem a aprovação prévia por escrito da Google. Qualquer tentativa de atribuição sem a aprovação será inválida. Você não deve delegar as próprias responsabilidades ou obrigações nos termos do Contrato de licença sem aprovação prévia por escrito da Google.
+
+14.7 O Contrato de licença e sua relação com a Google nos termos do contrato serão regidos pelas leis do estado da Califórnia sem considerar conflitos de disposições legais. Você e a Google concordam em se submeter à competência exclusiva dos tribunais localizados na comarca de Santa Clara, Califórnia, para dirimir quaisquer questões legais decorrentes do Contrato de licença. Não obstante a isso, você concorda que a Google continua habilitada a impetrar medidas cautelares (ou mecanismo legal urgente equivalente) em qualquer jurisdição.
+
+
+</div> \ No newline at end of file
diff --git a/docs/html-intl/intl/pt-br/preview/samples.jd b/docs/html-intl/intl/pt-br/preview/samples.jd
new file mode 100644
index 0000000..a664837
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/preview/samples.jd
@@ -0,0 +1,70 @@
+page.title=Exemplos
+page.image=images/cards/samples-new_2x.png
+@jd:body
+
+<p>
+ Os seguintes exemplos de código são fornecidos para o M Developer Preview. Para fazer o download
+ dos exemplos no Android Studio, selecione a opção do menu <b>File (Arquivo) &gt; Import Samples (Importar exemplos)</b>.
+</p>
+
+<p class="note">
+ <strong>Observação:</strong> estes projetos disponíveis para download foram feitos
+para serem usados com Gradle e Android Studio.
+</p>
+
+
+<h3 id="RuntimePermissions">Permissões em tempo de execução</h3>
+
+<p>
+ O Android M altera a maneira como as permissões do sistema funcionam. Os usuários são solicitados a aprovar
+ as permissões em tempo de execução em vez de aprovar durante a instalação. Este exemplo mostra como solicitar
+ essas permissões.
+</p>
+
+<p><a href="https://github.com/googlesamples/android-RuntimePermissions">Obtenha isto no GitHub</a></p>
+
+<h3 id="ConfirmCredentials">Confirmação de credencial</h3>
+
+<p>
+ Este exemplo demonstra como usar as credenciais do dispositivo como um método de autenticação no aplicativo.
+</p>
+
+<p><a href="https://github.com/googlesamples/android-ConfirmCredential">Obtenha isto
+no GitHub</a></p>
+
+<h3 id="FingerprintDialog">Diálogo de impressão digital</h3>
+
+<p>
+ Este exemplo demonstra como reconhecer as impressões digitais registradas para autenticar o usuário
+ no aplicativo.
+</p>
+
+<p><a href="https://github.com/googlesamples/android-FingerprintDialog">Obtenha isto no GitHub</a></p>
+
+<h3 id="AutomaticBackup">Backup automático para aplicativos</h3>
+
+<p>
+ O Android M introduz o backup automático para as configurações de aplicativos. Este exemplo demonstra como adicionar
+ regras de filtro a um aplicativo para gerenciar o backup de configurações.
+</p>
+
+<p><a href="https://github.com/googlesamples/android-AutoBackupForApps">Obtenha isto no GitHub</a></p>
+
+<h3 id="CameraRaw">Câmera 2 Bruta</h3>
+
+<p>
+ Demonstra como usar a API <code>Camera2</code> API para capturar buffers de câmera RAW e salvá-los
+ como arquivos <code>DNG</code>.
+</p>
+
+<p><a href="https://github.com/googlesamples/android-Camera2Raw">Obtenha isto no GitHub</a></p>
+
+<h3 id="ActiveNotification">Notificação ativa</h3>
+
+<p>
+ Este exemplo demonstra como o
+ <a href="{@docRoot}reference/android/app/NotificationManager.html"><code>NotificationManager</code></a>
+ pode dizer quantas notificações o aplicativo está exibindo.
+</p>
+
+<p><a href="https://github.com/googlesamples/android-ActiveNotifications">Obtenha isto no GitHub</a></p>
diff --git a/docs/html-intl/intl/pt-br/preview/setup-sdk.jd b/docs/html-intl/intl/pt-br/preview/setup-sdk.jd
new file mode 100644
index 0000000..894fe43
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/preview/setup-sdk.jd
@@ -0,0 +1,207 @@
+page.title=Configuração do Preview SDK
+page.image=images/cards/card-set-up_16-9_2x.png
+
+@jd:body
+
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>Neste documento</h2>
+ <ol>
+ <li><a href="#get-as13">Obter o Android Studio 1.3</a></li>
+ <li><a href="#get-sdk">Obter o Preview SDK</a></li>
+ <li><a href="#create-update">Criar ou atualizar um projeto</a></li>
+ <li><a href="#setup-test">Configurar para teste</a></li>
+ </ol>
+ </div>
+</div>
+
+<p>O M Developer Preview SDK está disponível a partir do Android SDK Manager.
+Este documento assume que você está familiarizado com o desenvolvimento de aplicativos do Android,
+como o uso do Android SDK Manager e criação de projetos. Caso seja novo no
+Android, consulte a lição de treinamento <a href="{@docRoot}training/basics/firstapp/index.html">Como criar o primeiro
+aplicativo</a> primeiro.</a></p>
+
+<h2 id="get-as13">Obter o Android Studio 1.3</h2>
+
+<p>A prévia de desenvolvedor é melhor usada com o Android Studio 1.3, que está no estado
+de prévia. É altamente recomendado que você instale a versão de prévia
+do Android Studio 1.3 para que funcione com o Preview SDK.</p>
+
+<p class="caution"><strong>Cuidado:</strong> a prévia canário do Android
+Studio 1.3 ainda está em desenvolvimento ativo. Caso esteja usando a máquina de desenvolvimento principal
+para testar a prévia de desenvolvedor, é possível criar uma segunda instalação
+do Android Studio para usar em testes.</p>
+
+<p>Para instalar a prévia do Android Studio 1.3:</p>
+
+<ol>
+ <li>Faça o download e inicie o <a href="{@docRoot}tools/studio/index.html">Android
+ Studio</a>.
+ </li>
+
+ <li>Abra a janela <strong>Settings (Configurações)</strong> (no Windows, é possível fazer isto
+ escolhendo <strong>File (Arquivo) &gt; Settings (Configurações)</strong>). Escolha o painel
+ <strong>Appearance &amp; Behavior (Aparência e comportamento) &gt; System
+ Settings (Configurações do sistema) &gt; Updates (Atualizações)</strong>.
+
+ <p class="aside">No OSX, é possível encontrar o painel <strong>Appearance &amp;
+ Behavior (Aparência e comportamento)</strong>
+ na janela <strong>Preferences (Preferências)</strong> do Android Studio.</p>
+ </li>
+
+ <li> No painel <strong>Updates (Atualizações)</strong>, escolha a opção
+ <strong>Automatically check updates for: Canary Channel (Verificar atualizações automaticamente para: canal canário)</strong>.
+ </li>
+
+ <li>No painel <strong>Updates (Atualizações)</strong>, selecione <strong>Check Now (Verificar agora)</strong>
+ para verificar a versão mais recente da versão canário. Faça o download e instale a versão
+ quando solicitado.
+ </li>
+</ol>
+
+<h2 id="get-sdk">Obter o Preview SDK</h2>
+
+<p>Para adicionar os componentes do Preview SDK ao ambiente de desenvolvimento:</p>
+
+<ol>
+ <li>Inicie a prévia do Android Studio 1.3.
+ </li>
+
+ <li>Abra a janela <strong>Settings (Configurações)</strong> (no Windows, é possível fazer isto
+ escolhendo <strong>File (Arquivo) &gt; Settings (Configurações)</strong>). Escolha o painel
+ <strong>Appearance &amp; Behavior (Aparência e comportamento) &gt; System
+ Settings (Configurações do sistema) &gt; Updates (Atualizações)</strong>.
+
+ <p class="aside">No OSX, é possível encontrar o painel <strong>Appearance &amp;
+ Behavior (Aparência e comportamento)</strong>
+ na janela <strong>Preferences (Preferências)</strong> do Android Studio.</p>
+ </li>
+
+ <li>No painel <strong>Updates (Atualizações)</strong>, escolha a opção
+ <strong>Automatically check updates for: Canary Channel (Verificar atualizações automaticamente para: canal canário)</strong> e
+ <strong>Automatically check atualização for Android SDK: Preview Channel (Verificar atualizações automaticamente para: canal de pré-visualização)</strong>.
+ </li>
+
+ <li>Inicie o <strong>Android SDK Manager</strong>. (Com o Android Studio 1.3,
+ o SDK Manager está integrado no Android Studio, em vez de ser
+ um aplicativo independente.)
+ </li>
+
+ <li>Na seção <strong>Platforms (Plataformas)</strong>, selecione <strong>Android MNC
+ Preview</strong>.
+ </li>
+
+ <li>Na seção <strong>Tools (Ferramentas)</strong>, selecione o Android <strong>
+SDK Tools</strong>, <strong>Platform-tools</strong> e
+<strong>Build-tools</strong> mais recentes.
+ </li>
+
+ <li>Clique em <strong>Install packages (Instalar pacotes)</strong> e aceite o contrato de licença
+ para todos os pacotes.
+ </li>
+
+ <li>Verifique se o M Developer Preview está instalado abrindo a janela <strong>
+Settings (Configurações)</strong> e escolhendo o painel <strong>Appearance &amp; Behavior (Aparência e comportamento)
+&gt; System Settings (Configurações do sistema) &gt; Android SDK</strong>.</li>
+
+ <li>No painel <strong>Android SDK</strong>, escolha
+ a guia <strong>SDK Platforms (Plataformas SDK)</strong>. <strong>Android MNC
+ Preview</strong> deve estar listado como <em>Installed (Instalado)</em>. Além disso, abra a guia
+ <strong>SDK Tools (Ferramentas SDK)</strong> para verificar se as ferramentas mais recentes
+ estão instaladas.
+ </li>
+</ol>
+<p>Após concluir estas etapas, os componentes de prévia estarão disponíveis
+ no ambiente de desenvolvimento. </p>
+
+
+<h2 id="create-update">Criar ou atualizar um projeto</h2>
+
+<p>
+ Para usar as APIs de prévia, deve-se criar ou atualizar um projeto de desenvolvimento para usar
+ os componentes de prévia.
+</p>
+
+
+<h3 id="create">Criar um novo projeto</h3>
+
+<p>
+ Recomendamos o uso do Android Studio para criar um projeto com a prévia. Siga as etapas
+ descritas em <a href="{@docRoot}sdk/installing/create-project.html">Criar um projeto</a>
+ até chegar na tela <em>Form Factors (Novas especificações)</em> no assistente do projeto. Em seguida,
+ realize as seguintes etapas para criar um projeto configurado para a prévia.
+</p>
+
+<ul>
+ <li>Verifique <strong>Phone and Tablet (Telefone e tablet)</strong>.</li>
+ <li>Selecione <strong>MNC: Android M (Preview)</strong> em <strong>Minimum
+ SDK (SDK mínimo)</strong>.</li>
+</ul>
+
+
+<h3 id="update">Atualizar um projeto existente</h3>
+
+<p>
+ Para projetos existentes, deve-se modificar a configuração de projeto para ativar as APIs de prévia. No
+ ambiente de desenvolvimento, abra o arquivo <code>build.gradle</code> para o módulo
+ e defina estes valores da seguinte forma:
+</p>
+
+<ul>
+ <li><code>compileSdkVersion</code> para <code>'android-MNC'</code></li>
+ <li><code>minSdkVersion</code> para <code>'MNC'</code></li>
+ <li><code>targetSdkVersion</code> para <code>'MNC'</code></li>
+</ul>
+
+
+<h2 id="setup-test">Configurar para teste</h2>
+
+<p>
+ Testar um aplicativo com a prévia requer que você tenha um dispositivo ou dispositivo virtual configurado
+ com a versão de prévia da plataforma. Caso tenha um dispositivo compatível, é possível instalar a plataforma
+ de prévia para teste. Caso contrário, é possível configurar um dispositivo virtual para o teste.
+</p>
+
+<h3 id="setup-device">Configurar um dispositivo físico</h3>
+
+<p>
+ Caso tenha um Nexus 5, Nexus 6, Nexus 9 ou Android TV, é possível instalar uma imagem do sistema
+ de prévia nestes dispositivos para testar o aplicativo.
+ É possível configurar um dispositivo virtual com a versão de prévia da plataforma a partir do Android Studio
+ usando a ferramenta Android Virtual Device Manager.
+</p>
+
+<p class="caution">
+ <strong>Importante:</strong> instalar uma imagem de prévia em um dispositivo <em>remove todos os dados
+ dele</em>. Portanto, deve-se realizar o backup de quaisquer dados antes de instalar uma imagem de prévia.
+</p>
+
+<h3 id="setupAVD">Configurar um dispositivo virtual</h3>
+
+<p>
+ É possível configurar um dispositivo virtual com a versão de prévia da plataforma dentro do Android Studio
+ usando a ferramenta Android Virtual Device Manager.
+</p>
+
+<p>Para criar um AVD com o AVD Manager:</p>
+
+<ol>
+ <li>Instale o Preview SDK no ambiente de desenvolvimento, como descrito
+ em <a href="{@docRoot}preview/setup-sdk.html">Configurar o Preview
+ SDK.</a></li>
+ <li>Siga as etapas em
+ <a href="{@docRoot}tools/devices/managing-avds.html">Como gerenciar AVDs com
+ o Gerenciador de AVD</a>. Use as seguintes configurações:
+ <ul>
+ <li><strong>Dispositivo:</strong> Nexus 5, Nexus 6, Nexus 9 ou Android TV</li>
+ <li><strong>Alvo:</strong>
+ Android M (Preview) - Nível da API M</li>
+ <li><strong>ABI:</strong> x86</li>
+ </ul>
+ </li>
+</ol>
+
+<p>
+ Para obter mais informações sobre como criar dispositivos virtuais para teste, consulte <a href="{@docRoot}tools/devices/index.html">Gerenciamento de dispositivos virtuais</a>.
+</p>
diff --git a/docs/html-intl/intl/pt-br/preview/support.jd b/docs/html-intl/intl/pt-br/preview/support.jd
new file mode 100644
index 0000000..63b88a7
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/preview/support.jd
@@ -0,0 +1,67 @@
+page.title=Suporte
+page.image=images/cards/card-support_16-9_2x.png
+
+@jd:body
+
+<p>
+ Caso tenha encontrado erros ou tenha feedback sobre o M Developer Preview,
+ <a href="https://code.google.com/p/android-developer-preview/">crie um problema</a>
+ em nosso issue tracker.
+</p>
+
+<p>
+ Para obter mais auxílio, junte-se à comunidade
+ <a href="http://g.co/dev/AndroidMDevPreview">M Developer
+ Preview do Google+</a> para discutir suas experiências de desenvolvimento.
+</p>
+
+<h2 id="release-notes">Notas da versão</h2>
+
+<!--
+<div class="toggle-content opened">
+ <p><a href="#" onclick="return toggleContent(this)">
+ <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+ alt=""/>M Developer Preview, Revision 2</a> <em>(Month 2015)</em>
+ </p>
+
+ <div class="toggle-content-toggleme">
+
+ <dl>
+
+ <dt>Fix Category 1</dt>
+ <dd>
+ <ul>
+ <li>Fixed issue X.</li>
+ <li>Fixed issue Y.</li>
+ <li>Fixed issue Z.</li>
+ </ul>
+ </dd>
+
+ <dt>Fix Category 2</dt>
+ <dd>
+ <ul>
+ <li>Fixed issue X.</li>
+ <li>Fixed issue Y.</li>
+ <li>Fixed issue Z.</li>
+ </ul>
+ </dd>
+
+ </dl>
+ </div>
+</div>
+-->
+
+<div class="toggle-content opened">
+ <p><a href="#" onclick="return toggleContent(this)">
+<img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img" alt="" />M Developer Preview, revisão 1</a> <em>(maio de 2015)</em>
+ </p>
+
+ <div class="toggle-content-toggleme">
+
+ <dl>
+ <dt>Versão inicial.</dt>
+ </dl>
+ </div>
+</div>
+
+
diff --git a/docs/html-intl/intl/pt-br/preview/testing/guide.jd b/docs/html-intl/intl/pt-br/preview/testing/guide.jd
new file mode 100644
index 0000000..b995f8b
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/preview/testing/guide.jd
@@ -0,0 +1,187 @@
+page.title=Guia de teste
+page.image=images/cards/card-build_16x9_2x.png
+page.keywords=previewresources,androidm,testing,permissions
+
+@jd:body
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>Neste documento</h2>
+ <ol>
+ <li><a href="#runtime-permissions">Teste de permissões</a></li>
+ <li><a href="#doze-standby">Teste de soneca e aplicativo em espera</a></li>
+ <li><a href="#ids">Identificadores de dispositivo e backup automático</a></li>
+ </ol>
+ </div>
+</div>
+
+<p>
+ O Android M Developer Preview fornece uma oportunidade de garantir que os aplicativos funcionem
+ na próxima versão da plataforma. Esta prévia inclui um número de mudanças de comportamento e APIs que podem
+ ter impacto no aplicativo, como descrito em <a href="{@docRoot}preview/api-overview.html">Visão geral da API
+</a> e <a href="{@docRoot}preview/behavior-changes.html">Mudanças de comportamento</a>. No teste
+ do aplicativo com a prévia, há algumas alterações de sistema específicas em que você deve se concentrar
+ para garantir que os usuários tenham uma boa experiência.
+</p>
+
+<p>
+ Este guia descreve quais recursos de prévia testar e como testá-los com o aplicativo. Você deve
+ priorizar o teste destes recursos de prévia específicos, devido ao grande impacto potencial no
+ comportamento do aplicativo:
+</p>
+
+<ul>
+ <li><a href="#runtime-permissions">Permissões</a>
+ </li>
+ <li><a href="#doze-standby">Soneca e aplicativo em espera</a>
+ </li>
+ <li><a href="#ids">Identificadores de dispositivo e backup automático</a></li>
+</ul>
+
+<p>
+ Para obter mais informações sobre como configurar dispositivos físicos ou virtuais com uma imagem do sistema de prévia
+ para teste, consulte <a href="{@docRoot}preview/setup-sdk.html">Configuração do Preview SDK</a>.
+</p>
+
+
+<h2 id="runtime-permissions">Teste de permissões</h2>
+
+<p>
+ O novo modelo de <a href="{@docRoot}preview/features/runtime-permissions.html">permissões</a>
+ altera a maneira que as permissões são alocadas ao aplicativo pelo usuário. Em vez de conceder todas as permissões
+ durante o procedimento de instalação, o aplicativo deve pedir ao usuário permissões individuais
+ em tempo de execução. Para os usuários, este comportamento fornece um controle mais granular sobre as atividades de cada aplicativo, bem
+ como um melhor contexto para entender o porquê do aplicativo estar solicitando uma permissão específica. Os usuários
+ podem conceder ou revogar as permissões concedidas a um aplicativo individualmente a qualquer momento. É provável que este recurso
+ da prévia tenha um impacto no comportamento do aplicativo e pode impedir que alguns
+ dos recursos do aplicativo funcionem, ou funcionem em um estado degradado.
+</p>
+
+<p class="caution">
+ Esta alteração afeta todos os aplicativos em execução na nova plataforma, mesmo aqueles que não são destinados
+ para a versão nova da plataforma. A plataforma fornece um comportamento de compatibilidade limitado para aplicativos legados. No entanto,
+ você deve começar a planejar a migração do aplicativo para o novo modelo de permissões agora, com o objetivo
+ de publicar uma versão atualizada do aplicativo no lançamento oficial da plataforma.
+</p>
+
+
+<h3 id="permission-test-tips">Dicas de teste</h3>
+
+<p>
+ Use as seguintes dicas de teste para ajudar você a planejar e executar os testes do aplicativo com o novo
+ comportamento de permissões.
+</p>
+
+<ul>
+ <li>Identifique as permissões atuais do aplicativo e os caminhos de código relacionados.</li>
+ <li>Teste o fluxo de usuário entre serviços protegidos por permissão e dados.</li>
+ <li>Teste com várias combinações de permissões revogadas/concedidas.</li>
+ <li>Use a ferramenta {@code adb} para gerenciar as permissões da linha de comando:
+ <ul>
+ <li>Liste as permissões e o status por grupos:
+ <pre>adb shell pm list permissions -d -g</pre>
+ </li>
+ <li>Conceda ou revogue uma ou mais permissões usando a seguinte sintaxe:<br>
+ <pre>adb shell pm [grant|revoke] &lt;permission.name&gt; ...</pre>
+ </li>
+ </ul>
+ </li>
+ <li>Analise o aplicativo para encontrar os serviços que usam permissões.</li>
+</ul>
+
+<h3 id="permission-test-strategy">Estratégia de teste</h3>
+
+<p>
+ A mudança de permissões afeta a estrutura e o projeto do aplicativo, bem como
+ a experiência dos usuários e os fluxos fornecidos a eles. Você deve avaliar o uso das permissões atuais
+ do aplicativo e começar a planejar novos fluxos que deseja oferecer. O lançamento oficial
+ da plataforma fornece comportamento de compatibilidade, mas deve-se planejar a atualização do aplicativo e
+ não confiar nestes comportamentos.
+</p>
+
+<p>
+ Identifique as permissões que o aplicativo realmente precisa e usa e, em seguida, encontre os vários caminhos
+ de código que usam os serviços protegidos por permissões. É possível fazer isto por meio de uma combinação de
+ testes na nova plataforma e análise de códigos. Nos testes, você deve se concentrar em usar
+ as permissões em tempo de execução alterando {@code targetSdkVersion} do aplicativo para a versão da prévia. Para
+ obter mais informações, consulte <a href="{@docRoot}preview/setup-sdk.html#">Configuração do Preview SDK</a>.
+</p>
+
+<p>
+ Teste com várias combinações de permissões revogadas e concedidas para destacar os fluxos de usuário
+que dependem de permissões. Onde uma dependência não for óbvia ou lógica, considere
+refatorar ou compartimentalizar este fluxo para eliminar a dependência ou para esclarecer por que
+a permissão é necessária.
+</p>
+
+<p>
+ Para obter mais informações sobre o comportamento das permissões em tempo de execução, de testes e de melhores práticas, consulte a página
+ <a href="{@docRoot}preview/features/runtime-permissions.html">Permissões</a> do Developer
+ Preview.
+</p>
+
+
+<h2 id="doze-standby">Teste de soneca e aplicativo em espera</h2>
+
+<p>
+ Os recursos de economia de energia de aplicativo em espera e soneca limitam a quantidade de processamento de segundo plano que o aplicativo
+ pode realizar quando um dispositivo está no estado ocioso ou enquanto não está em foco. As
+ restrições que o sistema pode impor nos aplicativos inclui acesso a rede limitado ou restrito,
+ tarefas de segundo plano suspensas, notificações suspensas, solicitações de soneca ignoradas e despertadores. Para garantir
+ que o aplicativo se comportará adequadamente com essas otimizações de economia de energia, deve-se testá-lo
+ simulando estes estados de baixa energia.
+</p>
+
+<h4 id="doze">Testar o aplicativo com Soneca</h4>
+
+<p>Para testar a Soneca com o aplicativo:</p>
+
+<ol>
+<li>Configure um dispositivo de hardware ou virtual com uma imagem do sistema M Preview.</li>
+<li>Conecte o dispositivo à máquina de desenvolvimento e instale o aplicativo.</li>
+<li>Execute o aplicativo e deixe-o ativo.</li>
+<li>Simule o dispositivo acessando o modo Soneca executando os seguintes comandos:
+
+<pre>
+$ adb shell dumpsys battery unplug
+$ adb shell dumpsys deviceidle step
+$ adb shell dumpsys deviceidle -h
+</pre>
+
+ </li>
+ <li>Observe o comportamento do aplicativo quando o dispositivo é reativado. Certifique-se de que
+ ele se recupere corretamente quando o dispositivo sai do modo Soneca.</li>
+</ol>
+
+
+<h4 id="standby">Testar o aplicativo no modo de espera</h4>
+
+<p>Para testar o modo de espera do aplicativo:</p>
+
+<ol>
+ <li>Configure um dispositivo de hardware ou virtual com uma imagem do sistema M Preview.</li>
+ <li>Conecte o dispositivo à máquina de desenvolvimento e instale o aplicativo.</li>
+ <li>Execute o aplicativo e deixe-o ativo.</li>
+ <li>Simule o aplicativo acessando o modo de espera executando os seguintes comandos:
+
+<pre>
+$ adb shell am broadcast -a android.os.action.DISCHARGING
+$ adb shell am set-idle &lt;packageName&gt; true
+</pre>
+
+ </li>
+ <li>Simule o despertar do aplicativo usando o seguinte comando:
+ <pre>$ adb shell am set-idle &lt;packageName&gt; false</pre>
+ </li>
+ <li>Observe o comportamento do aplicativo quando ele é despertado. Certifique-se de que ele se recupere corretamente
+ do modo de espera. Particularmente, deve-se verificar se as notificações e os trabalho de segundo plano
+ do aplicativo continuam a funcionar como o esperado.</li>
+</ol>
+
+<h2 id="ids">Backup automático para aplicativos e identificadores específicos do dispositivo</h2>
+
+<p>Caso o aplicativo esteja persistindo qualquer identificador específico do dispositivo, como o ID de registro do Google
+Cloud Messaging, no armazenamento interno,
+certifique-se de seguir as práticas recomendadas para excluir o local de armazenamento
+do backup automático, como descrito em <a href="{@docRoot}preview/backup/index.html">Backup automático
+para aplicativos</a>. </p>
diff --git a/docs/html-intl/intl/pt-br/preview/testing/performance.jd b/docs/html-intl/intl/pt-br/preview/testing/performance.jd
new file mode 100644
index 0000000..d541be1
--- /dev/null
+++ b/docs/html-intl/intl/pt-br/preview/testing/performance.jd
@@ -0,0 +1,656 @@
+page.title=Teste de desempenho de exibição
+page.image=images/cards/card-test-performance_2x.png
+page.keywords=performance, fps, tools
+
+@jd:body
+
+
+<div id="qv-wrapper">
+ <div id="qv">
+ <h2>Neste documento</h2>
+ <ol>
+ <li><a href="#measure">Medir desempenho da IU</a>
+ <ul>
+ <li><a href="#aggregate">Agregar estatísticas de quadro</a></li>
+ <li><a href="#timing-info">Informações de precisão de quadro</a></li>
+ <li><a href="#timing-dump">Despejo de precisão de quadro simples</a></li>
+ <li><a href="#collection-window">Controlar janela de coleta de estatísticas</a></li>
+ <li><a href="#diagnose">Diagnosticar regressões de desempenho</a></li>
+ <li><a href="#resources">Recursos adicionais</a></li>
+ </ul>
+ </li>
+ <li><a href="#automate">Automatizar teste de desempenho da IU</a>
+ <ul>
+ <li><a href="#ui-tests">Configurar testes da IU</a></li>
+ <li><a href="#automated-tests">Configurar testes automatizados da IU</a></li>
+ <li><a href="#triage">Triagem e resolução de problemas observados</a></li>
+ </ul>
+ </li>
+ </ol>
+ </div>
+</div>
+
+
+<p>
+ O teste de desempenho da interface do usuário (IU) garante que o aplicativo
+ não só esteja de acordo com os requisitos funcionais, como também que as interações de usuários
+ sejam muito mais suaves, executando a 60 quadros por segundo de forma consistente (<a href="https://www.youtube.com/watch?v=CaMTIgxCSqU&amp;index=25&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">por que
+ 60 qps?</a>), sem nenhum quadro atrasado ou descartado ou, como gostamos de chamar, <em>"jank"</em>. Este documento explica as ferramentas disponíveis
+ para medir o desempenho da IU e dispõe uma abordagem para integrar
+ as medidas de desempenho de IU nas práticas de teste.
+</p>
+
+
+<h2 id="measure">Medir desempenho da IU</h2>
+
+<p>
+ Para aprimorar o desempenho, deve-se primeiro ter a habilidade de medir o desempenho
+ do sistema e, em seguida, diagnosticar e identificar problemas que podem ocorrer
+ em várias partes do processo.
+</p>
+
+<p>
+ <em><a href="https://source.android.com/devices/tech/debug/dumpsys.html">dumpsys</a></em> é uma ferramenta
+ do Android que é executada no dispositivo e despeja informações interessantes sobre o estado
+ dos serviços do sistema. Passar o comando <em>gfxinfo</em> para dumpsys fornece uma saída no logcat
+ com informações de desempenho relacionada aos quadros de animação que ocorrem
+ durante a fase de registro.
+</p>
+
+<pre>
+&gt; adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt;
+</pre>
+
+<p>
+ Este comando pode produzir diversas variáveis de dados de precisão de quadro.
+</p>
+
+<h3 id="aggregate">Agregar estatísticas de quadro</h3>
+
+<p>
+ Com o M Preview, o comando emite uma análise agregada dos dados de quadro para logcat,
+ coletados em todo o ciclo de vida do processo. Por exemplo:
+</p>
+
+<pre class="noprettyprint">
+Stats since: 752958278148ns
+Total frames rendered: 82189
+Janky frames: 35335 (42.99%)
+90th percentile: 34ms
+95th percentile: 42ms
+99th percentile: 69ms
+Number Missed Vsync: 4706
+Number High input latency: 142
+Number Slow UI thread: 17270
+Number Slow bitmap uploads: 1542
+Number Slow draw: 23342
+</pre>
+
+<p>
+ Estas estatísticas de alto nível carregam um alto nível de desempenho de renderização do aplicativo,
+ bem como a estabilidade em vários quadros.
+</p>
+
+
+<h3 id="timing-info">Informações de precisão de quadro</h3>
+
+<p>
+ Com o M Preview, há um novo comando para gfxinfo, o <em>framestats</em>, que fornece
+ informações de precisão de quadros extremamente detalhadas dos quadros recentes para que você possa rastrear
+ e depurar os problemas de forma mais precisa.
+</p>
+
+<pre>
+&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; framestats
+</pre>
+
+<p>
+ Este comando emite informações de precisão de quadros, com marcações de data e hora, dos últimos 120
+ quadros produzidos pelo aplicativo. Abaixo, há um exemplo de saída bruta das estatísticas
+ de quadro de adb dumpsys gfxinfo &lt;PACKAGE_NAME&gt;:
+</p>
+
+<pre class="noprettyprint">
+0,49762224585003,49762241251670,9223372036854775807,0,49762257627204,49762257646058,49762257969704,49762258002100,49762265541631,49762273951162,49762300914808,49762303675954,
+0,49762445152142,49762445152142,9223372036854775807,0,49762446678818,49762446705589,49762447268818,49762447388037,49762453551527,49762457134131,49762474889027,49762476150120,
+0,49762462118845,49762462118845,9223372036854775807,0,49762462595381,49762462619287,49762462919964,49762462968454,49762476194547,49762476483454,49762480214964,49762480911527,
+0,49762479085548,49762479085548,9223372036854775807,0,49762480066370,49762480099339,49762481013089,49762481085850,49762482232152,49762482478350,49762485657620,49762486116683,
+</pre>
+
+<p>
+ Cada linha desta saída representa um quadro produzido pelo aplicativo. Cada linha tem um número fixo
+ de colunas que descrevem o tempo gasto em cada estágio do pipeline que produz quadros. A próxima seção descreve
+ este formato com detalhes, incluindo o que cada coluna representa.
+</p>
+
+
+<h4 id="fs-data-format">Formato de dados de estatísticas de quadro</h4>
+
+<p>
+ Como o bloco de dados é a saída no formato CSV, basta colá-lo na ferramenta
+ de planilha de sua escolha ou coletá-lo e analisá-lo com o script. A tabela a seguir explica o formato
+ das colunas de dados de saída. Todas as marcações de data e hora estão em nanossegundos.
+</p>
+
+<ul>
+ <li>SINALIZADORES
+ <ul>
+ <li>Linhas com ‘0’ para a coluna FLAGS podem ter o tempo total de quadros calculado
+ subtraindo a coluna INTENDED_VSYNC da coluna FRAME_COMPLETED.
+ </li>
+
+ <li>Se for um número diferente de zero, a linha deverá ser ignorada, pois o quadro será determinado
+ como exceção em comparação ao desempenho normal, onde espera-se que o layout e o desenho
+ demorem mais do que 16 ms. Eis alguns motivos para que isto ocorra:
+ <ul>
+ <li>Layout da janela alterado (como o primeiro quadro do aplicativo
+ ou após uma rotação)
+ </li>
+
+ <li>Também é possível que o quadro seja ignorado, quando alguns valores
+ ainda terão marcações de data e hora de lixo. Um quadro pode ser ignorado se, por exemplo,
+ estiver executando a 60 quadros por segundo ou se nada na tela estiver incorreto, o que não necessariamente
+ é um sinal de problema no aplicativo.
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+
+ <li>INTENDED_VSYNC
+ <ul>
+ <li>O ponto inicial planejado para o quadro. Se este valor for diferente de VSYNC,
+ significa que há um trabalho ocorrendo no encadeamento da IU que não permitiu que ele respondesse
+ ao sinal de vsync de forma precisa.
+ </li>
+ </ul>
+ </li>
+
+ <li>VSYNC
+ <ul>
+ <li>O valor de tempo foi usado em todos os escutadores vsync e no desenho para o quadro
+ (retorno de chamada do quadro Choreographer, animações, View.getDrawingTime(), etc.)
+ </li>
+
+ <li>Para entender mais sobre VSYNC e como ele influencia o aplicativo, assista ao vídeo
+ <a href="https://www.youtube.com/watch?v=1iaHxmfZGGc&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=23">
+Entendimento do VSYNC</a>.
+ </li>
+ </ul>
+ </li>
+
+ <li>OLDEST_INPUT_EVENT
+ <ul>
+ <li>A marcação de data e hora do evento de entrada mais antigo na fila de entrada, ou Long.MAX_VALUE
+ se não houver eventos de entrada para o quadro.
+ </li>
+
+ <li>Este valor é principalmente planejado para o trabalho da plataforma e tem utilidade limitada
+ para desenvolvedores de aplicativos.
+ </li>
+ </ul>
+ </li>
+
+ <li>NEWEST_INPUT_EVENT
+ <ul>
+ <li>A marcação de data e hora do evento de entrada mais recente na fila de entrada
+ ou 0 se não houver eventos de entrada para o quadro.
+ </li>
+
+ <li>Este valor é principalmente planejado para o trabalho da plataforma e tem utilidade limitada
+ para desenvolvedores de aplicativos.
+ </li>
+
+ <li>No entanto, é possível ter uma breve ideia da quantidade de latência que o aplicativo
+ está adicionado verificando (FRAME_COMPLETED - NEWEST_INPUT_EVENT).
+ </li>
+ </ul>
+ </li>
+
+ <li>HANDLE_INPUT_START
+ <ul>
+ <li>A marcação de data e hora em que os eventos de entrada foram despachados para o aplicativo.
+ </li>
+
+ <li>Ao olhar o horário entre isto e ANIMATION_START, é possível medir o tempo que o aplicativo
+ gastou para lidar com os eventos de entrada.
+ </li>
+
+ <li>Se este número for alto (&gt; 2 ms), indica que o aplicativo está gastando
+ tempo demais processando os eventos de entrada, como View.onTouchEvent(), o que pode indicar
+ que este trabalho precisa ser otimizado ou descarregado para um encadeamento diferente. Observe que há algumas situações,
+ como eventos de clique que iniciam novas atividades,
+ em que é esperado e aceitável que este número seja grande.
+ </li>
+ </ul>
+ </li>
+
+ <li>ANIMATION_START
+ <ul>
+ <li>A marcação de data e hora em que as animações registradas com Choreographer foram executadas.
+ </li>
+
+ <li>Ao olhar para o tempo entre isto e PERFORM_TRANVERSALS_START,
+ é possível determinar o tempo levado para avaliar todos os animadores
+ (ObjectAnimator, ViewPropertyAnimator e Transitions sendo as mais comuns) que estão sendo executados.
+ </li>
+
+ <li>Se este número for alto (&gt; 2 ms), verifique se o aplicativo gravou qualquer animador
+ personalizado ou quais campos de ObjectAnimators estão animando
+ e certifique-se de que eles sejam adequados para uma animação.
+ </li>
+
+ <li>Para saber mais sobre Choreographer, assista ao vídeo
+ <a href="https://developers.google.com/events/io/sessions/325418001">Para melhor ou pior</a>.
+ </li>
+ </ul>
+ </li>
+
+ <li>PERFORM_TRAVERSALS_START
+ <ul>
+ <li>Se você subtrair o DRAW_START deste valor, será possível extrair o tempo que as fases de medida e layout
+ levaram para serem concluídas (observação: durante uma rolagem ou animação,
+ espera-se que este valor seja próximo a zero).
+ </li>
+
+ <li>Para saber mais sobre as fases de medida e layout do pipeline de renderização,
+ assista ao vídeo <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">
+Invalidações, layouts e desempenho</a>
+ </li>
+ </ul>
+ </li>
+
+ <li>DRAW_START
+ <ul>
+ <li>O horário em que a fase de desenho de performTraversals foi iniciada. Este é o ponto inicial
+ do registro de listas de exibição de vistas que foram invalidadas.
+ </li>
+
+ <li>O tempo entre isto e SYNC_START é o tempo levado para chamar View.draw()
+ em todas as vistas invalidadas na árvore.
+ </li>
+
+ <li>Para obter mais informações sobre o modelo de desenho, assista aos vídeos <a href="{@docRoot}guide/topics/graphics/hardware-accel.html#hardware-model">Aceleração de hardware</a>
+ ou <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu&amp;index=27">
+ Invalidações, layouts e desempenho</a>
+ </li>
+ </ul>
+ </li>
+
+ <li>SYNC_START
+ <ul>
+ <li>O horário em que a fase de sincronização do desenho foi iniciada.
+ </li>
+
+ <li>Se o tempo entre isto e ISSUE_DRAW_COMMANDS_START for substancial (aproximadamente &gt; 0,4ms),
+ geralmente indicará que vários Bitmaps novos que foram desenhados deverão
+ ser enviados para o GPU.
+ </li>
+
+ <li>Para entender mais sobre a fase de sincronização, assista ao vídeo <a href="https://www.youtube.com/watch?v=VzYkVL1n4M8&amp;index=24&amp;list=PLOU2XLYxmsIKEOXh5TwZEv89aofHzNCiu">
+Renderização de GPU de perfil</a>
+ </li>
+ </ul>
+ </li>
+
+ <li>ISSUE_DRAW_COMMANDS_START
+ <ul>
+ <li>O horário em que o renderizador de hardware começou a emitir comandos de desenho para a GPU.
+ </li>
+
+ <li>O tempo entre isto e FRAME_COMPLETED fornece uma breve ideia da quantidade de trabalho de GPU
+ que o aplicativo está produzindo. Problemas com excesso ou efeitos de renderização
+ ineficientes são exibidos aqui.
+ </li>
+ </ul>
+ </li>
+
+ <li>SWAP_BUFFERS
+ <ul>
+ <li>O horário em que o eglSwapBuffers foi chamado, relativamente desinteressante
+ fora do trabalho da plataforma.
+ </li>
+ </ul>
+ </li>
+
+ <li>FRAME_COMPLETED
+ <ul>
+ <li>Tudo feito! O tempo total gasto trabalhando neste quadro pode ser calculando
+ realizando FRAME_COMPLETED - INTENDED_VSYNC.
+ </li>
+ </ul>
+ </li>
+
+</ul>
+
+<p>
+ É possível usar estes dados de várias formas. Uma visualização simples mas útil é o histograma
+ exibindo a distribuição dos tempos dos quadros (FRAME_COMPLETED - INTENDED_VSYNC)
+ em diferentes espaços de latência. Consulte a figura abaixo. Este gráfico mostra brevemente que a maioria
+ dos quadros estavam bons — bem abaixo do limite de 16 ms (representado em vermelho) —,
+ mas que alguns quadros estavam bem acima do limite. Podemos verificar as alterações neste histograma
+ com o tempo para encontrar as mudanças indiscriminadas ou novas exceções sendo criadas. Também é possível colocar em gráfico a latência de entrada,
+ o tempo gasto no layout ou outras medidas interessantes com base
+ nas várias marcações de data e hora nos dados.
+</p>
+
+<img src="{@docRoot}preview/images/perf-test-framestats.png">
+
+
+<h3 id="timing-dump">Despejo de precisão de quadro simples</h3>
+
+<p>
+ Se a <strong>renderização de GPU de perfil</strong> for definida para <strong>em adb shell dumpsys gfxinfo</strong>
+ nas opções de desenvolvedor, o comando <code>adb shell dumpsys gfxinfo</code> emitirá informações
+ de precisão para os 120 quadros mais recentes, divididas em algumas categorias
+ com valores separados por guias. Estes dados podem ser úteis para indicar quais partes do pipeline
+ de desenho podem estar lentas em um nível alto.
+</p>
+
+<p>
+ Semelhante às <a href="#fs-data-format">estatísticas de quadro</a> acima,
+ basta colá-los na ferramenta de planilha de sua escolha ou coletá-los e analisá-los
+ com um script. O gráfico a seguir exibe um detalhamento de onde os vários quadros produzidos
+ pelo aplicativo gastaram o tempo.
+</p>
+
+<img src="{@docRoot}preview/images/perf-test-frame-latency.png">
+
+<p>
+ O resultado de executar gfxinfo, copiar a saída, colá-lo no aplicativo de planilha
+ e gerar um gráfico dos dados como barras empilhadas.
+</p>
+
+<p>
+ Cada barra vertical representa um quadro da animação; sua altura representa a quantidade
+ de milissegundos para calcular este quadro de animação. Cada segmento colorido da barra
+ representa um estágio diferente do pipeline de renderização para que você possa ver que partes do aplicativo
+ podem estar criando um afunilamento. Para obter mais informações sobre o entendimento do pipeline
+ de renderização e como otimizá-lo, assista ao vídeo <a href="https://www.youtube.com/watch?v=we6poP0kw6E&amp;index=27&amp;list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE">
+Invalidações, layouts e desempenho</a>.
+</p>
+
+
+<h3 id="collection-window">Controlar janela de coleta de estatísticas</h3>
+
+<p>
+ As precisões de quadro simples e estatísticas de quadro coletam dados
+ em um período muito curto — cerca de dois segundos de renderização. Para controlar este período de forma precisa — por exemplo,
+ restringir os dados para uma animação em particular —, é possível redefinir
+ todos os contadores e agregar as estatísticas coletadas.
+</p>
+
+<pre>
+&gt;adb shell dumpsys gfxinfo &lt;PACKAGE_NAME&gt; reset
+</pre>
+
+<p>
+ Isto também pode ser usado em conjunto com os próprios comandos de despejo para coletar
+ e redefinir em uma cadência regular, capturando períodos de menos de dois segundos de quadros
+ continuamente.
+</p>
+
+
+<h3 id="diagnose">Diagnosticar regressões de desempenho</h3>
+
+<p>
+ A identificação de regressões é uma boa primeira etapa para rastrear os problemas
+ e manter o bem-estar do aplicativo. No entanto, o dumpsys identifica apenas a existência
+ e a gravidade relativa dos problemas. Ainda é necessário diagnosticar a causa particular dos problemas
+ de desempenho e encontrar maneiras adequadas de resolvê-los. Para isso, é altamente recomendado
+ o uso da ferramenta <a href="{@docRoot}tools/help/systrace.html">systrace</a>.
+</p>
+
+
+<h3 id="resources">Recursos adicionais</h3>
+
+<p>
+ Para obter mais informações sobre como o pipeline de renderização do Android funciona,
+ problemas comuns que podem ser encontrados e como resolvê-los,
+ alguns dos seguintes recursos podem ser úteis:
+</p>
+
+<ul>
+ <li>Desempenho de renderização 101
+ </li>
+ <li>Por que 60 qps?
+ </li>
+ <li>GPU e IU do Android
+ </li>
+ <li>Invalidações, layouts e desempenho
+ </li>
+ <li>Análise do desempenho de IU com Systrace
+ </li>
+</ul>
+
+
+<h2 id="automate">Automatizar teste de desempenho da IU</h2>
+
+<p>
+ Uma abordagem para o teste de desempenho da IU é fazer com que um testador humano
+ realize uma série de operações de usuário no aplicativo-alvo e procure visualmente problemas
+ ou gaste uma grande quantidade de tempo usando uma abordagem de ferramenta para encontrá-los. No entanto, esta abordagem manual
+ é repleta de riscos: a habilidade humana de notar alterações na taxa de quadros varia tremendamente,
+ além de consumir tempo, ser tedioso e propenso a erros.
+</p>
+
+<p>
+ Uma abordagem mais eficiente é registrar e analisar as métricas de desempenho essenciais
+ dos testes de IU automatizados. O Android M Developer Preview inclui novas capacidades de registro que facilitam
+ a determinação da quantidade e da gravidade de erros nas animações do aplicativo
+ e que podem ser usadas para compilar um processo rigoroso para determinar o desempenho atual
+ e rastrear os futuros objetivos de desempenho.
+</p>
+
+<p>
+ Este artigo mostra uma abordagem recomendada para usar estes dados para automatizar
+ o teste de desempenho.
+</p>
+
+<p>
+ Ele é geralmente dividido em duas ações principais. Primeiro: identificar o que está testando
+ e como será testado. Segundo: configuração e manutenção
+ de um ambiente de teste automatizado.
+</p>
+
+
+<h3 id="ui-tests">Configurar de testes da IU</h3>
+
+<p>
+ Antes de iniciar o teste automatizado, é importante determinar algumas decisões de alto nível
+ para entender corretamente o espaço de teste e as possíveis necessidades.
+</p>
+
+<h4>
+ Identificar principais animações/fluxos a testar
+</h4>
+
+<p>
+ Lembre-se que um desempenho ruim é mais visível aos usuários quando
+ interrompe uma animação suave. Portanto, ao identificar que tipos de ações de IU serão testadas, é útil se concentrar
+ nas animações principais que os usuários veem
+ ou nas mais importantes para a experiência. Por exemplo, eis alguns cenários comuns que pode ser útil identificar:
+</p>
+
+<ul>
+ <li>Rolagem de um ListView ou RecyclerView principal
+ </li>
+
+ <li>Animações durante ciclos de espera assíncrona
+ </li>
+
+ <li>Qualquer animação que possa ter manipulação ou carregamento de bitmap
+ </li>
+
+ <li>Animações com mistura alpha
+ </li>
+
+ <li>Desenho de vista personalizada com Canvas
+ </li>
+</ul>
+
+<p>
+ Trabalhe com engenheiros, designers, e gerentes de produto em sua equipe para priorizar
+ as animações de produto essenciais para a cobertura de teste.
+</p>
+
+<h4>
+ Defina os futuros objetivos e faça um rastreamento
+</h4>
+
+<p>
+ De um alto nível, talvez seja essencial identificar os objetivos específicos de desempenho
+ e concentrar-se em escrever testes e coletar dados. Por exemplo:
+</p>
+
+<ul>
+ <li>Quer apenas iniciar o rastreamento de desempenho de IU pela primeira vez para aprender mais?
+ </li>
+
+ <li>Quer evitar regressões que possam ser introduzidas no futuro?
+ </li>
+
+ <li>Está com 90% de quadros suaves hoje e deseja chegar a 98% neste trimestre?
+ </li>
+
+ <li>Está com 98% de quadros suaves e não quer regredir?
+ </li>
+
+ <li>O seu objetivo é aprimorar o desempenho em dispositivos de baixo nível?
+ </li>
+</ul>
+
+<p>
+ Em todos esses casos, você optará pelo rastreamento histórico, que exibe o desempenho
+ entre várias versões do aplicativo.
+</p>
+
+<h4>
+ Identificar dispositivos para realizar testes
+</h4>
+
+<p>
+ O desempenho do aplicativo varia dependendo do dispositivo em que está sendo executado. Alguns dispositivos podem
+ conter menos memória, GPUs menos eficientes ou chips de CPU mais lentos. Isto significa que as animações que podem
+ ter um bom desempenho em um conjunto de hardwares podem não ter o mesmo desempenho em outras,
+ podendo ser o resultado de um afunilamento em uma parte diferente do pipeline. Portanto, para contabilizar
+ esta variação em o que o usuário pode ver, escolha uma variação de dispositivos
+ para executar os testes: dispositivos e tablets de alto e baixo nível etc. Procure variações no desempenho de CPU,
+ RAM, densidade da tela, tamanho etc. Testes que passam em dispositivos de alto nível
+ podem falhar em dispositivos de baixo nível.
+</p>
+
+<h4>
+ Estruturas básicas para teste de IU
+</h4>
+
+<p>
+ Conjuntos de ferramenta, como <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a> e
+ <a href="{@docRoot}training/testing/ui-testing/espresso-testing.html">Espresso</a>,
+ são integrados para ajudar na automatização da ação de um usuário movendo-se pelo aplicativo. São estruturas simples
+ que imitam a interação de usuário no dispositivo. Para usar estas estruturas,
+ você cria efetivamente scripts únicos que executam um conjunto
+ de ações de usuário e reproduzem-nas no próprio dispositivo.
+</p>
+
+<p>
+ Ao combinar estes testes automatizados, juntamente com <code>dumpsys gfxinfo</code>, é possível criar
+ rapidamente um sistema reproduzível que permite a execução de um teste e a medição das informações
+ de desempenho desta condição em particular.
+</p>
+
+
+<h3 id="automated-tests">Configurar testes automatizados da IU</h3>
+
+<p>
+ Com a habilidade de executar um teste de IU e um pipeline para coletar
+ os dados de um único teste, a próxima etapa importante é adotar uma estrutura que pode executar
+ esse teste várias vezes, em vários dispositivos, e agregar os dados de desempenho resultados
+ para futuras análises da equipe de desenvolvimento.
+</p>
+
+<h4>
+ Uma estrutura para automatização de testes
+</h4>
+
+<p>
+ Vale observar que as estruturas de teste de IU (como o <a href="{@docRoot}training/testing/ui-testing/uiautomator-testing.html">UI Automator</a>)
+ são executadas diretamente no emulador/dispositivo alvo. Enquanto as informações de coleta de desempenho feita
+ pelo <em>dumpsys gfxinfo</em> forem direcionadas por uma máquina hospedeira, envie comandos pelo ADB. Para ajudar a transmitir
+ a automatização dessas entidades separadas, a estrutura <a href="{@docRoot}tools/help/monkeyrunner_concepts.html">MonkeyRunner</a>
+ foi desenvolvida: um sistema de script que é executado na máquina host que pode
+ emitir comandos para um conjunto de dispositivos conectados, bem como receber dados deles.
+</p>
+
+<p>
+ A compilação de um conjunto de scripts para uma automatização adequada de teste de desempenho de IU,
+ no mínimo, deve ser capaz de utilizar o MonkeyRunner para realizar as seguintes tarefas:
+</p>
+
+<ul>
+ <li>Carregar e iniciar um APK desejado para um emulador ou dispositivo alvo.
+ </li>
+
+ <li>Iniciar um teste de IU do UI Automator e permitir que ele seja executado.
+ </li>
+
+ <li>Coletar informações de desempenho por meio de <em>dumpsys gfxinfo</em><em>.</em>
+ </li>
+
+ <li>Agregar informações e exibi-las de forma útil para o desenvolvedor.
+ </li>
+</ul>
+
+
+<h3 id="triage">Triagem e resolução de problemas observados</h3>
+
+<p>
+ Quando os padrões ou regressões dos problemas forem identificados, a próxima etapa
+ é identificar e aplicar a resolução. Se a estrutura de teste automatizado preservar o detalhamento preciso para os quadros,
+ ela poderá ajudar na inspeção de alterações de layout/código suspeitos recentes (em caso
+ de regressão) ou reduzir a parte do sistema que você está analisando ao alternar
+ para a investigação manual. Para a investigação manual, <a href="{@docRoot}tools/help/systrace.html">systrace</a> é um ótimo lugar para começar,
+ exibindo as informações de precisão sobre cada estágio do pipeline de renderização,
+ cada encadeamento e núcleo no sistema, bem como quaisquer marcadores de evento personalizados definidos.
+</p>
+
+<h4>
+ Geração de perfis adequada de precisões temporais
+</h4>
+
+<p>
+ É importante observar as dificuldades em obter e medir as precisões
+ do desempenho de renderização. Esses números são, por natureza, não determinísticos e frequentemente
+ oscilam dependendo do estado do sistema, da quantidade de memória disponível,
+ da diminuição termal e da última vez em que a luz do sol atingiu a sua área da Terra. Ou seja, é possível executar
+ o mesmo teste duas vezes e receber números levemente diferentes
+ que podem ser muito próximos, mas não idênticos.
+</p>
+
+<p>
+ A coleta e a geração de perfil de dados nesta maneira significa executar o mesmo teste,
+ várias vezes, e acumular os resultados como uma média ou valor mediano (para a simplicidade,
+ chamemos de "lote"). Isto fornece uma aproximação do desempenho do teste,
+ já que precisões exatas não são necessárias.
+</p>
+
+<p>
+ Os lotes podem ser usados entre alterações de códigos para verificar o impacto relativo
+ dessas alterações no desempenho. Se a taxa de quadros média para o lote antes da alteração
+ for maior do que o lote após a alteração, então o resultado de desempenho wrt geral será um sucesso
+ para esta alteração em particular.
+</p>
+
+<p>
+ Isto significa que qualquer teste de IU automatizado feito deve levar este conceito
+ em consideração, bem como quaisquer anomalias que possam ocorrer durante um teste. Por exemplo,
+ se o desempenho do aplicativo repentinamente cair devido a algum problema do dispositivo
+ (que não tenha sido causado pelo aplicativo), então talvez seja necessário executar
+ o lote novamente para obter precisões menos caóticas.
+</p>
+
+<p>
+ Logo, quantas vezes deve-se realizar um teste antes de as medidas terem algum sentido? 10 vezes deve ser o mínimo,
+ com números altos como 50 ou 10 oferecendo resultados mais precisos
+ (é claro que se deve levar em consideração o tempo para ter mais precisão).
+</p>