はじめに
Qiitaに投稿するのも初めてなので、自己紹介も含め、この記事の概要を説明したいと思います。
私は、理工展連絡会という学園祭実行委員会に所属し、2年目にして、アプリ開発班を一から立ち上げて、理工展当日に楽しめるアプリをなんとか1年で形にしたという経験があります。今回は、その経験をもとに、この記事を執筆しています。
したがって、対象読者としては学園祭のアプリってどうなの?と興味がある実行委員所属の情報系担当者になるのかなと思います。
参考までに、私の立ち上げたアプリ開発班として2年目の第66回理工展のために作成したアプリのURLをこちらに置いておきます。
https://www.rikoten.com/php/pages/app/index.php
理工展 アプリ開発にあたって
アプリ開発を始めたきっかけ
アプリ開発を始めたきっかけとしては、個人的にAR機能で当日楽しめるものを作ってみたかったからというのが一番の理由です。まず、早稲田大学西早稲田キャンパスの構造上、中庭ではビル風がどれだけ天気の良い日でも吹いて、中庭にテントを建てられず、閑散としていました。
そこで、私はアプリ開発に興味を以前から持っていたこともあり、中庭にアプリを用いて、ARのデカいオブジェクトを出現させることができれば、その閑散としている状況を少しでも改善することができるのではと思いました。(最終的にAR矢口くんという理工展の「矢口くん」というマスコットキャラクターと一緒に写真を取れる機能をアプリの中に組み込むことができました。)
それが、アプリ開発を始めようと思ったきっかけになります。
アプリ開発班の組織
上記の理由からアプリ開発を始めると言っても、さすがに一人で開発するのは大変です。そんな中、実行委員会の幹部の先輩方にも助けてもらいながら、自分を含め3人をアプリ開発班として、割り振っていただけました。
役割分担としては、私はiOSアプリ開発担当とアプリ開発班のチーフとしての役割を持ちました。そして、残る2人はAndroidアプリ開発とその他細かいアプリ開発に関わる仕事(利用規約作成など)を行ってもらいました。
学園祭とアプリの親和性について
一年間、学園祭アプリを開発し、当日の運用状況として感じたこととしては、学園祭とアプリというものはそこまで親和性が高いかと言われるとそうでもないなという感じです。
そう考える理由としては、学園祭1日や2日だけのために、わざわざ来場された方々がアプリをダウンロードして下さるかという問題です。ダウンロードするというハードルがやはり高いことから、それに見合う対価を用意しなければ、厳しいのが現状です。
我々は、アプリを入れて頂いた方には、学園祭当日に使用できるクーポン券や謎解きの企画とコラボして、謎解きのヒントをアプリにのみ公開するなど多くの方法を実施してきましたが、爆発的にダウンロード数が伸びるようなメリットを提示は出来ていないように思います。
視点を変えてみると、コアなファン、すなわち、毎年来て下さるような方であれば、通知による連絡を始めとして、これまで以上にアプローチをすることが可能になるので、どの層に向けて広報活動をしていくのかというのが、学園祭でアプリ開発をするかどうかの判断材料にもなりうるのではないかと思いました。
アプリ開発環境
最後に、このアプリ開発にあたり、どのような開発環境で行ったのかというのをご紹介します。学園祭でアプリ開発をしたいという方への参考になれば幸いです。
iOS
**Xcode&Swiftで開発を行いました。**その理由は非常に簡単で、上記にある通り、AR機能を実装したかったこともあり、Xcode&Swiftでの開発が最適であると判断したからです。
開発は、周りに詳しい人が全くいなかったので、本を読んだ上で、ググって解決することで、ほとんど問題は解決したので、この環境下での開発では、組み方が分からず困ることはないと思います。
Android
**Android Studio&Javaで開発を行いました。**しかし、この開発環境の欠点としては、AR機能の実装が厳しいことです。
そこで、AR機能のみはUnityを使用しました。
結果として、学習コストが半端なく多くなってしまいましたが、一緒に開発を行っていた仲間が持ち前のプログラミングの才能で気づいたらすべて完成しているような状況でした(笑)
ですから、AR機能をAndroidで実装したいと考えているのであれば、気を付けてもらいたいポイントです。
サーバー
サーバーに関しては、**iOSとAndroid共通でFirebaseを導入しました。**理由としては、簡単に実装できるからです。さらには、利用者がFirebaseの有料版を必要とするくらいに満たない、ようは無料版の中で納まって費用が掛かっていないというのもあります。
また、通知を送信するというようなこともFirebaseであれば、かなり簡単にできるので、学園祭アプリを作るのであれば、当分はFirebaseが良いのかなと思ってます。
統合開発環境を使わなかった理由
これは、もうすでに何度も言っているので分かるかと思いますが、**AR機能の実装にこだわったためです。**実際はARKitを使ってみたかったみたいなところが大きいですが、統合開発環境だと、使える機能が制限されるということを敬遠して、選ばなかったということです。
ただし、学園祭のアプリとして、パンフレットの機能の代わりになるくらいのものが作れればと考えているのであれば、統合開発環境でも可能なのではないかと思ったりもします。
##最後に
ざっくりではありますが、学園祭でアプリ開発をした経緯と開発環境について、まとめてみました。
この記事を読んで、学園祭のアプリ開発を始めようと思ってくださる方がいれば幸いです。
最後まで読んで下さりありがとうございました。