Crie experiências multiplataforma puramente nativas com Boden
Site ⬡ Primeiros passos ⬡ Referência da API ⬡ Guias ⬡ Twitter ⬡ FeedbackNota: Esta é uma versão beta. A API Boden ainda não está totalmente completa e estável.
Em um Mac : macOS 10.14+, Xcode 10.1+, Python 3.4+, CMake 3.15.0+.
No Windows : Windows 10, Python 3.4+, CMake 3.10.2+, Ninja, Git, Oracle JDK 8 e Android Studio (com Android NDK, consulte as instruções de instalação para obter mais detalhes).
No Ubuntu 18.04 : sudo apt update && sudo apt install git cmake ninja-build python python3-distutils openjdk-8-jdk qemu-kvm
plus Android Studio (com Android NDK, consulte as instruções de instalação para obter mais detalhes).
git clone --recurse-submodules https://github.com/AshampooSystems/boden.git
cd boden
python boden.py open -t bodendemo
Isso abrirá o Xcode no macOS ou o Android Studio no Linux/Windows.
Se algo der errado, certifique-se de que todas as dependências estejam instaladas e configuradas corretamente. Confira nossos guias estendidos para obter ajuda:
No Xcode, selecione o destino bodendemo
e pressione Cmd + R .
No Android Studio, selecione o destino bodendemo
e pressione Shift + F10 .
Para criar seu primeiro aplicativo Boden, abra um terminal (ou prompt de comando), mude para o diretório boden
local e execute os seguintes comandos:
python boden.py new -n AwesomeApp
cd AwesomeApp
python ../boden.py open
Isso criará uma nova pasta chamada AwesomeApp
e gerará arquivos de origem e de projeto para um aplicativo simples de plataforma cruzada Hello World. O último comando irá preparar e abrir um projeto Xcode no Mac ou um projeto Android Studio no Linux/Windows.
No Xcode, selecione o destino AwesomeApp
e pressione Cmd + R para criar e executar o aplicativo Hello World.
No Android Studio, espere o Gradle concluir seus processos de sincronização e configuração e, em seguida, selecione o destino bodendemo
e pressione Cmd + R para criar e executar o aplicativo de exemplo, selecione o destino AwesomeApp
e pressione Ctrl + R no Mac ou Shift + F10 no Linux/Windows para construir e executar o aplicativo Hello World.
Observação: no macOS e no Linux, você também pode simplesmente digitar
./boden
em vez de chamarpython boden.py
explicitamente. Se você deseja criar a versão Android do aplicativo no macOS, execute../boden open -p android
.
Aqui está uma rápida olhada no código-fonte gerado pelo comando boden new
:
// MainViewController.cpp
# include < bdn/ui.h >
# include < bdn/ui/yoga.h >
# include " MainViewController.h "
using namespace bdn ;
using namespace bdn ::ui ;
MainViewController::MainViewController ()
{
_window = std::make_shared<Window>();
_window-> title = " AwesomeApp " ;
_window-> geometry = Rect { 0 , 0 , 400 , 300 };
_window-> setLayout (std::make_shared<yoga::Layout>());
auto button = std::make_shared< Button >();
button-> label = " Hello World " ;
_window-> contentView = button;
_window-> visible = true ;
}
MainViewController.cpp
é a parte mais interessante da fonte gerada para a aplicação Hello World. O controlador de visualização principal será instanciado na inicialização do aplicativo. É responsável por configurar a interface do usuário do aplicativo.
Aqui está o que o código faz em detalhes:
Primeiro, crie uma nova Window
e defina seu título como AwesomeApp
:
_window = std::make_shared<Window>();
_window->title = " AwesomeApp " ;
Para obter um layout automático, use yogalayout::Layout
e defina um tamanho de janela padrão:
_window->geometry = Rect { 0 , 0 , 400 , 300 };
_window-> setLayout (std::make_shared<yoga::Layout>());
Em seguida, instancie um novo Button
e defina seu rótulo como "Hello World":
auto button = std::make_shared<Button>();
button->label = " Hello World " ;
Como o botão é o único controle que será exibido neste exemplo, defina-o como a visualização do conteúdo da janela:
_window->contentView = button;
Finalmente, torne a janela visível:
_window->visible = true ;
Você pode encontrar a documentação completa da Boden em nosso site.
A documentação Boden ainda está em andamento. Se você não conseguir encontrar as informações que procura, não hesite em perguntar abrindo um problema no GitHub ou entrando em contato conosco diretamente.
Você pode licenciar Boden sob uma das seguintes licenças de código aberto:
Para licenciamento comercial/proprietário, entre em contato conosco em [email protected].
Estamos felizes com seu feedback!
Entre em contato conosco e fique atualizado sobre Boden:
Se você encontrar algo que está faltando ou não funciona, considere abrir um problema no GitHub.