Fauxgap Javascript

O que é

O workspace html5 de exemplo fornecido na  Intel® HTML5 Development Environment contém um pequeno arquivo chamado fauxgap.js. Este script cobre toda a API Apache Cordova* (PhoneGap) e é configurável. Ele pode ser utilizado em páginas que estão sendo testadas na Pré-visualização ou para testes unitários.

Relacionamento com o Emulador de Dispositivos

O Intel HTML5 Development Environment inclui um Emulador de Dispositivos (veja o Guia Iniciando com o Emulador de Dispositivos). O Emulador de Dispositivos fornece uma forma superior para executar apps que utilizam a API Cordova e ele não precisa do fauxgap.js. A entrada da API é controlada de forma fácil e direta através da UI do Emultador de Dispositivos, e o app é dimensionado de forma correta para os diversos modelos de dispositivos móveis. Adicionalmente, certos eventos do Cordova podem ser disparados.

O Fauxgap.js não é foi desenvolvido para ser utilizado com o Emulador de Dispositivosl ele é utilizado quando você executa sua aplicação atravaés da operação Preview in Browser.

Configurando

Iniciar com o fauxgap.js é muito simples. Simplesmente:

  • Copie o arquivo fauxgap.js do diretório padrão do projeto para a pasta do seu próprio projeto
  • Modifique sua tag <script> para fazer referência ao fauxgap.js em vez de referenciar o cordova.js: <script src="fauxgap.js"></script>

Alerta - NÃO empacote o fauxgap.js

fauxgap.js irá interferir com o Emulador de Dispositivos.  Ele também irá causar estragos se for utilizado pelo seu app quando o build dele for feito usando o PhoneGao Build*.  Tenha certeza que restaurou a tag  <script> de volta para cordova.js antes de empacotar o seu aplicativo ou antes de executá-lo no Emulador de Dispositivos.

Dados Randômicos

Alguns callbacks da API que estão esperando dados do dispositivo (como o acelerômetro) podem receber dados ramdômicos. Este comportamento é normalmente configurável. O ponto é que o fauxgap.js não tenta se passar como um dispositivo sendo manuseado por uma pessoa real, ele simplesmente fornece dados alternados para que as funções de callback possam ser testadas.

Configurando o fauxgap.js

Perto do topo do fauxgap.js eiste um bloco grande chamado fauxgap_ini. Ele é um objeto JavaScript com dezenas de atributos. Deve ser bem claro o que cada atributo controla. Altere seus valores para alterar o comportamento padrão da API Cordova fornecida pelo fauxgap.js. Em particular, se você quiser testar suas rotinas de tratamento de erros, isto é fácil de ser configurado. Aqui está um exemplo do blogo fauxgap_ini:

var fauxgap_ini =  { 
                    faux_device: "when-missing",
                    device_properties: {name:"faux device", cordova:"2.1.0",
                       phonegap:"2.1.0", platform:"iPhone",
                       uuid:"fauxgap-simulated-uuid", version:"6.0"}, 

                    // valores: "never", "when-missing", "always"
                                 faux_accelerometer: "when-missing",
                    //altere para falso para chamar um handler de erro.
                    getCurrentAcceleration_succeeds: true,
                    accelerometer_at_rest: false,
                    
                    faux_camera: "when-missing",
                    getPicture_succeeds: true,
                    picture_uri:
"http://www.intel.com/content/dam/www/global/homepage/dragon.jpg/_jcr_content/renditions/small.jpg",

"when-missing"

Cada um dos domínios da API Cordova API possui um atributo faux.  Exemplo: faux_accelerometer . Os três valores possíveis são "when-missing", "never" ou "always".  "when-missing" significa que o fauxgap.js deve apenas prover esta API se ela não existir no DOM.  O uso de "always" significa que o fauxgap.js deve sempre prover a API, mesmo sobrescrevendo uma API já existente no DOM.  E "never" diz ao fauxgap.js para não implementar aquela API em paticular.

_succeeds

Certas funções da API, ou grupos de funções, aceitam um callback de sucesso (success) bem como um callback de erro (error).  Se um atributo succeeds for verdadeiro, então o callback success daquela função será chamado, em caso contrário, o callback failure será chamado.

Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.