スタッフブログ
AndroidとiOSのアプリ開発の違い

AndroidとiOSのアプリ開発の違い

伊達メガネ@運営事務局
ライター: 伊達メガネ@運営事務局
mineoの技術関係、端末検証担当3号。

はじめまして。マイネ王運営事務局「伊達メガネ」です。いつもマイネ王をご覧いただきありがとうございます。みなさんからリクエストもありましたので、今回アプリ開発の違いについて説明させていただきます。

mineoスイッチアプリがリリース

このたび、mineoスイッチアプリのAndroid版を6月にリリースすることができました。しかし、iOS版は未だリリースできておらず、iOSをお使いのみなさんにはご不便をおかけしております。

なぜ、このようなことが起こってしまったのでしょうか?今回はAndroidでのアプリ開発と、iOSでのアプリ開発との違いについて、アプリ開発の苦労話もまじえて解説させていただきます。

自由度の高いAndroid、セキュリティ強度の高いiOS

そもそもAndroidはGoogle社、iOSはApple社が開発したオペレーションシステム(OS)ですので、全く別の物です。両社の設計思想や実装方法も異なるため、AndroidのアプリではできるのにiOSのアプリではできない!なんてことも多々あります。(もちろん逆もあります。)

例えば、Androidにはファイル操作を行うアプリ(ファイルマネージャーやFile Commanderなど)がありますが、iOSアプリにはその類はありません。これはiOSが、アプリが編集できるデータを、そのアプリ内のデータに限定しているからです。iOSはそうすることでセキュリティ強度を高めているわけです。

実装方法の違い

アプリを開発する開発環境も当然異なり、開発するためのプログラミング言語も違います。一般的に、AndroidではJava(ジャバ)が、iOSではObjective-C(オブジェクティブ シー)が開発言語として使われます。

Javaは有名ですが、Objective-Cはあまり聞いたことがないかもしれませんね。Objective-Cは、プログラミング言語の中では一番有名であろうC言語の親戚のようなものです。結局は「プログラミング言語やねんから同じとちゃうんかい!」と思われる方もいらっしゃると思いますが、言語の種類が異なればなかなかそうもいきません。関西人の我々が青森の津軽弁を聞いたとき、なんとなくはわかるけど正確にはわからないのと同じです。

このように開発言語が異なるため、AndroidとiOSでアプリを作ろうと思うと、単純に考えると2倍のコスト(時間もお金も)がかかります。また、OSが異なると使用できるOSの特有機能もデザインも異なります。例えば、Androidは一般的には画面の枠外にバックキーがありますが、iOSにはありません。iOSでバックキーを実装する場合は画面内にボタンを用意する必要があります。

下図はChromeアプリですが、iOS版では左上にバックキーがレイアウトされています。一方、Android版では画面外にバックキーがあるため、画面内に用意する必要はありません。できた空きスペースにはホームボタンがレイアウトされています。

このように、全く同じアプリを作ることは実は難しいのです。とはいえ、より多くのユーザーのみなさんに使っていただくために、両方のOSでリリースすることは我々の使命だと思っておりますので、mineoスイッチは両OS対応を目指しています。

検証規模の違い

アプリ実装が完了すれば、アプリの検証を行う必要があります。検証を行うことで、できる限り不具合をなくし、エンドユーザーのみなさまに快適に使用していただけるよう努力しています。

しかし、ここでもOSによる違いがあります。まずiOSですが、サポートすべき端末はiOSのバージョンによっても異なりますが、iPhone、iPad、iPod合わせてもせいぜい10数台です。

しかしながらAndroidでは桁が違います。Androidは世界中で毎年数百規模の端末が発売されます。日本だけでも数十台は発売されているのではないでしょうか。これらすべての端末を検証することは現実的ではなく、なかなか難しいです。

Androidの検証はiOSに比べると、圧倒的に時間がかかってしまいます。mineoスイッチでは、主にauで提供される端末をできる限り集め検証を行いましたが、すべての端末をサポートすることは難しいことをご理解いただければ幸いです。

リリース作業の違い

アプリの開発が終わればいよいよリリースですが、ご存じの通りiOSアプリには審査があります。この審査で合格しなければアプリをリリースすることができません。

アプリはこういう風に作りなさい、というガイドラインはありますが、審査内容は非公開なので結果はAppleのみぞ知ることになります。審査は順番に行われますので、いつ始まるのかも終わるかもわかりません。一般的には1週間から2週間かかると言われています。

さらに、もし却下されてしまえば、却下理由をヒアリング、プログラムを修正、再申請、とさらに時間がかかります。そうです、iOSアプリのリリースが遅れているのはこうした理由からだったのです。

ちなみにAndroidには基本的に審査がありませんので、申請したその日のうちにはリリースされます。まとめますと、iOSアプリとAndroidアプリの開発フローは下図のようになり、iOSは審査がある分、Androidよりリリースが遅れてしまうということです。

もちろん、iOSアプリの審査が終わるまでAndroidアプリをリリースせずに、審査が終わり次第同時にリリースすることもできますが、今回は諸々検討しAndroidアプリを先にリリースしました。

