こんにちは!CROSSERの開発者です
2021年4月にAndroid、2021年5月にiOSを語学マッチングアプリ「CROSSER」をリリースしました。
ここではFlutterとFirebaseを用いた開発〜リリース〜運用で参考にした資料、つまづいた点などを共有したいと思います。
#アプリ概要
- 語学学習目的で語学を教えてくれるパートナー探し
- 世界規模
- 性別、年齢、国籍、自分からの距離で相手を探せる
- 収益方法はアイテム内課金、アプリ内広告
- iOS、Androidモバイル対応(iPadはこれから)
ダウンロードはこちらからお願いします
https://instabio.cc/crosser
#チーム構成
開発者1名で開発しました。
- 非開発者(1名)
- 開発者(1名)
- バックエンド開発経験4年
- フロントエンドの開発経験無し
#主なアプリ機能
- ログイン(電話番号、Facebook、Apple、LINE、Kakao)
- ログインアカウントをG-mail連携
- アプリ内課金(消費型、サブスクリプション型)
- メッセージ
- ユーザーブロック
- ユーザー通報
- カードスワイプ(Tinder風)
- 位置情報検索
一般的なマッチングアプリと同じような機能だと思います。
#どうしてFlutterとFirebaseだったか?
開発者が1名、かつ半年以内にiOS版、Android版を同時リリースということが目標でした。(結果的には1年かかりましたが。。)
半年以内にiOS版、Android版をネイティブアプリで開発するのは厳しいなと思い、Cross Platformで開発をすることを考えました。(平日は会社にいるので、開発はほぼ土日しかありませんでした)
最初はMonacaを使ってサーバー側はゴリゴリに構築・開発していました。
。。が!バックエンド開発しかしたことがない者としてバリバリcss, jsを使って開発することがストレスで。。。半年、ずっと戦っていました。。。
そんなある日、会社の先輩がFlutterいいよ!と話があったので、ちょっと触って見たところ、おぉお!これだ!と感動し、ほぼMonacaで完成していたアプリをGitから削除し、Flutterで開発することを決心しました
(Javaを触ったことがある方にFlutterは持ってこいです!しかもPackageも沢山あるため、簡単に映えるUIを作れます!)
その流れで、リリース後のメンテを現実的に考えてFirebaseを採用しました。(←最初から考えとけよ)
#Firebaseで使用している機能
どれをどの機能に使ったかは別記事で詳しく説明します
Firebaseの各機能についてはこちらの記事が分かりやすいです!
https://qiita.com/shibukk/items/4a015c5b3296563ac19d
- RealTime Database
- Cloud Firestore
- Firebase Hosting
- Analytics
- Firebase Authentication
- Cloud Storage for Firebase
- Firebase Cloud Messaging
- Firebase In-App Messaging
- Firebase Remote Config
#まとめ
Flutter、Firebase最高
Google最高
今後はこのページに新規記事のリンクをつけて知見を共有していこうと思いますので、よろしくお願いします。
みなさん、是非、語学マッチングアプリCROSSERのダウンロードお願いします
評価もしていただけると嬉しいです!(高評価だともっと嬉しです!)
#追記
関連する追加記事情報を載せます。
-
FirebaseでLINE/Kakaoログインする方法https://qiita.com/crosser202008/items/ed240474439aca7f7cec
-
Firebaseでプッシュ通知をする方法
https://qiita.com/crosser202008/items/4074177b69960c67bcf5