-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
androidAndroid platform specificAndroid platform specificcloudCloud sync relatedCloud sync relatedenhancementNew feature or requestNew feature or requestsyncSynchronization featuresSynchronization features
Description
Priority: Medium
Status: 計画中
関連ファイル: android/simpleRecord/REMAINING_TASKS.md (コミット8)
概要
Android版にGoogle Driveを使用したクラウド同期機能を実装し、複数デバイス間でのデータ共有を可能にする。iOS版のiCloud同期と同等の機能を提供。
現状
- ❌ クラウド同期機能が未実装
- ❌ バックアップ機能が未実装
- ❌ 複数デバイス対応が未実装
- ✅ iOS版はiCloudで完全実装済み
実装タスク
コミット8: クラウド同期機能
-
Firebaseとの連携
- Firebase Authentication(Googleアカウント連携)
- Cloud Firestore(メタデータ同期)
- Firebase Storage(音声ファイルストレージ)
- Firebase SDK統合
-
データ同期の実装
- WorkManagerを使用した同期処理
- Google Driveバックアップ機能
- オフラインキャッシュ対応
- 同期状態の管理(synced/syncing/notSynced)
- 競合解決ロジック
-
UI/UX
- ログイン/ログアウト画面
- 同期状態の表示
- 手動同期ボタン
- 同期設定画面
- 同期エラー通知
技術スタック
- Firebase Authentication
- Cloud Firestore
- Firebase Storage
- Google Drive API
- WorkManager (バックグラウンド同期)
- Kotlin Coroutines & Flow
- Room Database (ローカルキャッシュ)
同期フロー
アップロード
- ローカルで音声録音完了
- メタデータをCloud Firestoreに保存
- 音声ファイルをFirebase Storageにアップロード
- Google Driveにバックアップ(オプション)
ダウンロード
- 他デバイスでFirestoreの変更を検知
- 新規音声ファイルをダウンロード
- ローカルRoomデータベースに保存
- UIを更新
受け入れ基準
- Googleアカウントでログインできる
- 録音した音声が自動的にクラウドに同期される
- 他デバイスで録音した音声が表示される
- オフライン時も動作し、オンライン復帰時に同期される
- 同期状態が視覚的に分かる
- 手動同期ボタンで即座に同期できる
- 同期エラー時に適切なメッセージが表示される
- プレミアム機能として提供される(無料版は制限あり)
iOS版との機能パリティ
iOS版(iCloud実装)と同等の同期UXを提供します。
セキュリティ考慮事項
- Firebase Rulesでデータアクセス制御
- 音声ファイルの暗号化(オプション)
- 認証トークンの安全な保管
参考リンク
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
androidAndroid platform specificAndroid platform specificcloudCloud sync relatedCloud sync relatedenhancementNew feature or requestNew feature or requestsyncSynchronization featuresSynchronization features