TODOを勝手に翻訳する意地悪なアプリを作った。
作った経緯
自身の言語でTODOでタスクをこなして Done!!に持っていくのが普通だと思うけれど
それをちょっとした意地悪で、勝手に翻訳して虐めようぜ!!で作りました。
最初にちょっとPR
Android (アイコンの色を変えました!)
iOS今回のクソアプリ感
-
目に悪い蛍光色!
なんといっても素敵なカラー!
EBFF00 -
何語か知らない言語に翻訳される!
Deepl APIを使って言語をランダムで翻訳しています。
↓Deep API Freeの技術サイト
- カテゴリーのやる気の無さ
- 本日中
- 明日中
- 気がついたらやる
- etc...
大変だったこと
その1 App Review
結果としては4回繰り返しレビューを出しました。
その中で一番苦労したのは
ログインしているユーザーしか使えないようなアプリは作るな。
このアプリ実は、ログインしていないと使えなくしたかった。理由としては
IsarやMySQLでDBを構築するのも良かったが、Supabaseを使いたかった。
DeepLのAPIを全ユーザーに使わせたくない。というケチな気持ちが出てしまいました。
その時にちょうどSupabase側が匿名認証が導入されたニュースを見て匿名認証を使用することにした。
その2 ATT (App Tracking Transparency)
今回このアプリには広告ユニットを追加してます。
Appleから
君のアプリリリースしてええで!
という素敵なお言葉を頂き、ありがたくリリースさせていただきましたが、広告を入れる際の
トラッキングを有効に〜〜が出ないということに気づきました。
実装自体は簡単だったが、トラッキングの動線を入れないと本来はApp Reviewに通らないはずらしい。そして
なぜか通ってしまった。早急にトラッキング動線を入れることをしました。
その3 app-ads-text
Google Admobを入れた時にこの app-ads-textが必要になります。
そして一番厄介なのが、Apple Store ConnectのマーケティングURLに自身のHP/app-ads-textを入れなければいけないこと、そしてReleaseされていると入れることはできないので、バージョンを上げる対応をしないといけないというのがとても辛かった。 その2のATT対応で修正見えてたので、忘れずに入れましたが、、、
その4 Firebase RemoteConfig
ATTの実装と共に、「あっ強制アップデートの画面を作ろう。」って意気込んで作成しました。
結果、 App Reviewに
この画面から動かないから君のアプリ ダメ、却下
と悲しいお言葉を貰いました。
すぐに修正して、再度App Reviewに通したら問題なくClearという形で 大変でした。
まとめ
作成期間:2024年1月 ~ 2024年5月 (2月,3月は稼働少なめ)
使用主要パッケージ
- River Pod
- Supabase
- retro_fit
- dio
- Freezed
- Firebase remoteConfig,crashlytics
- etc...
今後のアプリリリースのロードマップについて
色々考えていることはありますが、
- TODOに本文を追加できるようにすること MUST
- 翻訳された言語についての成り立ちやノウハウなど 参考程度におく
- リワード広告で1日限定でユーザー自身が翻訳言語を選べるようにする
余談
ちなみに意気込んで作った、強制アップデート画面やった見れるぜ。ってテストしたら
普通に、Remote Config 初期のVersionに入れてなくて、意味がなかったので、張り切っただけ損しました。
最後にしれっとPR
Android
iOS笑顔でクソアプリ作った、って意気込んだけれど、気づいたら、結構いい学習アプリみたいになってしまったのが悔しいですが、これからもネタ感のあるアプリを作ってみようと思います。
投稿者について
名前:きつ
自己紹介:Flutterエンジニアとして活動中。
8月以降 個人事業主としてアプリエンジニアとして活動。
Flutter Ninjasの organizerをやっています。
ぜひXのフォローお願いします!
Discussion