モバイルアプリとWebアプリ。ionicの復権はあるか?
GooglePlayからいろいろ対応を要求されるので、対応したりしています。
例えば、以下のような事を言われるわけです。
---------------------------------------------------------------
アップロードする APK は、Google Play の対象 API レベルの要件を満たしていなければなりません。
新規のアプリは Android 12(API レベル 31)以降を対象にする必要があります(Wear OS アプリの場合は Android 11(API レベル 30)以降)。
2022 年 11 月より、アプリのアップデートは API レベル 31 以降を対象とし(Wear OS アプリの場合は API レベル 30 以降)、Android 12 での動作変更に対応しなければなりません。
注: 2022 年から、新しいバージョンの Android を搭載したデバイスでは、一部の古いバージョンのアプリは新規ユーザーに提供されなくなります。
---------------------------------------------------------------
GooglePlayと言うお店にモバイルアプリを置いてもらう以上は、まあ仕方ない面もあります。
しかし、面倒と思う事も、これまた仕方ない話。
ここで言うモバイルアプリは、スマートフォンなどのハードウェアとOSに依存したアプリです。
対応していないハードウェアやOSでは動作しない代わりに、対応しているハードウェアの様々な機能を使うように開発することが可能です。(ただしHTML5のカバー範囲も広いので、ちょっと良い例が思いつきませんでした)
その代り、OSのアップデートに伴い、以前のアプリは使えなくなることもあり得る訳です。
さらに言えば、OSの開発は、GoogleであれAppleであれ、特定の集団の行動に縛られています。(かなり強固に)
一方のブラウザで動くWebアプリですが、こちらはモバイルアプリよりは自由度が高いと思うようになりました。(HTML5ではデバイスハードウェアにアクセスできる API を導入しています。)
※参考
JavaScriptの getUserMedia() を使用してフロントカメラとリアカメラにアクセスする方法
https://www.digitalocean.com/community/tutorials/front-and-rear-camera-access-with-javascripts-getusermedia-ja
ブラウザの種類の影響などもあり、完全に自由な訳ではないですが、開発時に息苦しさはあまり感じません。
(モバイルアプリを作って、いざGooglePlayで公開しようとする時、上述のような文句を言われるのは結構ストレス溜まります)
モバイルアプリとWebアプリ、どちらが良いとも言えませんが個人や小規模な開発陣で、HTML5でサポートしていないようなハードウェア(あるいはOS)依存の機能を使う必要がないならばWebアプリのメリットは大きいと思います。
一方、モバイルアプリの最大のメリットは、おそらく販売することが容易という事だと思います。
(売れるかどうかは別な問題ですが)
ただ、こちらも販売手数料などを考えると・・・
(実質競争相手がいませんからね、販売店としてみると)
さてionic。
これは、まずWebアプリを作り、それをモバイルアプリ用の開発言語に変換する事で、そのどちらにも対応できます。
私が初めてionicを使用した時は、iOSにもAndroidにも対応できる!と言うのが強みなんだなあと思っていましたが、半年たった今はモバイルアプリにもWebアプリにも対応できるのが強みではなかろうか?と思うようになりました。
ちょっとアプリを作ってみようという方は、無料で始める事が出来、モバイルアプリとWebアプリのどちらも作れるionic、お勧めですよ!