質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

91.02%

  • Python

    5533questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • PyCharm

    87questions

    エディター・開発ツール

Pythonでネイティブアプリを開発するには

受付中

回答 2

投稿

  • 評価
  • クリップ 3
  • VIEW 1,159

adax

score 0

Pythonを使ってネイティブアプリケーションを開発したいです。
webアプリケーションは開発できるとわかりました。

質問は2つです

・webアプリケーションをiOSやandroidでリリースすることは可能でしょうか?

・それはPycharmで開発できるのでしょうか?

Pythonの事は全くの初心者です。宜しくお願いします。

もしできるのであれば、ツールなども教えてくださると幸いです

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

+1

以下の記載内容について、確認したのは、iOS のみです。
おそらく Android でも方法はあると思いますが、調べていません。


webアプリケーションをiOSやandroidでリリースすることは可能でしょうか?

いわゆる「ガワアプリ」や「ガワネイティブ」といわれるアプリを作ることで、Web アプリをインストール可能なアプリに見せかせることは可能です。
(「ガワアプリ」を一言で言い表すと 特定のWebアプリを実行するための専用Webブラウザです。アプリ内Webブラウザでwebアプリを実行しているだけgです。)

「ガワアプリ」については、以下の Web サイトが参考になりそうです。


・それはPycharmで開発できるのでしょうか?

Kivy for iOS をつかうことで、Python で アプリのメイン部分のコードを書くことは可能です。
Web アプリが Python で書かれているのであれば、流用して使うことはできるかもしれません。
ただし、最終的に iOS アプリにするためには、Xcode が必要です。
ドキュメントを読む感じでは、android版もあるようですが、詳細は調べていません。

検索結果の上位から...

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/10/29 14:19

    webアプリを「ガワアプリ」としてインストール可能なアプリに見せかける事など調べたい事をわかりやすくしていただきありがとうございます。

    今回はモバイルアプリをpythonで開発する事はやめにします。
    回答のおかげで納得しました。

    丁寧な回答ありがとうございました。
    またご縁がありましたらよろしくお願いします。

    キャンセル

+1

他のかたが記載されている「KivyをAndroid端末で実行する方法」の記事を書いたものです。

先に結論をいうと「できることはできるが試行錯誤が大変なのでお勧めはしない」です。

Kivyでwebviewを使用すればWebアプリケーションでモバイルアプリをPythonで作るのは可能です。Kivyの公式のwikiでAndroidでwebviewを使うサンプルは載っていました。

Android native embedded browser

ざっくり方法をいうと、python上でPyjniusというKivyのライブラリを使用するとAndroidのJAVAのAPIに動的にアクセスできるのでそこでwebviewを動かすというものです。iosもおそらくそれでできるかと思います。

また公式blogだとflaskをモバイルないで動かして表示するというのも紹介されています。
Android apps with Python, Flask and a WebView

ただしKivyでモバイルアプリを作る方法についてですが個人的にはあまりお勧めしていないです。理由としては以下です。

  • AndroidのAPIをKivyで動かす方法を日本でやっている方がほとんどいないのでかなりの部分を自分で試行錯誤する必要があってかなり大変なのではないか。
  • 開発がPython3系は対応中でPython2系である。
  • iosだと日本語入力のさい文字が表示されないという問題がある。

正直なところPython(Kivy)でモバイルアプリの開発はできることはできますが、特に開発する上での優位性が現時点ではあまりない気がしています。

モバイルアプリをメインに開発したいならば、細かい機能まで再現したいネイティブならばswift/kotlinでネイティブで開発するか、クロスプラットフォームならばReact Naitive(JavaScript)、Xamarin(C#),Unity(C#)あたりが日本語で情報を取得しやすいでお勧めします。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/10/29 14:20

    記事を書いた人が答えてくれるなんてっ!?と驚いています。

    モバイルアプリの開発を考えるならpythonは不向きでした。
    丁寧な回答のおかげでよく理解できました。ありがとうございます。

    またのご縁がありましたらよろしくお願いします。

    キャンセル

  • 2017/10/30 21:48

    あと、忘れてましたがIOSのみでしたら私も使ったことがないのでPythonistaというアプリ(http://hitoriblog.com/?p=42145)がPythonでできますね。

    ただどちらにしてもモバイル特有のAPIをたたく必要があるのでiosの知識はある程度必要かと思います。

    キャンセル

  • 2017/11/02 15:51

    返信ありがとうございます。
    私は初心者なのでiosの知識がありません(汗)
    なのでpythonでのネイティブアプリ開発は諦めます。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 91.02%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    セキュリティに関する本

    今、自分はセキュリティに関して興味があります。しかし、どんなことを学べばいいかあまりよくわかりません。そこで、おすすめの書籍やサイトがありましたら是非教えてください。また、pyth

  • 解決済

    APIの意味について

    python始めて数ヶ月の独習者です。 独習のため理解があやふやな可能性があるので、APIについて、理解できているか、確認できればと思い、質問させていただきました。 A

  • 解決済

    セキュリティ対策の程度について

    python始めて数ヶ月程度の初心者です。よろしくお願いします。 まず状況を述べます。とりあえず実験的に、小さなウェブサイトを立ち上げて、小さいDBと紐付いたDBの更新フォー

  • 解決済

    初心者によるpythonでのwebアプリ開発

    pythonを使ってwebアプリを作りたいです。 しかし、何をすればいいのかわかりません。 python歴ですが、 基本的なことをドットインストールなどを使って勉強した程度の

  • 解決済

    macとwindowsで開発するときの環境をどう合わせるのか OSError: [Errno 8] ...

    前提・実現したいこと 友達とアプリ開発をしているのですが、使っているパソコンがmacとwindowsで異なっており、片方で作ったコードをもう片方のパソコンで実行しようとするとエラ

  • 解決済

    仮想環境(virtualenv とか)はなぜ必要なのか?

    virtualenv とかの仮想環境はなぜ必要なのでしょうか? コードを書いて実行するのに仮想環境が必要な理由がよくわからなくて。。。

  • 解決済

    今後のプログラミングの勉強の方針について

    今後の方針について、 私は現在pythonの勉強をしているのですが基礎的なことは覚えて一通りドキュメントにも目を通したのですが今後の方針としては、 実際にオープンソース等から「こん

  • 受付中

    pythonのエラーコードについて

     前提・実現したいこと https://qiita.com/shinyorke/items/ee58a82ad589f7f4c446 上記サイトにある、野球選手の統計を取ろうと思っ

同じタグがついた質問を見る

  • Python

    5533questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • PyCharm

    87questions

    エディター・開発ツール