flux_analytics_sdk 0.1.22 copy "flux_analytics_sdk: ^0.1.22" to clipboard
flux_analytics_sdk: ^0.1.22 copied to clipboard

Flux Analytics official Flutter SDK for tracking events, sessions, and user identity.

Flux Analytics SDK ✦ (Flutter) #

Flux Analytics Dashboard için resmi Flutter SDK'sı. Bu SDK ile uygulamanızdaki yaşam döngüsünü, oturumları, yükleme verilerini ve özel olayları yüksek doğrulukla takip edebilirsiniz.

pub package license

✨ Özellikler #

  • Tam Otomatik Oturum Yönetimi: Oturum başlangıcı, bitişi ve süresi otomatik hesaplanır.
  • 📱 Derinlemesine Cihaz Analizi: Cihaz modeli, OS versiyonu, dil, bölge ve ağ tipi otomatik toplanır.
  • 👤 Kimlik Yönetimi: identify ile kullanıcı bazlı LTV ve Retention takibi.
  • 💰 Gelir Takibi: IAP ve satış gelirleri için trackRevenue desteği.
  • 🚀 Özel Olaylar: İstediğiniz her türlü aksiyonu metadata ile takip edin.
  • 🛠️ Gelişmiş Takip: Otomatik Crash (hata) raporlama ve API Latency (gecikme) takibi.
  • 💾 Kuyruk ve Offline Desteği: Bağlantı kopsa bile veriler kaybolmaz, ilk fırsatta güvenle gönderilir.
  • 🛡️ Güvenli Kimlik: iOS Keychain/Android ID entegrasyonu ile anonim ID'ler korunur.

📦 Kurulum #

pubspec.yaml dosyanıza ekleyin:

dependencies:
  flux_analytics_sdk: ^0.1.22

Ardından paketleri çekin:

flutter pub get

🚀 Başlangıç Yapılandırması #

1. SDK'yı Başlatın #

Uygulamanızın main fonksiyonunda SDK'yı ilklendirin.

import 'package:flux_analytics_sdk/flux_analytics_sdk.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  
  await Flux.init(
    appId: 'YOUR_APP_ID',    // Flux Dashboard'dan alınan UUID
    firmId: 'YOUR_FIRM_ID',  // Firma/Workspace UUID
    apiKey: 'YOUR_API_KEY',  // Opsiyonel: Özel API anahtarı
    debug: true,             // Konsol loglarını açar
    logLevel: FluxLogLevel.critical, // none, critical (default), verbose
    slowRequestThresholdMs: 2000,    // Yavaş istek eşiği
  );
  
  runApp(const MyApp());
}

2. Otomatik Crash Takibi (Opsiyonel) #

Uygulamanızdaki istisnaları (exception) ve crash'leri otomatik yakalamak için:

Flux.autoTrackCrashes();

👤 Kullanıcı ve Kimlik Yönetimi #

Kullanıcı Tanımlama #

Kullanıcı giriş yaptığında veya tanımlandığında ID'sini atayın:

Flux.identify('user_id_123');

Kullanıcı Özellikleri #

Kullanıcıya özel kalıcı özellikler atayabilirsiniz. Bu özellikler sonraki tüm olaylara otomatik eklenir.

Flux.setAge(25);
Flux.setGender('male');
Flux.setUserProperty('is_premium', true);
Flux.setUserProperty('user_category', 'gold');

📈 Etkinlik Takibi #

Özel Olaylar (Custom Events) #

Herhangi bir kullanıcı etkileşimini metadata ile takip edin:

Flux.track('button_click', {
  'button_name': 'subscribe',
  'page': 'home_screen'
});

Gelir Takibi (Revenue) #

Satın alma işlemlerini raporlayın:

Flux.trackRevenue(9.99, 'USD', {
  'item_id': 'extra_gold_pack',
  'payment_method': 'google_pay'
});

Ekran Takibi (Screen Tracking) #

Ekran görüntüleme ve ekranda kalma sürelerini takip edin:

// Tek seferlik ekran görüntüleme
Flux.trackScreen('MainDashboard');

// Süreli ekran takibi (Ekranda kalma süresi hesaplanır)
Flux.startScreen('SettingsPage');
// ... kullanıcı sayfada vakit geçirir ...
Flux.endScreen('SettingsPage');

🛠️ Teknik Takip ve Hata Yönetimi #

Hata Raporlama #

Özel hata durumlarını manuel raporlayın:

try {
  // riskli işlemler
} catch (e, stack) {
  Flux.trackError('Payment processing failed', stackTrace: stack.toString());
  // VEYA
  Flux.reportCrash(e, stack);
}

Gecikme (Latency) Takibi #

API isteklerinizi veya işlem sürelerini ölçün:

Flux.trackLatency('fetch_user_profile', 450); // 450ms

📣 Atıf ve Pazarlama (MMP) #

Kampanya ve reklam tıklama verilerini manuel set edebilirsiniz:

Flux.setCampaign('winter_sale_2024');
Flux.setClickId('gclid_123456789');
Flux.setAttributionData({
  'ad_network': 'facebook',
  'creative': 'video_ad_1'
});

📄 Lisans #

Bu proje MIT lisansı ile lisanslanmıştır. Detaylar için LICENSE dosyasına göz atabilirsiniz.