- mineoニュース
- 25
- 2
- 24
はじめまして。マイネ王運営事務局「伊達メガネ」です。いつもマイネ王をご覧いただきありがとうございます。みなさんからリクエストもありましたので、今回アプリ開発の違いについて説明させていただきます。
このたび、mineoスイッチアプリのAndroid版を6月にリリースすることができました。しかし、iOS版は未だリリースできておらず、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も同じようなアプリに見えますが、OSの違いによって開発で苦労するポイントも変わってきます。iOS端末、Android端末両方を持っている方は、同じアプリを見比べてみるとOSによる違いが発見できるかもしれません。
アプリを通さずに、マイネオHPのマイページからON・OFFのできるようにすれば、単純に良かったのでは。
その後、アプリを開発をすればよかったかと。
Androidのアプリでもウィジェットでon・OFFに対応してもらいたい、ステータスバーでもONなどが、わかるように今後改良して欲しいです。
iOS向けアプリの遅れる理由がよくわかりました。
このような複雑な手順を踏むことによって高いセキュリティーを確保しているということが理解出来ました。
順番的にまずは簡単なHPからオンオフを付ける。それからもっと便利にする為にアプリ提供だと思うのですが、、、
自分はAndroid使いだからいいですけど、確かmineoさんからルーターも提供してるんじゃなかったですか?
しかし、学生サークルならこれで同情されますが、プロとしては、リリース予定日から一ヶ月以上遅れている現状を見ると、「アップルの審査を甘く見ていただけだろう!」と言われても仕方が無いような気がします。
法人向けの「海外渡航者用プリペイドSIM」にしても、7月1日発売予定でしたが、こちらの発売延期のお知らせはどこかでされているのでしょうか?
また、「せめてHPのマイページからオンオフ切り替えできるようにして欲しい」という声が以前より上がっていますが、こちらへの対応がどの程度進んでいるのか、リリース時期はまだまだ先なのか、7月17日(IOSアプリの最短リリース日)より早められるのか、等についての説明も宜しくお願いします。
<以下ウィキペディアより引用>
伊達とは「豪華」、「華美」、「魅力的」、「見栄」、「粋」などの意味を表す用語。もともと「男立て」のように「男を立てる」こと、意気を示して男らしく見せようとすることを「だてをす(る)」と言った。ばさらやかぶきに通じ、現代で言えばやんちゃに類似する語感であろう。
ちなみに、我が地元仙台の藩祖は伊達政宗です。
というのを言ってもらわないと解約を考えてしまいます。
どちらもガイドラインがあるわけですし、わざわざ同じUIにする必要はないかと。
iOSでは、Webが自由に見れるようにしてしまうと、対象年齢を上げなければいけませんがAndroidではそんなことはないので、普通にWebViewでマイページを見れるようにしてもらえるとストレスレスだなと思います。
皆さん簡単にHPから〜とおっしゃいますが、どうやらサーバー側に送り込んでいる仕組みのようですので、Webからはそういうことができないので簡単には実装できないのかと思います。
というかmineoなら、できることならすぐにでもHPで切り替える機能をつけていると思います。