Найти в Дзене

Создание Приложения

для Андроид смартфонов
с помощью Python и BeeWare - сложно, трудоёмко.

Шаг 1
Создание Папки с Проектом:

mkdir My_APK_may_2026
cd My_APK_may_2026
python3 -m venv beeware-venv_new
source beeware-venv_new/bin/activate

Установка библиотек и пакетов
python -m pip install briefcase

Запуск проекта с нуля:
briefcase new

Выбор на позицию 1:
 1) Toga
 2) PySide6   (does not support iOS/Android/Web deployment)
 3) Pygame   (does not support iOS/Android/Web deployment)
 4) Console   (does not support iOS/Android/Web deployment)
 5) Other frameworks
 6) None

GUI Framework [1]:
1
Официальное название(Formal Name): OlegS_Gui_01
Название приложения ( App Name): My_Androids_Start
Bundle Identifier [com.example]: com.example
Название проекта (Project Name): Oleg_S_Gui_ver_01
Описание проекта (Description): Первый проект BeeWare от автора Oleg S
Автор проекта Author [olegsamara-63]: olegsamara-63
Адрес эл.почты автора Author's Email [olegsamara-63@yandex.ru]: olegsamara-63@yandex.ru
Project License [1]: 1

To run your application, type:

  $ cd My_Androids_Start
  $ briefcase dev

(beeware-venv_new) oleg@Oleg:~/My_APK_may_2026$
(beeware-venv_new) oleg@Oleg:~/My_APK_may_2026$ cd My_Androids_Start
(beeware-venv_new) oleg@Oleg:~/My_APK_may_2026/My_Androids_Start$ briefcase dev

Запуск состоялся
Пустое окно
Две кнопки

Запуск приложения в режиме разработки
cd My_Androids_Start
briefcase dev

Содержимое файла app.py:
"""
Первый проект BeeWare от автора Oleg S
"""

import toga
from toga.style.pack import COLUMN, ROW

class OlegS_Gui_01(toga.App):
  def startup(self):
   """Construct and show the Toga application.

   Usually, you would add your application to a main content box.
   We then create a main window (with a name matching the app), and
   show the main window.
   """
   main_box = toga.Box()

   self.main_window = toga.MainWindow(title=self.formal_name)
   self.main_window.content = main_box
   self.main_window.show()

def main():
  return OlegS_Gui_01()

Добавление содержимого в файл app.py:

#Новое содержимое файла app.py:
import toga
from toga.style.pack import COLUMN, ROW

class OlegS_Gui_01(toga.App):
  def startup(self):
   main_box = toga.Box(direction=COLUMN)

   name_label = toga.Label(
   "Your name: ",
   margin=(0, 5),
   )
   self.name_input = toga.TextInput(flex=1)

   name_box = toga.Box(direction=ROW, margin=5)
   name_box.add(name_label)
   name_box.add(self.name_input)

   button = toga.Button(
   "Say Hello!",
   on_press=self.say_hello,
   margin=5,
   )

   main_box.add(name_box)
   main_box.add(button)

   self.main_window = toga.MainWindow(title=self.formal_name)
   self.main_window.content = main_box
   self.main_window.show()

  # def say_hello(self, widget):
  #   print(f"Hello, {self.name_input.value}")
  def say_hello(self, widget):
  # Создаём диалоговое окно с приветствием
   name = self.name_input.value
   if name.strip():
   self.main_window.info_dialog("Приветствие", f"Hello, {name}!")
   else:
   self.main_window.info_dialog("Ошибка", "Пожалуйста, введите ваше имя!")

def main():
  return OlegS_Gui_01()

Запуск приложения после изменения содержимого в файле app.py
briefcase dev

Обновление Кода, команда: briefcase update

Компилляция для Смартфона Andriod:
briefcase create android

Сборка в файл APK.py
briefcase build android

Добавление изменений в Контент:

Новый Код с ответом пользователю -

#Новое содержимое файла app.py:
import toga
from toga.style.pack import COLUMN, ROW

class OlegS_Gui_01(toga.App):
  def startup(self):
   main_box = toga.Box(direction=COLUMN)

   name_label = toga.Label(
   "Your name: ",
   margin=(0, 5),
   )
   self.name_input = toga.TextInput(flex=1)

   name_box = toga.Box(direction=ROW, margin=5)
   name_box.add(name_label)
   name_box.add(self.name_input)

   button = toga.Button(
   "Say Hello!",
   on_press=self.say_hello,
   margin=5,
   )

   main_box.add(name_box)
   main_bo
Создание Приложения для Андроид смартфонов с помощью Python и BeeWare - сложно, трудоёмко.
3 минуты