Python - Como instalar o Beeware e TOGA e Firebase para criar seu aplicativo no Python 3.8
🚀 Vamos criar um aplicativo simples com Toga!
Por que Toga?
Configurações
O que é TOGA e BeeWare?
Instalando o BeeWare
pip install beeware
Criando um novo projeto com Briefcase
briefcase new
Estrutura do Projeto
Exemplo Simples
import togafrom toga.style import Packfrom toga.style.pack import COLUMN, ROWfrom toga import App, Label, Button, Boxclass MyApp(App):def startup(self):self.main_window = toga.MainWindow(title="Minha App")self.label = Label("Olá, BeeWare!")self.button = Button("Clique-me!", on_press=self.on_button_press)box = Box()box.add(self.label)box.add(self.button)self.main_window.content = boxself.main_window.show()def on_button_press(self, widget):self.label.text = "Você clicou no botão!"def main():return MyApp("Minha App", "org.example.minhaapp")if __name__ == "__main__":main().main_loop()
Rodando o Projeto
briefcase dev
Comandos Úteis
Construir a aplicação para distribuição para Android: briefcase build android
Criar pacote AAB: briefcase package android
Carregar configurações de Layout externamente.
{"button_text": "Clique aqui","button_action": "print('Botão clicado!')"}
Agora no seu app.py, informe para chamar o arquivo
def main():config = carregar_configuracoes('config.json')return toga.App("Meu App", "org.exemplo.meuapp", startup=lambda app: criar_layout(config))
Criar arquivo de instalador msi
briefcase package -u
Atualizar recursos configuraveis, exemplo icones, ou outros arquivos
briefcase update --update-resources
Rodar e executar o aplicativo:
briefcase build --update-resources
briefcase run
Alterar cor de fundo no pyproject.toml na tela splash após icone:
splash_background_color = "#D3E6F5"
Recriar o aplicativo:
briefcase create
Para publicar no Play Store, precisa do certificado jd
Coloque este caminho dentro do path do windows. C:\Program Files\Java\jdk-23\bin
baixe o deployment_cert.der do site https://play.google.com/console/
Abra o cmd
digite
keytool -importcert -file deployment_cert.der -keystore mykeystore.jks -alias canalqb
# Configurações para Android
[tool.briefcase.app.canalqbpuzzle2.android]
requires = [
"toga-android~=0.4.5",
]
# Adicione aqui as configurações de assinatura
signing_key = "mykeystore.jks" # Substitua pelo caminho real
key_alias = "canalqb" # O alias que você escolheu
key_password = "sua_senha" # A senha que você definiu
---------------------
Como Criar um Keystore
Aqui estão os passos para criar um keystore:
Instale o JDK: Certifique-se de ter o Java Development Kit (JDK) instalado no seu computador. Você pode baixá-lo do site da Oracle ou usar uma versão open-source como o OpenJDK.
Abra o Terminal ou Prompt de Comando: Dependendo do seu sistema operacional, abra o terminal (Linux/Mac) ou o prompt de comando (Windows).
Crie o Keystore: Execute o seguinte comando, substituindo
nome-do-keystore.jks
ealias-do-key
pelos nomes que você deseja usar:Parâmetros do comando:
nome-do-keystore.jks
: nome do arquivo keystore que será criado.alias-do-key
: nome que você dará à chave dentro do keystore.-validity 10000
: validade da chave em dias (aqui, 10.000 dias).
Preencha as Informações: Durante a execução do comando, você será solicitado a fornecer informações como nome, organização e senha. Lembre-se de guardar essas informações, especialmente a senha.
Verifique se o Keystore foi Criado: Após executar o comando, verifique se o arquivo
nome-do-keystore.jks
foi criado no diretório atual.
Usando o Keystore
Depois de criar o keystore, você o usará para assinar seu aplicativo Android. No caso de usar o Briefcase, você precisará adicionar as informações do keystore no arquivo pyproject.toml
conforme mencionado anteriormente.
Passo 1: Verifique o Keystore
Confirme que o arquivo nome-do-keystore.jks
foi criado no diretório em que você executou o comando. Você pode usar o comando dir
(no Windows) ou ls
(no Linux/Mac) para verificar.
Passo 2: Configurar o Keystore no seu Projeto
Adicione as informações do keystore ao seu arquivo pyproject.toml
para que o Briefcase possa usá-lo para assinar seu aplicativo. O trecho deve parecer com isto:
Passo 3: Compilar e Assinar o APK/AAB
Com o keystore configurado, você pode usar o Briefcase para compilar e assinar seu aplicativo:
Passo 4: Enviar para o Google Play Console
Depois que o aplicativo for assinado, você poderá fazer o upload do arquivo .aab
ou .apk
no Google Play Console.
Dicas de Segurança
- Mantenha seu Keystore Seguro: Guarde o arquivo
.jks
em um local seguro e faça backups. Se você perder o keystore, não poderá atualizar seu aplicativo na Play Store. - Lembre-se das Senhas: As senhas usadas para o keystore e a chave são essenciais. Se você esquecê-las, não conseguirá assinar seu aplicativo.
Passo 1: Verificar Assinatura com jarsigner
Abra o Terminal ou Prompt de Comando: Dependendo do seu sistema operacional, abra o terminal (Linux/Mac) ou o prompt de comando (Windows).
Navegue até o Diretório do APK/AAB: Use o comando
cd
para mudar para o diretório onde está o seu arquivo.apk
ou.aab
.Execute o Comando
jarsigner
: Para verificar a assinatura, use o seguinte comando:Substitua
seu-app.apk
pelo nome do seu arquivo.
Passo 2: Analisar a Saída
- Se o aplicativo estiver assinado corretamente, você verá uma mensagem indicando que a verificação foi bem-sucedida.
- Se houver problemas com a assinatura, você receberá uma mensagem de erro que pode ajudar a identificar o problema.
Passo 3: Verificar com apksigner
(para APKs)
Se você estiver lidando com um APK, pode usar também o apksigner
, que é uma ferramenta específica para APKs:
Execute o Comando
apksigner
:Analisar a Saída: Assim como no caso do
jarsigner
, se o APK estiver assinado corretamente, você verá uma mensagem de sucesso.
Observações
- Assinatura de AABs: A ferramenta
jarsigner
eapksigner
são mais comumente usadas para APKs. Para AABs, geralmente a verificação é feita no contexto do Google Play Console. - Verifique a Versão do JDK: As ferramentas devem estar disponíveis se você tiver o JDK instalado corretamente.
Nenhum comentário
Comente só assim vamos crescer juntos!
Observação: somente um membro deste blog pode postar um comentário.