最後に

いかがだったでしょうか?iOSもAndroidも同じようなアプリに見えますが、OSの違いによって開発で苦労するポイントも変わってきます。iOS端末、Android端末両方を持っている方は、同じアプリを見比べてみるとOSによる違いが発見できるかもしれません。


おすすめ記事


62 件のコメント
1 - 12 / 62
アプリの開発の難しさに、逃げている気がする。

アプリを通さずに、マイネオHPのマイページからON・OFFのできるようにすれば、単純に良かったのでは。
その後、アプリを開発をすればよかったかと。

Androidのアプリでもウィジェットでon・OFFに対応してもらいたい、ステータスバーでもONなどが、わかるように今後改良して欲しいです。
開発作業、お疲れ様です。
iOS向けアプリの遅れる理由がよくわかりました。
このような複雑な手順を踏むことによって高いセキュリティーを確保しているということが理解出来ました。
アプリにこだわる理由が不明すぎますよ。
順番的にまずは簡単なHPからオンオフを付ける。それからもっと便利にする為にアプリ提供だと思うのですが、、、
自分はAndroid使いだからいいですけど、確かmineoさんからルーターも提供してるんじゃなかったですか?
退会済みメンバー
退会済みメンバーさん
ビギナー
ご説明ありがとうございます。逆に考えれば、1回でアプルーブされると考える方が無理で、6月リリース予定で5月申請では難しいでしょうね。開発のタイムテーブル上、相手のある部分はそれなりの余裕が必要でしょう。
あと、iOSは年99ドル要るのと、使用期限があるんじゃなかったかな・・
詳しい解説を有り難うございます。

しかし、学生サークルならこれで同情されますが、プロとしては、リリース予定日から一ヶ月以上遅れている現状を見ると、「アップルの審査を甘く見ていただけだろう!」と言われても仕方が無いような気がします。

法人向けの「海外渡航者用プリペイドSIM」にしても、7月1日発売予定でしたが、こちらの発売延期のお知らせはどこかでされているのでしょうか?

また、「せめてHPのマイページからオンオフ切り替えできるようにして欲しい」という声が以前より上がっていますが、こちらへの対応がどの程度進んでいるのか、リリース時期はまだまだ先なのか、7月17日(IOSアプリの最短リリース日)より早められるのか、等についての説明も宜しくお願いします。
追伸:「メガネは伊達ですが、mineoに対する情熱は伊達ではありません」とありますが、「伊達」の使い方が間違っているように思います。

<以下ウィキペディアより引用>
伊達とは「豪華」、「華美」、「魅力的」、「見栄」、「粋」などの意味を表す用語。もともと「男立て」のように「男を立てる」こと、意気を示して男らしく見せようとすることを「だてをす(る)」と言った。ばさらやかぶきに通じ、現代で言えばやんちゃに類似する語感であろう。

ちなみに、我が地元仙台の藩祖は伊達政宗です。
んーios開発が始まってもう何年も経ちますし、学生でも気軽に作れるだけに一企業がここまで手こずるのはちょっと管理が雑と思わざるを得ません。全くの初心者チームで開発を行っていたのでしょうか?
このような違いはだいたい分かってます!それよりはVoLTEに対応する気はあるのか?!目処はいつ頃なのか?!
というのを言ってもらわないと解約を考えてしまいます。
退会済みメンバー
退会済みメンバーさん
ビギナー
複数のOSに対応するのが難しいのはわかりますが、AndroidにはAndroidに合ったレイアウト、iOSにはiOSに合ったレイアウトをするべきではないでしょうか?
どちらもガイドラインがあるわけですし、わざわざ同じUIにする必要はないかと。
iOSでは、Webが自由に見れるようにしてしまうと、対象年齢を上げなければいけませんがAndroidではそんなことはないので、普通にWebViewでマイページを見れるようにしてもらえるとストレスレスだなと思います。
退会済みメンバー
退会済みメンバーさん
ビギナー
確かにVoLTEの予定アナウンス欲しいですねー。AU系はSIMで制御されているようなのでAUがらみでいつになるか?Docomo系は端末がVoLTE対応していればSIMは関係なさそう。実際のところ、IIJのデータSIMをGalaxyNote Edgeにさせば、VoLTEのマークが出ます。新しもの好きでLG Vivid(LGV32)を考えていましたが、さすが9月にはDocomoへMNPするかも。
退会済みメンバー
退会済みメンバーさん
ビギナー
ちょっとアプリのパケット(通信のログ)を見てたんですが、もしかしたらWebから切り替えるのはなかなか難しいのかもしれません。

皆さん簡単にHPから〜とおっしゃいますが、どうやらサーバー側に送り込んでいる仕組みのようですので、Webからはそういうことができないので簡単には実装できないのかと思います。


というかmineoなら、できることならすぐにでもHPで切り替える機能をつけていると思います。
コメントするには、ログインまたはメンバー登録(無料)が必要です。