Bu proje yerel kod olarak hazırlandı; gerçek Firebase hesabı, Android uygulama kayıtları ve Google Maps API anahtarı kullanıcı hesabıyla tamamlanmalıdır.
PowerShell’de proje kökünde çalıştır:
firebase login
Tarayıcıdan Google hesabıyla giriş yap.
Firebase Console’da şu servisleri aç:
Android uygulamaları:
com.senin.parentcom.senin.childFlutterFire CLI yüklü değilse:
dart pub global activate flutterfire_cli
Komut PATH’e ekli değilse tam yol:
$env:Path += ";$env:LOCALAPPDATA\Pub\Cache\bin"
Ebeveyn uygulaması:
cd parent_app
flutterfire configure --platforms=android --android-package-name=com.senin.parent
Çocuk uygulaması:
cd ..\child_app
flutterfire configure --platforms=android --android-package-name=com.senin.child
Beklenen dosyalar:
parent_app/lib/firebase_options.dartparent_app/android/app/google-services.jsonchild_app/lib/firebase_options.dartchild_app/android/app/google-services.jsonGoogle Cloud Console’da Maps SDK for Android etkinleştir.
parent_app/android/app/src/main/AndroidManifest.xml içinde:
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="YOUR_GOOGLE_MAPS_API_KEY" />
YOUR_GOOGLE_MAPS_API_KEY değerini gerçek anahtarla değiştir.
Önemli: Kurallar yalnızca repoda durursa uygulama permission-denied alır; konum, isim düzenleme, davet kodu, mesaj vs. çalışmaz.
Proje kökünde (bir kez giriş):
firebase login
firebase use aile-takip-8bf84
firebase deploy --only firestore:rules,storage
.firebaserc varsayılan projeyi aile-takip-8bf84 olarak ayarlar.
Firebase Console → Firestore → Rules ve Storage → Rules sekmelerinde kuralların yayınlandığını kontrol et.
Günde ~50k okuma / 20k yazma. Aşınca RESOURCE_EXHAUSTED — işlemler durur.
firebase.json kuralları firebase_rules/ altından alır.
Her iki uygulama için:
flutter pub get
flutter analyze
flutter test
flutter run
Gerçek cihaz testi sırası: