学習 Python

PythonでAndroidアプリを作成するときのおすすめ環境は?


本ブログを運営しているTech Teacherは、業界初のプログラミング家庭教師サービスを提供しています。

その特徴は完全マンツーマン・フルオーダーメイド指導・30分ごとの利用が可能であるところです。

完全マンツーマン

一般的なプログラミングスクールの録画講義や対面講義では内容をうまく理解できないまま先に内容が進んでしまうことがあります。Tech Teacherのマンツーマン指導なら理解できない箇所は何度も分かるまで説明を受けることができます。

フルオーダーメイド指導

Tech Teacherではあらかじめ決められたカリキュラムはありません。そのためご自身の学習状況や学びたいことに合わせた指導が可能です。

一括支払いなし

一般的なプログラミングスクールの料金体制はカリキュラムに対して一括払いですが、Tech Teacherでは利用した分だけの支払いとなります。そのため、大きな費用負担がなく気軽に始めることができます。

Pythonをマンツーマン指導で学べるプログラミング家庭教師について詳しく知りたい方ほこちら

Pythonで作れるアプリ

AIやIoTの発展に伴い、pythonの単語を耳にする機会が増えたのではないでしょうか?

Pythonを使用することで、androidやiOSアプリを使用することができます。

webアプリ

Pythonにはwebアプリを作成するためのフレームワークが用意されています。

そのためwebアプリを作成する際には、Pythonを選択する、という方が増えています。

Pythonでよく用いられるフレームワークとして、

  • Django
  • Flask

が挙げられます。

DjangoとFlaskの使い分けは、大規模なwebアプリを作成する場合にはDjangoを使用するのがおすすめです。

Flaskでも拡張機能を作成すれば、Djangoと同様のwebアプリが作成できますが、Djangoにはそういった拡張機能がデフォルトで用意されています。

特に有名なのが、Djangoではログイン機能がデフォルトで用意されている反面、Flaskでは拡張機能を使用することになります

Djangoで作られているwebアプリとして、

  • Instagram
  • Pinterest

などが挙げられます。

ネットフリックスはFlaskで作られているwebアプリになります。

スマホアプリ・デスクトップアプリ

Pythonでスマホアプリを作成する際には、kivyと言うGUIフレームワークを使用するのがおすすめですよ。

kivyはオープンソースであり、商用利用も可能なので、スマホアプリの販売が可能です。

また、kivyを使用すれば、androidアプリもiOSアプリも作成することが可能です。

Pythonに用意されているGUIフレームワークは他にもあり、

  • tkinter:pythonの標準ライブラリで簡単にGUIアプリを作成可能。ネットでの情報が最も多い
  • PyQt:クロスプラットフォームで作成可能だが、商用利用は有償
  • wxPython:クロスプラットフォームで動作可能なGUIアプリを作成可能

などもあります。

PyQtはロイヤリティがかかるため、商用利用する場合には注意が必要ですね。

Python以外でandroidアプリを作れる開発言語

Python以外でandroidアプリを作れる言語は、

  • Java
  • Kotlin
  • C#

が挙げられます

Javaはかなり昔からある言語のため、ネット上にも情報がたくさんあります。

そのため、独学でandroidアプリを作る際には、参考資料が豊富です。

KotlinはJavaをもっと簡潔にした言語です。

Kotlinが発表されたのは2011年ですが、2017年にandroidアプリの公式開発言語に追加されてからJava同様、ネット上の情報が増えました。

またJavaからKotlin、KotlinからJavaを呼び出すことができるため、すでにJavaやKotlinで開発されているものを呼び出して使用することができます。

C#はJavaの特徴を受け継いだ言語と言えます。

C#でandroidアプリを作成することもできますが、近年はWebアプリのフレームワークであるASP.NETを使用することで、AR・VR分野に活用することもできます。

Pythonでandroidアプリを作るためには

Pyhtonでandroidアプリを作成するには、4つの段階があります。

開発環境の構築

まずはPythonの開発環境を構築していきます。

Pythonの開発環境はMacを使用している方はHomebrewを使用することで簡単に構築することができます。

windwosの場合には、Chocolateyを使用することで構築可能です。

また、Pythonのコードを書いて実行するための統合開発環境はVisual Studio Codeがおすすめですよ

こちらもHomebrew・Chocolateyを使って構築することができます。

Homebrew・Chocolateyともにパッケージ管理ツールと呼ばれるものです。

Pythonで使用する実行ファイルや設定ファイル、ライブラリなどを一括で管理するツールのことを指します。

Mac、WindowsともにHomebrew・Chocolatey以外にもありますが、情報が多いのはこの2つです。

フレームワークのインストール

Pythonの開発環境を構築できたら、フレームワークであるkivyをインストールしていきます。

kivyのインストールはwindowsではコマンドプロンプト、Macではターミナルを使って行なっていきます。

コマンドプロンプトもしくはターミナル上で、「pip install kivy」でインストールすることができます。

インストールには少し時間がかかりますが、インストールが終わったら「pip list」でkivyが正常にインストールされているかを確認しておきましょう。

kivyの作成

kivyのインストールが終わったら、実際にkivyのコードを書いて作成していきます。

kivyの公式ドキュメントにサンプルコードが記載されているので、そちらをコピペで実行してみましょう。

kivy Pong Game Tutorial

Buildozer/Xcodeでパッケージ化

kivyの作成ができたら、最後にパッケージ化をしてandroid端末で動くようにしていきます。

androidアプリであれば、Buildozerを使ってパッケージ化していきます。

