Aplicativos pré-instalados para dispositivos móveis
Para adicionar um aplicativo pré-instalado a uma imagem móvel
O processo para criar um aplicativo pré-instalado é semelhante ao de um aplicativo padrão. No Centro de Desenvolvimento do Windows 10, um desenvolvedor envia um aplicativo que você deseja pré-instalar na imagem Windows 10 Mobile. Depois que o aplicativo for enviado, você poderá solicitar um pacote de pré-instalação, baixá-lo e adicioná-lo à imagem, conforme descrito neste tópico.
Para adicionar um aplicativo pré-instalado, você precisará executar as seguintes ações:
- Solicitar um pacote de pré-instalação
- Criar um .provxml para o aplicativo pré-instalado
- Adicionar o aplicativo à imagem com o arquivo de resposta personalização
- Criar a imagem
Solicitar um pacote de pré-instalação
Os desenvolvedores que adicionaram um aplicativo ao Centro de Desenvolvimento podem solicitar um pacote de pré-instalação para ele. Em seguida, eles podem fornecer o pacote de pré-instalação diretamente para o OEM com o qual estão trabalhando. Se você for o OEM adicionando este aplicativo à imagem do sistema operacional, peça ao desenvolvedor do aplicativo para baixar o pacote do aplicativo e, em seguida, fornecer o arquivo zip baixado. Você não pode acessar a conta de desenvolvedor diretamente. Depois de ter o pacote de pré-instalação, você poderá continuar com o restante das etapas. Para obter mais informações sobre como um desenvolvedor gera pacotes de pré-instalação para um OEM, consulte Gerar pacotes de pré-instalação para OEMs.
Criar um arquivo .provxml para um aplicativo pré-instalado
Adicionar um aplicativo pré-instalado a uma imagem do sistema operacional Windows 10 Mobile requer um arquivo de configuração .provxml que especifica os parâmetros de instalação e os identificadores de catálogo da Windows 10 Store. Especificamente, ele deve especificar o caminho para o arquivo .appx, o caminho para o arquivo de licença e as IDs do catálogo da Store. Essas informações são usadas quando o aplicativo se conecta ao serviço store para marcar para atualizações. Para minimizar a chance de erro, o portal do desenvolvedor fornece o XML apropriado para seu aplicativo. Veja a seguir um exemplo de como o .provxml pode ser.
<?xml version="1.0" encoding="UTF-8" ?>
<wap-provisioningdoc>
<characteristic type="AppInstall">
<characteristic type="AppXPackage">
<parm name="ProductID" value="{09f2d20a-7076-4970-80ac-1bc24c171d2e}"/>
<parm name="AppXPath" value="c:\Programs\CommonFiles\Xaps\SampleApp.appx"/>
<parm name="LicensePath" value="c:\Programs\CommonFiles\Xaps\SampleAppLicense.xml"/>
<parm name="InstanceID" value="{03e9a435-3000-11db-89ca-0019b92FFFFF}"/>
<parm name="OfferID" value="{03e9a435-3000-11db-89ca-0019b92FFFFF}"/>
<parm name="PayloadID" value="{03e9a435-3000-11db-89ca-0019b92FFFFF}"/>
<parm name="UninstallDisabled" value="false"/>
<parm name="FullyPreInstall" value="false"/>
<parm name="ForceUpdate" value="false"/>
</characteristic>
</characteristic>
</wap-provisioningdoc>
Observação
Os arquivos provxml para aplicativos pré-instalados devem seguir uma convenção de nomenclatura prescrita. Você deve usar MPAP_name_index.provxml, em que nome e índice podem ser cadeias de caracteres. Normalmente, name é o nome do pacote de atualização que contém o aplicativo pré-instalado e index é uma cadeia de caracteres que diferencia arquivos provxml que têm o mesmo nome. Geralmente, o índice é representado como um número, como 01.
sinalizadores provxml
Esses são os sinalizadores que você pode usar em seu provxml.
Sinalizador | Descrição |
---|---|
Desinstalar Desinstalado | Esse sinalizador controla se um aplicativo pré-instalado pode ser desinstalado por um usuário. Quando definido como FALSE(padrão), um usuário é capaz de desinstalar o aplicativo pré-instalado. Quando definido como TRUE, um usuário não é capaz de desinstalar o aplicativo. Esse sinalizador só é configurável por meio de provxml e não pode ser substituído por meio de uma atualização da Store. Somente uma atualização de dispositivo com um arquivo provxml atualizado pode alterar esse valor. Idealmente, para manter a experiência do usuário, esse sinalizador só deve ser definido como TRUE para aplicativos que são essenciais para a funcionalidade do telefone. |
ForceUpdate | Esse sinalizador permite que um aplicativo em uma imagem de atualização do sistema operacional tente substituir uma versão existente do aplicativo já instalada no telefone antes de atualizar para Windows 10 Mobile. O valor padrão para esse sinalizador é FALSE. Lembre-se de que, como a atualização do aplicativo é forçada, definir esse sinalizador como TRUE pode resultar em um downgrade na funcionalidade se o aplicativo já instalado tiver sido desenvolvido para uma versão anterior do sistema operacional. Em geral, esse sinalizador só deve ser usado quando a versão Windows 10 Mobile do aplicativo deve estar no telefone imediatamente após a atualização, mesmo que isso signifique fazer downgrade da versão do aplicativo já instalada. |
FullyPreinstall | Esse sinalizador controla se o aplicativo está associado ao MDIL durante a primeira inicialização/atualização ou se está atrasado até que essas operações sejam concluídas. Atrasar a associação MDIL, que é o comportamento padrão para aplicativos que não estão pré-fixados em Iniciar, permite que o usuário volte ao telefone o mais rápido possível. Quando a associação for adiada até que a primeira inicialização/atualização seja concluída, o ícone do aplicativo será exibido esmaecido com um status de "instalação" e não poderá ser executado até que a associação adiada seja concluída. O tempo necessário para concluir todas as associações adiadas depende do número de aplicativos pré-carregados adiados e da atividade do usuário. O comportamento do sinalizador é o seguinte:
|
Adicionar o aplicativo à imagem
Os aplicativos de pré-instalação são adicionados à imagem do sistema operacional usando um arquivo de resposta customizations.xml. Para criar o arquivo de resposta customizations.xml, primeiro instale o Designer de Configuração do Windows e, em seguida, crie um pacote de provisionamento. Em seguida, você pode abrir a pasta do projeto para localizar o arquivo customizations.xml.
Para incluir aplicativos pré-instalados em sua imagem, você deve adicionar o Application
elemento ao arquivo customizations.xml com os atributos de definição apropriados. O exemplo de código a seguir ilustra como um aplicativo seria adicionado a um arquivo de resposta de personalização para pré-instalação.
<Applications>
<Application License="$(CAFE_OUTPUT_DIR)\content\App_MobileTV_7e7cc86e_e1c0_476a_ac88_db3c9ffffabb\MobileTV_License.xml" ProvXML="$(CAFE_OUTPUT_DIR)\content\App_MobileTV_7e7cc86e_e1c0_476a_ac88_db3c9ffffabb\MPAP_MobileTV_01.provxml" Source="$(CAFE_OUTPUT_DIR)\content\App_MobileTV_7e7cc86e_e1c0_476a_ac88_db3c9ffffabb\MobileTV.xap"/>
<Application License="$(CAFE_OUTPUT_DIR)\content\App_AudioSettings_373cb76e_7f6c_45aa_8633_b00e85c73261\audio_License.xml" ProvXML="$(CAFE_OUTPUT_DIR)\content\App_AudioSettings_373cb76e_7f6c_45aa_8633_b00e85c73261\MPAP_audio_01.provxml" Source="$(CAFE_OUTPUT_DIR)\content\App_AudioSettings_373cb76e_7f6c_45aa_8633_b00e85c73261\audio.appx"/>
<Application License="$(CAFE_OUTPUT_DIR)\content\App_MicrosoftHealthApp_0168b504_ca18_46b8_b60a_0f6fdc271c81\MicrosoftHealthApp_License.xml" ProvXML="$(CAFE_OUTPUT_DIR)\content\App_MicrosoftHealthApp_0168b504_ca18_46b8_b60a_0f6fdc271c81\MPAP_MicrosoftHealthApp_01.provxml" Source="$(CAFE_OUTPUT_DIR)\content\App_MicrosoftHealthApp_0168b504_ca18_46b8_b60a_0f6fdc271c81\MicrosoftHealthApp.appxbundle"/>
</Applications>
Observação
O arquivo provxml deve ser colocado no diretório "$(runtime.commonfiles)\Provisioning\OEM". O arquivo de licença e o pacote de aplicativos (.xap ou .appx) devem ser colocados no diretório "$(runtime.commonfiles)\xaps"
Depois de configurar o arquivo de resposta customizations.xml, crie a imagem usando a interface de linha de comando Designer configuração do Windows. Consulte Configuração do Windows Designer interface de linha de comando para obter instruções.
Criar a imagem
Siga as etapas em Criar uma imagem móvel personalizada usando imggen