[[ajuda:|{{ :ajuda:gsan-mobile.png?nolink&150|}}]]
====== Modificações nos Aplicativos GSANAS para atender às especificações do Android 11 ======
Esta documentação de apoio contém as informações básicas feitas para a **CAGEPA** via **RM [[https://redmine.consensotec.com.br/issues/53958|53958]]**, que corrigiu um problema com a versão **11** do **Android**. Qual? Segundo nova especificação do **Google**, os aplicativos não podem mais escrever na pasta raiz do **SD Card**, ficando restritos a criar e manipular arquivos dentro de uma pasta específica que o **Android** aloca para o aplicativo.
Outra mudança de impacto foi a necessidade de solicitar ao usuário permissão para criar arquivos dentro de //Pastas Padrões do Sistema// (Download, Documentos, Imagens, etc). Tais mudanças basicamente impactam diretamente em 3 funcionalidades:
- Importação Offline dos arquivos;
- Geração do Arquivo de Retorno para importação no GSAN;
- Exportação das Bases de dados para depuração de erros.
- Para mais detalhes sobre essas funcionalidades, acesse nosso **[[=ajuda:mobile:gsanas|Manual do GSANAS]]**.
\\
Para exemplificar, seguem as mudanças feitas no **GSANAS**, adotadas como padrão em todos os sistemas satélites.
===== Importação Offline dos Arquivos =====
Na versão atual do **GSANAS**, para fazer a importação do arquivo é necessário baixar o arquivo **.txt** e adicioná-lo na pasta no caminho: **/gsanas/carregamento** conforme abaixo:
\\
{{ :ajuda:mobile:gsanas:pasta_carregamento_atual.png?500 |}}
\\
Ao fazer isso, o aplicativo reconhece que há arquivos, e mostra a lista de arquivos disponíveis na pasta para serem carregados conforme abaixo:
\\
{{ :ajuda:mobile:gsanas:tela_roteiro_atual.png?500 |}}
\\
A partir da versão homologada para o **Android 11**, essa dinâmica mudou para a tela seguinte:
\\
{{ :ajuda:mobile:gsanas:tela_carregar_arquivo.png?500 |}}
\\
Note que acima aparecem 2 botões: **Visualizar Informações do Sistema** e **Carregar Arquivo**. O primeiro botão mostra dados relativos à conexão com os serviços do **GSAN** (antes ele estava em uma mensagem e foi transformado em um botão).
Já o **Carregar Arquivo** chama uma nova funcionalidade que permite ao usuário apontar arquivos **txt** que estejam na pasta **Download**, como mostra a imagem abaixo:
\\
{{ :ajuda:mobile:gsanas:carregar_arquivo_2.png?500 |}}
\\
Depois que o usuário escolhe um arquivo, o carregamento ocorre do mesmo jeito que antes e o sistema pode ser usado normalmente. O único detalhe é que o **Android** filtra apenas arquivos **txt**, como era feito antes. Essa alteração afeta **todas** as versões de **Android** compatíveis com o **GSANAS**.
\\
===== Geração do Arquivo de Retorno para importação no GSAN =====
Na geração dos arquivos de retorno, foi adotada a seguinte estratégia: nas versões compatíveis com o aplicativo que sejam **inferiores** ao **Android 11**, o fluxo permanece o mesmo, conforme mostrado abaixo:
\\
{{ :ajuda:mobile:gsanas:menu_exportar_base_arquivo_offline.png?500 |}}
\\
Acima, o usuário seleciona a opção para gerar o arquivo de retorno. No **GSANAS** é a opção **Finalizar Roteiro Offline**. Ao fazê-lo, o sistema gera o respectivo arquivo na pasta padrão de retorno, que no caso do **GSANAS** é a pasta **/gsanas/retorno_offline** conforme imagem abaixo:
\\
{{ :ajuda:mobile:gsanas:pasta_retorno_atual.png?500 |}}
\\
Na versão do **Android 11**, a diferença é que o aplicativo vai salvar o arquivo na pasta padrão de **Downloads** do celular. Mas o aplicativo só vai fazer isso quando o usuário confirmar a ação. Então, ao clicar na opção **Finalizar Roteiro Offline**, o sistema exibe uma tela para que o usuário confirme a criação do arquivo dentro da pasta **Downloads**:
\\
{{ :ajuda:mobile:gsanas:exportar_arquivo_retorno_offline.png?500 |}}
\\
Com a confirmação do usuário, o processo está finalizado e o arquivo pode ser localizado dentro da pasta para ser extraído e feito upload no **GSAN** normalmente.
\\
===== Exportação das Bases de Dados para Depuração de Erros =====
Na exportação da base de dados, a estratégia foi a mesma do arquivo de retorno: versões de **Android** **inferiores** ao **Android 11**, o fluxo permanece o mesmo:
\\
{{ :ajuda:mobile:gsanas:menu_exportar_base_arquivo_offline.png?500 |}}
\\
A única diferença entre o fluxo do arquivo de retorno é a pasta de destino do arquivo que no caso do **GSANAS** será **/gsanas/backup_base**:
\\
{{ :ajuda:mobile:gsanas:pasta_banco_atual.png?500 |}}
\\
Na versão do **Android 11**, o comportamento é literalmente o mesmo da geração do arquivo de retorno. Ao selecionar a opção **Exportar Base de Dados** o sistema abre a mesma tela para o usuário confirmar que o arquivo será salvo na pasta de **Downloads**:
\\
{{ :ajuda:mobile:gsanas:exportar_base_de_dados.png?500 |}}
\\
Apenas com a confirmação, a ação é encerrada e o arquivo de banco de dados fica disponível para análise.
\\
===== Conclusão =====
A estratégia nesses 3 pontos vai se tornar padrão para todas as aplicações. As futuras versões homologadas no **Android 11** vão se comportar igual nos 3 pontos, mudando apenas as opções dentro do sistema e os caminhos no **SD Card** que podem mudar de app para app. Não houve mudanças nas demais funcionalidades como telas, comunicação e demais fluxos dentro do sistema. Apenas a adequação necessária ao manejo de arquivos por parte da aplicação. Ao contrário da versão **10**, a atualização poderá ocorrer pelo processo automático via **GSAN** normalmente.
\\
===== Referências =====
**[[=postgres:mobile|Mobile]]**
==== Termos Principais ====
**[[=ajuda:mobile|Mobile]]**
===== Vídeos =====
**[[=treinamentos:livre:video-aulas:gsanas|GSANAS]]**
\\
\\
Clique **[[:ajuda|aqui]]** para retornar ao Menu Principal do GSAN
~~ODT~~