| Desenvolvedores Android

syntax:

contido em: nenhum deve conter:<application>pode conter:<compatible-screens>
<instrumentation>
<permission>
<permission-group>
<permission-tree>
<supports-gl-texture>
<supports-screens>
<uses-configuration>br><uses-feature>
<uses-permission>
<uses-permission-sdk-23>br>>><uses-sdk>descrição: O elemento raiz do ficheiro AndroidManifest.xml. Deve conter um<application>elemento e especificarxmlns:androidepackageatributos. atributos:xmlns:androiddefine o espaço de nomes do Android. Este atributo deve ser sempre definido para “packageUm nome de pacote completo em linguagem Java para a aplicação Android. O nome pode conter letras maiúsculas ou minúsculas (‘A’ a ‘Z’), números, e sublinhados (‘_’). Contudo, as partes individuais do nome do pacote só podem começar com letras.

Enquanto constrói a sua aplicação num pacote de aplicação (APK), o sistema de construção usa o package atributo para duas coisas:

  • aplica este nome como o espaço de nomes para a sua aplicação gerada R.java classe (usada para aceder aos recursos da sua aplicação).

    Por exemplo, se package estiver definido para "com.example.myapp", o R classe é criado em com.example.myapp.R.

  • Utiliza este nome para resolver quaisquer nomes relativos de classe que sejam declarados no ficheiro manifesto.

    Por exemplo, se package estiver definido em "com.example.myapp", uma actividade declarada como <activity android:name=".MainActivity"> está resolvida a ser com.example.myapp.MainActivity.

Este nome é também o nome padrão para o seu processo de aplicação (ver o <application>element’s processattribute). E é a afinidade padrão da tarefa para as suas actividades (ver o<activity> element’staskAffinity attribute).

Este nome também representa o ID da aplicação, que deve ser universalmente único para poder publicar a sua aplicação no Google Play. Contudo, no final do processo de construção da APK, as ferramentas de construção substituem o ficheiro package nome utilizando oapplicationId propriedade do ficheiro build.gradle (utilizado por Android Studioprojects). Desde que mantenha o package nome o mesmo que o ficheiro de construçãoapplicationId do manifesto, isto não será uma preocupação. Mas se estes dois valores diferirem, deverá compreender as diferenças entre o “nome do pacote” e o “ID da aplicação” lendo como definir o ID da aplicação.

Para evitar conflitos com outros programadores, deverá utilizar a propriedade do domínio da Internet como base para os nomes dos seus pacotes (no verso). Por exemplo, as aplicações publicadas pelo Google começam comcom.google.

Nota: Tanto o com.example como o com.androidnamespaces são proibidos pelo Google Play.

se quiser alterar o nome do seu pacote depois de o publicar, pode, mas deve manter o applicationId o mesmo. O applicationId define a identidade única para a sua aplicação no Google Play. Assim, se mudar, a APK é considerada como uma aplicação diferente e os utilizadores da versão anterior não receberão uma actualização. Para mais informações, ver como é que a aplicação ID.

android:sharedUserId

Esta constante foi depreciada no nível da API 29.
IDs de utilizador partilhados causam comportamento não determinístico dentro do gestor de pacotes. Como tal, a sua utilização é fortemente desencorajada e pode ser removida numa futura versão do Android. Em vez disso, as aplicações devem utilizar mecanismos de comunicação mais avançados, tais como serviços e fornecedores de conteúdos, para facilitar a interoperabilidade entre componentes partilhados. Note-se que as aplicações existentes não podem remover este valor, asmigrating off a shared user ID is not supported.

The name of a Linux user ID that will be shared with other apps.By default, Android assigned each app its own unique user ID.However, if this attribute is set to the same value for two or moreapps, they will all share the same ID – provided that theircertificate sets are identical. As aplicações com o mesmo ID de utilizador podem aceder aos dados dos outros e, se desejado, correr no mesmo processo.

android:targetSandboxVersionA caixa de areia alvo para esta aplicação utilizar. Quanto maior o número da versão sandbox, maior o nível de segurança. O seu valor por defeito é1; pode também defini-lo para2.Definindo este atributo para2muda oapp para uma caixa de areia SELinux diferente.

As seguintes restrições aplicam-se a uma caixa de areia de nível 2:

  • O valor por defeito deusesCleartextTraffic no Network Security Config é falso.
  • A partilha de URL não é permitida.

Para aplicações instantâneas Android com o Android 8.0 (API nível 26) ou superior, este atributo deve ser definido para 2. Pode definir o nível sandbox na versão instalada da sua aplicação para o nível 1 menos restritivo, mas se o fizer, a sua aplicação não persiste nos dados da aplicação instantânea para a versão instalada da sua aplicação. Deve definir o valor sandbox da aplicação instalada para 2 em ordem para que os dados persistam desde a aplicação instantânea até à versão instalada.

