見出し画像

PythonでAndroidアプリ作成してみる #1 環境構築とテスト

今回はPythonスマホアプリの開発をやっていきます。
昔にCordovaでJavaScript+HTMLでアプリを作ったことはありますが、やはりPythonの方がやりやすいのでないかなと何となくAIに質問したところkivy&buildozerという環境があり、Android / IOS / Windowsで使えるというマルチプラットフォーム環境のようです。
具体的には、Pythonでアプリ作成、ライブラリのkivyでGUI(画面)作成、buildozerでアプリ化という流れのようです。
このkivyというのがどの程度柔軟にGUIを作成できるか分かりませんが、かなり柔軟であればあえてJavaScriptで作ることもなさそうです。

本シリーズはこちら


JavaScriptの自作アプリはこちら。
Bluetooth使いたかったのでいつものWEBでなくアプリにしたのです。

開発環境


今回Pythonでスマホアプリを作るにあたっての環境は以下の通りです。

  • 言語 Python

  • GUI kivy
    こちらのライブラリを使用してGUI(画面)を作っていきます

  • ビルド buildozer
    作ったスクリプトをパッケージ化(アプリ化)するコンパイラ?
    こちらがLinux / MACしかサポートしていないので、ビルドはLinuxで行います。

  • OS Ubuntu 22.04.4 LTS
    buildozerのサポートがLinuxなのでこちらで行います。
    人によっては仮想化を使うようですが、実機があるので実機にしちゃいます。
    実機については下記記事で紹介しているので気になった方はチェックしてください。

準備

必要なもののインストール

公式サイトのコマンドに則りインストールしていきます。
調べると同じようなコマンドを書いてくれていることがありますが、それが最新かどうかは分かりませんので公式の物をコピペした方がいいです。
→私は参考サイトベースでやったらCythonのバージョンが違っていたのが悪いのか最初エラーになってダメでした。

$現時点公式サイトのコピペ
$バージョンを明示しているものもあるので必ず最新の公式コマンドを使ってください
sudo apt update
sudo apt install -y git zip unzip openjdk-17-jdk python3-pip autoconf libtool pkg-config zlib1g-dev libncurses5-dev libncursesw5-dev libtinfo5 cmake libffi-dev libssl-dev
pip3 install --user --upgrade Cython==0.29.19 virtualenv
pip install buildozer



$GUIプラットフォームも忘れずに
pip install kivy

buildozer 公式サイト

kivy公式サイト(サポートPythonバージョンチェック)

PATHの追加

上記依存パッケージのインストールの少し下に下記のような記述がありますので忘れずに。こちらを"bashrc"に追記します

export PATH=$PATH:~/.local/bin/

bashrcファイルは各ユーザーのホームにある".bashrc”です。
ログイン時に読み込まれ環境変数やalias設定なんかをやるやつですね。ここで環境変数PATHに"~/.local/bin/"を追加する操作をするようです。
つまり追記したら再ログインしてください。

テストアプリを作成

Pythonでアプリを作成

とりあえず画面中央に"Rcat"と表示するだけのアプリを作ってみます。
適当なフォルダを作成し、その中にスクリプトを作成します。
Pythonを開発するWindowsで起動するとこんな感じです

WIndowsでの動作テスト

ソースコードは下記の通りです。
下記をmain.pyという名前で保存しておきます。

import kivy

from kivy.app import App
from kivy.uix.label import Label

class MyApp(App):
    def build(self):
        return Label(text='Rcat APP!')

if __name__ == '__main__':
    MyApp().run()

ビルドする

スクリプトを作成しているフォルダに移動した上で下記コマンドを実行します。
初回はセットアップやらいろいろあるみたいで30分以上かかります。

$設定ファイル作成
buildozer init
$ビルド実行
buildozer -v android debug

インストールする

出来上がったアプリはbinフォルダに入っています。
CXファイルエクスプローラーなどのSPTF対応のファイルマネージャーでスマホから直接取りに行けます。
DLしてインストールしましょう。

無事起動しました

Androidで動作確認

まとめ

今回はPythonでAndroidアプリ作成の環境構築とテストをやってみました。
まだ中身を何もかけていないので、どの程度の事が出来るのかは分かりませんが、とりあえず指定したフォルダをサーバーにバックアップするアプリを作ることを目的としていきます。
それではまた次回お会いしましょう。

情報が役に立ったと思えば、僅かでも投げ銭していただけるとありがたいです。