こんにちは。やらしみずです。
ReactNativeで開発を進めいている個人開発のアプリ、SpeedBox(数字の早押しアプリ)にランキング機能を追加しました!!
作り初めて1ヶ月ちょっとでやっとランキング機能の追加って、遅いわボケかすがぁって言いたくなりますが、それはノーツッコミで。
現在のアプリ
ユーザ向けのお話
今回作成したランキング機能は、
・入力したアカウント名でスコアを登録
・上位100位まで表示される
・同名のアカウント名でも登録可能
って感じです。
同じ名前のアカウントのスコアを登録できるようにしていいものか迷ったのですが、バリデーションをかまして余計なチェックするのもなぁと思ったので、一旦できるようにしました。
SNS連携とかできるようなアプリにできたら同じ人のスコア載せなくてすむのですが、今の所SNS連携機能をつけられていないので、当分はちょっと余分なデータが残ってしまう形で進みます、、、
開発的なお話
ランキングの機能を開発するにあたって追加したライブラリは次の2つです。
react-native-prompt-android
ランキングの登録ときに出てくるポップアップに利用。
ライブラリ名にAndoridとか入っているけれど、iOSでも普通に動作するふしぎなやつ。
ReactNative内でJavaScriptのpromptが使えなくて焦ったときにはこいつを使えばなんとかなる。
ただし、書き方がちょっと特殊だから注意。
firebase
ランキングのスコアデータの保存に利用。
データの本体は自分の立てているサーバーにAPI立ててRDBでも良かったのですが、今回はno-sql方式のデータの使い方を学びたかったので、FirebaseのCloud FireStoreを利用させていただきました。
データ通信が1日あたり5万件程度なら無料で利用できるとのことなので、むちゃくちゃ良心的ですね。
もし課金されたとしても大した金額では無いようなので安心して利用できます。
次に追加する分析機能
他のアプリとかだとよくある、自分がどのくらい成長したのかひと目で分かるようなグラフを表示したいと考えています。
ただ、データの持ち方とかまだまだ綿菓子なので(ふわふわなので)、リリースされるのはまだまだ先になるかもしれません。。。
目標は一応2週間以内にリリースですが、果たしてどうなるか、、、
最後に
絶望的なデザインのセンスの無さを補ってくださったデザイナーのHさん、ありがとうございました。
僕が頑張って作ったアプリのアイコンも「気に食わん」とおっしゃって密かに作って頂いているようで感謝しかありません。
これからも仲良くさせていただけると嬉しいです。
あと、○俗大好き侍さん、カシューさん、弟、インストールしてデバックしてくれてありがとうございます。
そのうち飲みに行きましょう。
まだまだ機能に未熟なところばかりですが、精進して良いアプリ作ります!!!
では!!
コメント