Ultimas do CanalQb

Python - Como instalar o Beeware e TOGA e Firebase para criar seu aplicativo no Python 3.8

@CanalQb


🚀 Vamos criar um aplicativo simples com Toga!



CanalQb



Sempre crie uma frase de segurança única para jogos, Airdrops e qualquer outra coisa de origem desconhecida, em vez de usar sua carteira principal.



Fala, galera! 

Hoje, vou mostrar como usar o Toga, um módulo que, apesar de pouco conhecido, é extremamente eficaz para quem quer iniciar a produção de aplicativos para lojas. Não vou entrar nos detalhes do processo de configuração, mas vou apresentar um aplicativo totalmente funcional para vocês.

Por que Toga?

Para você que está acostumado com o Kivy, saiba que o Toga pode ser utilizado no Windows e é muito mais simples de executar. Ele permite que você escreva uma única vez e rode em várias plataformas, mantendo a aparência nativa dos aplicativos.

Configurações

Vou usar o Python 3.8 e o Windows 10 para esta demonstração. Vamos lá!

O que é TOGA e BeeWare?

TOGA é um framework de desenvolvimento para criar aplicações nativas multiplataforma usando Python. BeeWare é um conjunto de ferramentas que facilita o desenvolvimento de aplicativos usando TOGA.

Instalando o BeeWare

Primeiro, você precisa instalar o BeeWare. Abra o terminal e execute:

pip install beeware

Criando um novo projeto com Briefcase

O briefcase é uma ferramenta do BeeWare que ajuda a criar e gerenciar projetos. Para criar um novo projeto, use o comando:

briefcase new
Siga as instruções para configurar seu projeto.

Instale o git para Windows, faça o download: https://gitforwindows.org/

Estrutura do Projeto

Após criar o projeto, você terá uma estrutura de diretórios semelhante a esta:

Exemplo Simples

Agora, vamos criar uma aplicação simples que mostra uma mensagem na tela.

Abra o arquivo app.py e substitua seu conteúdo pelo seguinte:
from toga import App, Button, Box, Label

import toga
from toga.style import Pack
from toga.style.pack import COLUMN, ROW
from toga import App, Label, Button, Box

class 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 = box
        self.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

Para rodar sua aplicação, use:

briefcase dev
Isso iniciará a aplicação em modo de desenvolvimento.

Comandos Úteis

Aqui estão alguns outros comandos que você pode achar úteis:

Criar um novo projeto: briefcase new
Desenvolver a aplicação: briefcase dev
Construir a aplicação para distribuição: briefcase build
Construir a aplicação para distribuição para Android: briefcase build android
Criar pacote AAB: briefcase package android
Executar a aplicação em uma plataforma específica: briefcase run
Empacotar a aplicação: briefcase package

Carregar configurações de Layout externamente.

Crie um arquivo pode ser config.json, e dentro insira:

{
    "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

Agora você vai configurar o pyproject.toml

# 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:

  1. 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.

  2. Abra o Terminal ou Prompt de Comando: Dependendo do seu sistema operacional, abra o terminal (Linux/Mac) ou o prompt de comando (Windows).

  3. Crie o Keystore: Execute o seguinte comando, substituindo nome-do-keystore.jks e alias-do-key pelos nomes que você deseja usar:

    keytool -genkey -v -keystore nome-do-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias alias-do-key

    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).
  4. 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.

  5. 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:

toml

[tool.briefcase.app.canalqbpuzzle2.android] keystore = "caminho/para/nome-do-keystore.jks" keystore_alias = "alias-do-key" keystore_password = "sua-senha-do-keystore" key_password = "sua-senha-da-chave"

Passo 3: Compilar e Assinar o APK/AAB

Com o keystore configurado, você pode usar o Briefcase para compilar e assinar seu aplicativo:

briefcase package android

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

  1. Abra o Terminal ou Prompt de Comando: Dependendo do seu sistema operacional, abra o terminal (Linux/Mac) ou o prompt de comando (Windows).

  2. 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.

  3. Execute o Comando jarsigner: Para verificar a assinatura, use o seguinte comando:

    jarsigner -verify -verbose -certs seu-app.apk

    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:

  1. Execute o Comando apksigner:

    apksigner verify --verbose seu-app.apk
  2. 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 e apksigner 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.