もしkivyを使ってiOSアプリを作成する場合には、XCodeを使用してパッケージ化を行なっていきます。

Buildozerを使用するには、コマンドプロンプト上でBuildozerをインストールします。

「pip install buildozer」でBuildozerをインストールすることができます。

kivyと同様に、インストール後に正常にインストールされているかを「pip list」で確認しておきましょうね。

インストールができていれば、「buildozer -v android debug」でパッケージ化することができます。

iOSアプリを作成している場合には、XCodeを使用していきます。

kivyの注意点

kivyはクロスプラットフォームという、複数の端末で使用することができるアプリを開発できるフレームワークです。

しかし注意点としていくつか挙げられます。

  • kivyを使用してアプリを作成する場合には、OSによってファイルやフォルダなどの呼び出し方が異なる
  • androidアプリを作成する場合、カメラを利用するにはアクセス許可が必要
  • AppleStoreでアプリの販売・配布を行う際には、Macが必要。

特に最後のAppleStoreで販売・配布する際には、注意が必要ですね。

「Tech Teacherで!~家庭教師ならではの3つの魅力~」

本Blogを運営するプログラミング家庭教師Tech Teacherは以下のような疑問をすべて解決できるサービスです。

・Pythonの応用をもっと学びたいが、値段が高いスクールに通うのは気が引ける

・目的別に短時間の利用ができるサービスがあったらいいな

比較対象 Tech Teacher プログラミングスクールA社
受講形態
生徒1人に教師1人
(対面またはオンライン)

生徒3~5人に教師1人
(少人数個別指導)
担当教師
自分で選んだ担任教師
×
講座で決められた教師
カリキュラム
生徒様に最適化された
オーダーメイド指導

全員同じ教材・カリキュラム
仕事・学業との両立
可能
×
不可能
メンター制度
担任教師が一貫して
質問・学習状況を管理

質問対応・学習管理の担当が異なる
料金
授業時間分だけ
(3,960円 / 30分~)
×
一括払い
(528,000円 / 3ヶ月)
初期費用
入会金
(22,000円)
×
料金一括払い
(528,000円)
シミュレーション
(3ヶ月90分の指導を週1で行う)

(164,500円)
×
(528,000円)

以下、Tech Teacherの3つの魅力を紹介します。

Pythonをマンツーマン指導で学べるプログラミング家庭教師について詳しく知りたい方ほこちら

1.効率的な学習スタイル

一人のためだけの指導~1対1の完全個別指導~

一般的なプログラミングスクールでは大人数の対面講義や、録画講義の視聴またはオンラインでの受講がメインです。そうなると学習しながら生じた疑問をすぐに聞くことができずに、先に進んでしまい内容をうまく理解できなかったり、作業がうまく進まなかったりします。

家庭教師であれば、マンツーマンのため自分の課題にだけ焦点を当てて指導を受けられるので、1回の授業を濃い時間にすることができます。

無駄のない学習~フルオーダーメイド~

Tech Teacherは一般的なプログラミングスクールと異なり、あらかじめ決められたコースやカリキュラム設定がありません。

一般的なプログラミングスクールのカリキュラムでは、自分が本当に学習したいことを学ぶのにいくつか他の講義を受けなければなりません

Tech Teacherでは生徒様の現状の習熟度・目的・期間に応じてお悩みにダイレクトに刺さる授業を展開し、最短で目標となるゴールを目指せます。

2.自分のペースに合わせて学習できる

必要な分だけ~従量課金モデル~

Tech Teacherでは、他にはない「短時間(30分ごと)」の利用が可能です!勉強していてちょっとわからないところ、プログラミング学習のモチベーション維持など様々な疑問や悩みを解決することができます。

授業を受けた分だけ後払いする料金体系(3,960円〜 / 30分)のため、必要な期間に必要な分だけ受講できます。

好きな時間で~相性のいい教師の紹介~

Tech Teacherではあらゆるニーズに対応できる教師陣がいるため、生徒様の希望条件に最適な教師を紹介します。

Tech Teacherを受講している方のほとんどが仕事をしている社会人の方です。TechTeacherの家庭教師なら受講日時や回数を、生徒様のご都合に合わせて柔軟に調整することができ、スキルだけでなく都合の良い時間で指導できる教師を選べます。

3.確実に身につく

挫折しない~担任教師の継続指導~

オンライン・オンデマンドの講義の視聴形態だと、学習に対するモチベーションの維持が課題となり、当初の予定よりも受講期間が伸びたり、挫折したりする恐れがあります。

Tech Teacherでは、担任教師が生徒と二人三脚で学習をするため、学習が大変なときも寄り添ったサポートを受けられます。

具体的には学習計画の管理や受講目的を明確にした上で中間目標を設定し、それに向けた学習の指導をすることでモチベーションの維持を図ります。

いつでも質問できる~チャットサポート(オプション)~

担当教師は授業の時間以外に、チャットサービスを利用して、自分で学習しているときに生じた疑問をすぐに質問して解決することができます。

Pythonをマンツーマン指導で学べるプログラミング家庭教師について詳しく知りたい方ほこちら

Tech Teacherへのお問い合わせ



質問のみのお問い合わせも受け付けております。

まとめ

この記事ではPythonを使ったandroidアプリ開発環境について解説を行いました。

Pythonを使ってandroidアプリを作成するには、いくつかフレームワークがありますが、商用利用に費用がかかってしまうこともあるため、Pythonを使うのであればkivyの使用をおすすめします。

これからの時代、Pythonを使うことができるエンジニアの需要は高まることが予想されるので、今のうちにPythonについて学んでおくといいですね。