A partir do momento em que uma aplicação é instalada, só pode actualizar o seu valor sandbox alvo para um valor superior.Para diminuir o valor sandbox alvo, é necessário desinstalar a app e substituí-la por uma versão cujo manifesto contenha um valor inferior para este atributo.

android:sharedUserLabel

Esta constante foi depreciada em nível de API 29.
IDs de utilizador partilhados causam um comportamento não determinístico dentro do gestor de pacotes. Como tal, a sua utilização é fortemente desencorajada e pode ser removida numa futura versão do Android. Em vez disso, as aplicações devem utilizar mecanismos de comunicação mais avançados, tais como serviços e fornecedores de conteúdos, para facilitar a interoperabilidade entre componentes partilhados. Note-se que as aplicações existentes não podem remover este valor, asmigrating off a shared user ID não é suportada.

A user-readable label for the shared user ID. A etiqueta deve ser definida como referência a um recurso string; não pode ser uma string em bruto.

Este atributo foi introduzido na API Nível 3. É significativo apenas se o atributo sharedUserId também estiver definido.

android:versionCodeUm número de versão interno. Este número é utilizado apenas para determinar se uma versão é mais recente do que outra, com números mais elevados indicando versões morerecentes. Este não é o número de versão mostrado aos utilizadores; esse número é definido pelo atributoversionName.

O valor deve ser definido como um número inteiro, tal como “100”. Pode defini-lo como quiser, desde que cada versão sucessiva tenha um número superior. Por exemplo, pode ser um número de construção. Ou pode traduzir um número de versão em formato “x.y” para um número inteiro, codificando o “x” e o “y” separadamente nos 16 bits inferiores e superiores. Ou poderia simplesmente aumentar o número em um de cada vez que uma nova versão fosse lançada.

android:versionNameO número de versão mostrado aos utilizadores. Este atributo pode ser definido como um rawstring ou como uma referência a um recurso de string. A string não tem outro propósito que o de ser mostrada aos utilizadores. O atributoversionCodecontém o número de versão significativo utilizado internamente.android:installLocationO local de instalação padrão para a aplicação.

As seguintes cadeias de palavras-chave são aceites:

>th>Description

>”auto“>>Aplicação pode ser instalada no armazenamento externo, mas o sistema instalará oapp no armazenamento interno por defeito. Se o armazenamento interno estiver cheio, então o sistema irá instalá-lo no armazenamento externo. Uma vez instalado, o utilizador pode mover o app para o armazenamento interno ou externo através das configurações do sistema.
>Value
internalOnly A aplicação deve ser instalada apenas no armazenamento interno do dispositivo. Se isto for definido, a aplicação nunca será instalada no armazenamento externo. Se o armazenamento interno estiver cheio, então o sistema não instalará a aplicação. Este é também o comportamento padrão se não definir android:installLocation.
preferExternal O app prefere ser instalado no armazenamento externo (cartão SD). Não há qualquer garantia de que o sistema honrará este pedido. O aplicativo poderá ser instalado no armazenamento interno se o suporte externo não estiver disponível ou estiver cheio. Uma vez instalado, o utilizador pode mover o app para o armazenamento interno ou externo através das configurações do sistema.

Nota: Por defeito, a sua aplicação será instalada no armazenamento interno e não pode ser instalada no armazenamento externo, a menos que defina este atributo como “auto” ou “preferExternal“.

Quando uma aplicação é instalada no armazenamento externo:

  • O ficheiro .apk é guardado no armazenamento externo, mas quaisquer dados da aplicação (tais como bases de dados) ainda são guardados na memória interna do dispositivo.
  • O recipiente em que o ficheiro .apk é guardado é codificado com uma chave que permite à aplicação funcionar apenas no dispositivo que a instalou. (Um utilizador não pode transferir o cartão SD para outro dispositivo e utilizar aplicações instaladas no cartão). Embora, vários cartões SD possam ser utilizados com o mesmo dispositivo.
  • A pedido do utilizador, a aplicação pode ser movida para o armazenamento interno.

O utilizador pode também pedir para mover uma aplicação do armazenamento interno para o armazenamento externo. Contudo, o sistema não permitirá ao utilizador mover a aplicação para armazenamento externo se este atributo for definido para internalOnly, que é a configuração padrão.

Ler App Install Location formore information about using this attribute (including how to maintain backward compatibility).

Introduced in: API Nível 8.

Introduzido em: API Nível 1 para todos os atributos, salvo indicação em contrário na descrição do atributo. ver também:<application>

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *