Sobreposição de aplicativos são pequenos programas .app armazenados em Flash externo e carregados em um espaço de trabalho dedicado 4 KiB RAM apenas quando lançado. Eles permitem que a edição experimental Labs adicione ferramentas, modos de rádio, demos visuais e jogos sem encaixar permanentemente cada aplicativo no Flash interno do firmware.
[!WARNING] Overlay apps são um recurso experimental
v6.0.0. Atualmente, apenas a ediçãoLabscontém o carregador de aplicativos. Os aplicativos estão vinculados a um firmware ABI, nível de API, endereço RAM e recursos residentes opcionais; atualizar ou reinstalar um aplicativo se o rádio reportar um erro de compatibilidade.
O rádio fornece slots 8 de aplicativos externos-Flash. Cada slot contém um código de cabeçalho mais aplicativo de no máximo 4 KiB. Antes de uma aplicação ser executada, o carregador verifica:
O firmware interno Flash nunca é reescrito quando um aplicativo é instalado, lançado ou excluído. Um aplicativo ruim ou incompatível é recusado de forma limpa em vez de ser executado.
O catálogo atual contém onze aplicativos: ferramentas de rádio como Broadcast FM, FoxHunt, Beacon e Beam, mais Breakout, Tetris, Cube3D, Plasma, Snake, Rapid Roll e Space Impact. Veja Referência das aplicações para os aplicativos documentados e seus controles. A disponibilidade depende dos binários de aplicativos distribuídos para a versão de firmware selecionada e dos recursos compilados para o firmware Labs em execução.
Labs.Apps (Labs only)..app local.Install app e aguarde a gravação e verificação para concluir.UV Studio pode atualizar a mesa de slot, mostrar o nome, versão, tamanho e status de cada aplicativo, e excluir um aplicativo sem tocar no resto do rádio.
Os slots de aplicativos são numerados 1 para 8 em UV Studio e no lançador F + 7 on-radio.
F e 7 VOX.UP / DOWN em UV-K5, ou LEFT / RIGHT em UV-K1, para selecionar um dos oito slots exibidos. O layout ativo segue SetNav.M para executar o aplicativo selecionado.EXIT retorna ao lançador de aplicativos ou tela de rádio normal.Os slots vazios permanecem visíveis no lançador. A posição de fenda e rolagem selecionada são lembradas até que o rádio reinicie. O lançador e aplicativos compatíveis são espelhados no UV Studio.
Alguns aplicativos também podem anunciar uma das ações programáveis normais: FM RADIO, FOX HUNT, BEACON ou BEAM. Quando o aplicativo correspondente é instalado e válido, essa ação pode lançá-lo diretamente a partir de uma chave atribuída ou do seletor de ação side-key. Se mais de um aplicativo instalado anuncia a mesma ação, o slot compatível de menor número é usado.
| Mensagem de rádio | Significado / ação |
|---|---|
UPDATE APP |
o formato do aplicativo, ABI, tamanho ou endereço de link é mais antigo ou incompatível; instale uma compilação de aplicativo correspondente |
UPDATE FIRMWARE |
o aplicativo requer uma API de aplicativo mais recente; atualizar o firmware Labs |
REINSTALL APP |
a escrita está incompleta ou o código CRC está errado; instale o arquivo .app novamente |
NOT SUPPORTED |
o aplicativo precisa de uma capacidade residente que esta compilação Labs não inclui |
NO APP |
o espaço seleccionado está vazio ou não tem nenhum cabeçalho válido da aplicação |
Após a saída de um aplicativo, o carregador restaura o VFO selecionado, recebe/dual-watch tuning, backlight manipulação e cache externo-Flash. Apps que modificam dados compartilhados suportados, como predefinições Broadcast FM ou dados de canal Beam, peçam ao firmware residente para commit-lo depois que o código de sobreposição parou de ser executado.
Os desenvolvedores podem construir os aplicativos presentes no repositório de firmware com:
./compile-app.sh
./compile-app.sh All
./compile-app.sh fm foxhunt
Os arquivos .app gerados são colocados em build/Apps/. Cada aplicativo está ligado no endereço de sobreposição configurado do firmware e embalado com seus metadados e CRC. Reconstruir aplicativos quando o ABI, API, recursos necessários, ou sobreposição de endereços muda.