mozilla
Os seus resultados da pesquisa

    Alterando os aplicativos empacotados durante a compilação da imagem

    Este artigo necessita de uma revisão editorial.

    Como um desenvolvedor ou um fornecedor de dispositivos, você vai querer customizar os aplicativos que virão instalados em um dispositivo Firefox OS por uma variedade de razões. Esse artigo explica os diferentes mecanismos de fazer isso.

    Locais dos aplicativos dentro do Gaia

    Os aplicativos que são executados no Firefox OS estão na árvore de fontes do Gaia, em uma dos dois diretórios:

    • gaia/apps/: Nesse diretório ficam os aplicativos padrões do sistema, como calendário, email, configurações, etc.
    • gaia/dev-apps: Nesse diretório ficam os outros aplicativos, como aqueles incluídos no processo de customização.

    Se você quiser retirar ou adicionar aplicativos na sua imagem do Gaia/B2G, você pode fazer isso de algumas formas diferentes detalhadas abaixo.

    Método de customização por "força bruta"

    O método "força bruta" consiste-se em simplesmente apagar os aplicativos que você não quer que estejam presentes na imagem, antes da compilação.

    Editando as listas de configuração

    O método mais refinado é editar os arquivos apps-*.list (encontrados nos diretórios phone/ ou tablet/ em gaia/build/config/, dependendo do tipo do dispositivo) que contém os caminhos para incluir os aplicativos em tempo de compilação. Por exemplo, gaia/build/config/phone/apps-production.list parece algo como:

    apps/bluetooth
    apps/bookmark
    apps/browser
    apps/calendar
    apps/callscreen
    etc.

    Observer que você também pode especificar que todos os aplicativos do diretório sejam incluídos na imagem, como por exemplo:

    apps/*

    O mecanismo para escolher qual arquivo apps-*.list será utilizado durante a compilação os aplicativos disponíveis está em gaia/Makefile, e é algo como:

    GAIA_DEVICE_TYPE?=phone
      ...
    GAIA_APP_TARGET?=engineering
      ...
    ifeq ($(MAKECMDGOALS), demo)
    GAIA_DOMAIN=thisdomaindoesnotexist.org
    GAIA_APP_TARGET=demo
    else ifeq ($(MAKECMDGOALS), dogfood)
    DOGFOOD=1
    else ifeq ($(MAKECMDGOALS), production)
    PRODUCTION=1
    endif
      ...
    ifeq ($(PRODUCTION), 1)
    GAIA_OPTIMIZE=1
    GAIA_APP_TARGET=production
    endif
    
    ifeq ($(DOGFOOD), 1)
    GAIA_APP_TARGET=dogfood
    endif
      ...
    ifndef GAIA_APP_CONFIG
    GAIA_APP_CONFIG=build$(SEP)config$(SEP)apps-$(GAIA_APP_TARGET).list
    endif

    Incialmente, a variável GAIA_APP_TARGET é configurada como engineering e a variável GAIA_DEVICE_TYPE como phone, assim, como padrão a compilação do Gaia a partir do fonte usará o arquivo gaia/config/phone/app-engineering.list (que inclui todos os testes, demos, etc).

    Para especificar o uso de uma lista diferente de aplicativos especifique opções diferentes para executar o comando make. Por exemplo, para compilar com a lista gaia/build/config/phone/apps-production.list, use:

    PRODUCTION=1 make

    Se você especificar com DEMO=1, irá usar a lista apps-demo.list. Se for DOGFOOD=1 será usada a lista apps-dogfood.list.

    Você pode alterar diretamente GAIA_APP_CONFIG em gaia/Makefile, e fornecer seu próprio arquivo apps-*.list.

    gaia/Android.mk contém essas linhas:

    ifneq ($(filter user userdebug, $(TARGET_BUILD_VARIANT)),)
    GAIA_MAKE_FLAGS += PRODUCTION=1
    B2G_SYSTEM_APPS := 1
    endif

    Quando você compilar, se VARIANT=user ou VARIANT=userdebug (acabam se refletindo na variável TARGET_BUILD_VARIANT), a variável PRODUCTION recebe o valor 1 (PRODUCTION=1) quando o Gaia é compilado.

    Nota: Descubra outras opções disponíveis do make no artigo referência de opções make.

    Usando customizações de mercado

    O terceiro, e mais refinado método (porém o mais complexo) é usar customizações. Isso possibilita especificar instruções de customizações em tempo de compilação em diferentes diretórios sem a necessidade de alterar o repositório principal do Gaia. Você pode lincluir suas próprias customizações em diretórios distintos, ou usar diretórios pré-existentes que vêm com o fonte.

    Por exemplo, especificando a localização do modelo de customização com a variável de ambiente GAIA_DISTRIBUTION_DIR:

    GAIA_DISTRIBUTION_DIR=distribution_tablet make

    Mais exemplos de customizações para mecanismo de distribuição podem ser encontrados em https://github.com/mozilla-b2g/gaia/tree/master/customization

    Customizações possuem seu próprio artigo, leia nosso Guia de customizaçõe do mercado.

    Nota: Se você quiser incluir aplicativos externos customizados como parte da sua imagem do Gaia, você precisa compilar de uma forma específica e colocá-los no diretório gaia/dev-apps/. Leia o artigo Compilando aplicativos web pré-empacotados para saber mais a respeito.

    Importante: Se você é um fornecedor de dispositivos e deseja criar uma imagem customizada do B2G/Gaia para distribuição, você precisa satisfazer certos critérios antes de poder incluir o aplicativo Firefox Marketplace no seu telefone/tablet/etc. Contacte a Mozilla para maiores detalhes.

     

    Etiquetas do documento e colaboradores

    Contributors to this page: rbrandao
    Última atualização por: rbrandao,
    Esconder painel