Com a liberação da versão 2.4 do Magic xpa, vários novos recursos estão disponíveis para os desenvolvedores de soluções Android (bem como iOS). Entre estes recursos, está a execução do programa pelo Studio, diretamente no emulador Android.
Isso significa que quando for executado um F7 (ou CTRL+F7) no Studio, o programa executará diretamente no emulador e não mais no MS-Windows.
Abaixo, seguem os passos necessários para fazer o ‘debug’ diretamente no emulador Android:
1. Instalação do Client RIA (APK)
Primeiro passo, é instalar o client Magic xpa no emulador. Não precisa informar nenhum arquivo de conexão (DevProps.???). Basta apenas instalar o APK:
Necessitando mais dicas sobre esta instalação, visite este outro post.
2. Configuração do Android
No Android do emulador, ative a opção “Debug USB”:
3. Configuração do Magic
A) Na pasta “RIAModules\Android”(tem de ser estritamente este nome), editamos o arquivo “run.bat”. Nele, o valor da variável “PackageName” tem de ser exatamente igual ao “package.name” do APK instalado no emulador, no passo #1:
B) Um detalhe importante, é que o Magic xpa Studio sempre utiliza o nome da máquina como sendo o endereço do RIA Server. O emulador Android não reconhece os servidores pelo nome, mas pelo IP. Por isso, na pasta “RIAModules\Utils\adb”, entre no prompt do DOS e execute o comando: adb pull /system/etc/hosts
C) Edite o arquivo “RIAModules\Utils\adb\hosts” (baixado pelo comando anterior) e associe o nome da sua máquina (onde está o Magic xpa Studio e o emulador Android) ao ip 10.0.2.2. Isso permitirá ao Android no emulador reconhecer a sua máquina pelo nome (redirecionando as chamadas para o endereço 10.0.2.2). Isso é importante porque quando executamos um programa/aplicação pelo Magic xpa Studio, ele utiliza sempre o nome da máquina atual como sendo o RIA Server.
Observe que como este arquivo é para um sistema Linux, o final da linha precisa ser apenas LF (line feed).
D) Em seguida, execute o comando: adb push hosts /system/etc/hosts, para atualizar novamente o arquivo hosts no Android.
E) Se por alguma razão o seu emulador não permitir alterações no arquivo “hosts”, existe outra opção.
- Baixe o utilitário “XpaXmlFix.exe” do FTP da MSB.
- Copie-o na pasta “RIAModules\Utils\adb”
- Edite o arquivo “run.bat” na pasta “RIAModules\Android” e adicione o comando: call ..\utils\adb\XpaXmlFix.exe “%~1” <machine> <ip> antes do comando “adb push”:
Onde <machine> representa o nome da sua máquina e <ip> é o endereço que você deseja que o emulador use para conectar ao RIA Server.
4. Executando o Programa/Aplicação
No Magic xpa Studio há um novo botão na barra de ferramentas, com o ícone do Android, que pertence ao menu “Debug”:
Quando este botão não está pressionado, o comportamento é o mesmo das versões anteriores: executar o programa/aplicação no RIA MS-Windows:
Mas se este botão estiver pressionado, o Magic xpa Studio emitirá o comando:
cmd /c <xpa_folder>\RIAModules\Android\Run.bat “<project_folder>\execution.properties”
Se o emulador estiver ativo, e o referido APK estiver instalado, o programa abre diretamente no emulador:
Para que o xpa Studio utilize outra informação que não o nome da máquina no arquivo “execution.properties”, basta definir o endereço completo do requester no menu “Options > Settings >
Environment > Server – tab > HTTP Requester”, ex:
http://10.0.2.2/Magic24Scripts/MGrqispi.dll
O xpa Studio usa esta informação para montar as tags , e do arquivo “execution.properties”