毎日1枚の自撮りを記録し、スライドショー動画としてSNSにシェアできるAndroidアプリ「今日のわたし」を開発してGoogle Playに公開しました。カメラ撮影・カレンダー管理・通知・動画生成・AdMob広告実装まで一通り実装した開発記録です。
アプリの概要
「今日のわたし」は、毎日1枚の自撮り写真を記録するシンプルなアプリです。日々の変化を客観的に見ることができ、ダイエット・筋トレ・スキンケアの記録にも最適です。
- 毎日1枚の自撮り記録:タップするだけで今日の1枚を保存
- カレンダー表示:撮影した日を一覧で振り返り
- 前後比較:日付を選んで2枚を並べて比較
- スライドショー・動画保存:期間を選んで変化を動画としてギャラリーに保存、SNSにシェア可能
- 毎日のリマインド通知:撮り忘れを防ぐ通知設定
- 写真は端末内にのみ保存:クラウドに送信しないプライバシー重視設計
開発のきっかけ
「毎日自分の顔写真を1枚撮って記録・見直すだけ」というシンプルなアイデアから始まりました。似たアプリは存在しますが、SNSシェアを前提とせず「自分だけの鏡」として使えるアプリが欲しいと考えました。スライドショーを動画として保存してSNSにあげたいというニーズも、差別化のポイントになっています。
技術構成
実装のポイント
AndroidネイティブのMediaCodec/MediaMuxerをKotlinで実装し、FlutterからMethodChannel経由で呼び出す構成にしました。外部ライブラリ不要でアプリサイズを抑えつつ、ネイティブ性能を最大限に活用しています。
自撮り写真という個人性の高いデータをクラウドに送信しない設計にしました。Firebase等を使わず、path_providerでアプリディレクトリに保存するシンプルかつセキュアな構成です。
スマホで撮影した写真はEXIF情報で回転が管理されています。ExifInterfaceで回転角度を取得してMatrixで補正してからエンコードすることで、縦向きの動画を正確に生成しています。
flutter_local_notificationsのzonedScheduleを使用する際、Asia/Tokyoを明示的に設定。main.dartの初期化時にtz.setLocalLocationで日本時間を固定し、確実に指定時刻に通知が届く設計にしています。
まとめ
FlutterとAndroid Studioを使って、アイデア出しからGoogle Play公開まで一通り対応しています。Flutter自体はUIの構築が速く、個人・業務アプリ開発との相性が良いフレームワークです。
「Androidアプリを作りたい」「既存のWebサービスをアプリ化したい」といったご相談もお気軽にどうぞ。
Androidアプリ開発・Web制作のご相談はこちら
お問い合わせ →