こんにちは! Product Development Sectionでエンジニアをやっている大石です。
私はこれまで Web アプリの開発に携わってきましたが、今回はじめてモバイルアプリの開発からリリースまでを担当しました。
そこで感じたWebアプリとモバイルアプリの違いや、リリースしたアプリの紹介などをしていきたいと思います。
また、今回は内部的な実装の話については触れていませんが、以下のチームメンバーが書いた記事で触れているので興味のある方は見てみてください!
リリースしたアプリの紹介
まず初めに、今回リリースしたアプリ「KEPPLE」は「スタートアップの最新情報をここに」というコンセプトを元に開発されました。
このアプリでは「スタートアップメディア記事の閲覧」や「スタートアップ企業の検索」、「気になる企業を独自のリストに追加して共有」などができます。
また、企業詳細では事業概要・評価額シリーズ・従業員数・株主など様々な企業情報を無料で見ることができます。
投資家や営業など様々な職業の方やスタートアップ業界に興味がある求職者など、たくさんの方に使っていただけるアプリだと思っているので、以下のリンクよりぜひダウンロードして触ってみてください!
モバイルアプリをリリースをしてみて感じたこと
本題ですが、モバイルアプリをリリースをしてみて感じたことついて書いていきたいと思います。
審査の有無
Webアプリとモバイルアプリの大きな違いは審査の有無です。
モバイルアプリの場合は各プラットフォーム(iOS・Andorid)の審査があり、Webアプリのように自由度が高くありません。
リリースひとつとっても「少しラベルを修正したい」などの小さな修正の際、Webアプリであれば自分達のタイミングでクイックにリリースすることができますが、モバイルアプリの場合は審査があるのでスピード感はどうしても落ちます。
また、各プラットフォームのガイドラインを遵守することを求められるので、設計段階で適切なレビューが必要となります。
例えば、アカウントの削除機能を追加しようとなった際に、ユーザーからの問い合わせベースでこちら側で論理削除する仕様にしてしまうと、Apple Storeの審査で落とされる可能性があります。
https://developer.apple.com/jp/support/offering-account-deletion-in-your-app/
審査が厳しい一方で、ガイドラインに沿ったデザイン・実装によりエンドユーザーに一貫性のある操作・UIを提供をすることができます。
審査期間
審査は前述のとおり、プラットフォーム側のガイドラインを遵守することを求められるので初回審査においては長くて1ヶ月程かかる場合もあると言われています。(社内のアプリリリース経験者談)
しかし今回は審査提出後、修正箇所は一箇所のみで2・3日程度で審査完了になりリリースできる状態になりました。
早く審査が完了した理由として、社内にアプリリリースの経験者がおり、審査提出前に「その挙動だと審査に落ちる可能性がある」とレビューをもらっていたのが大きかったのではないかと思っています。
また、初回リリースにおいてはアプリの機能数はコアな機能のみに絞り、仕様もシンプルにしました。
その結果、審査時にチェックする箇所自体も少なくなり審査が早まったのかもしれません。
iOSとAndroidにおける操作の違い
モバイルアプリといってもiOSとAndroidでは操作感が違う部分があり、個人的には面白く感じました。
私はiOSしか使ったことがないのですが、iOSだと左から右へのスワイプジェスチャーで「戻る」、右から左へのスワイプジェスチャーで「進む」という挙動なのです。しかし、Androidだとどちらのジェスチャーでも「戻る」という挙動になります。(そしてもう戻る画面がないトップレベルの画面にきた時に戻るジェスチャーをすると、Androidの場合はアプリ自体が閉じます。)
はじめこの挙動を観測した時にジェスチャーまわりのバグかと思って少し調べてみると、Android標準の挙動であることが分かりました。
また、Androidではジェスチャーだけでなく、昔ながらの「戻る、ホームへの移動、アプリ切り替え」が行える3ボタンでのナビゲーションも行えるように設定で変更することができます。
ナビゲーションまわりで特殊なことをしている場合はそれぞれのOS、モード(ジェスチャー・3ボタン)で動作確認をする必要があります。
動作確認
ある程度の機能を実装した後に、ふとデバイスを横向きにしてみるとレイアウトが崩れている画面や操作がしにくい部分が何箇所かあるのを発見し、まとめて修正した時がありました。
Webアプリを作っている時は、各種ブラウザでの確認や画面サイズを変えての確認などはしていたので、モバイルアプリでも同じように異なる画面幅のデバイスでの確認は行っていましたが「横向きにして操作する」という観点は抜け落ちてしまっていました。
振り返ってみると、初期段階でどのような観点で動作確認すべきかもっと話し合っておくべきだったなと思いました。
また、OSのどのバージョンまでサポートするかという話も最後の方でしていたのですが、この辺も初期段階から決めておくべきだったと思います。
ドッグフーディングのしやすさ
弊社初のモバイルアプリということもあって社内外問わずたくさんの方に反応・フィードバックをもらえました。
モバイルアプリだからこそ日常的に使いやすく、より意見が出やすいのではないかと思っています。(もちろんニュースアプリだからという側面もあると思いますが)
私自身も毎日アプリを開いてニュースを見たり、気になった企業は検索してリストに追加しています。
普段使っているからこそ、気になっている部分やもっとこうなったらいいなという部分が自然とでてきて、開発のモチベーションが高まっているのを感じます。
おわり
これまではWebアプリケーションの表側のUIと、その裏側で動作するAPIなどを開発してきました。
今回はじめてモバイルアプリケーションの開発に挑戦させてもらい、エンジニアとして作れるアプリケーションの幅を広げることができた気がします。
また、シンプルな機能のみの実装でそこまでハードルは高くなかったのですが、モバイルアプリを作った経験は自信にもなりました。
これから初めてモバイルアプリの開発に挑戦するよという方の参考に少しでもなれば幸いです。
ここまで読んでいただきありがとうございました。
WE ARE HIRING!
KEPPLE CREATORS LAB では一緒に働くメンバーを募集しています。
募集しているポジションの詳細はこちらをご覧ください。
▼KEPPLE CREATORS LAB ブランディングサイト
▼KEPPLE CREATORS LAB 求人一覧