83 lines
4 KiB
Markdown
83 lines
4 KiB
Markdown
# 🧾 ShiroginSDK Changelog
|
||
|
||
Tüm önemli değişiklikler bu dosyada tutulacaktır.
|
||
Her sürüm, SDK mimarisine eklenen yeni sistemleri ve servisleri içerir.
|
||
|
||
---
|
||
|
||
## [1.0.0] - 2025-10-01
|
||
### ✨ Eklendi
|
||
|
||
- 🎯 **IAP Service (In-App Purchasing)**
|
||
- `IAPService` sınıfı eklendi. Unity IAP üzerinden satın alma, ödül verme ve restore işlemleri destekleniyor.
|
||
- `StoreRepository`, `StoreSection`, `StoreItem` ScriptableObject yapıları oluşturuldu.
|
||
- `RewardDefinition` ile oyun içi ödüller merkezi olarak tanımlanabiliyor.
|
||
- `UIStoreItem_*` sınıfları (Consumable, NonConsumable, Bundle, Rewarded, Chest) ile dinamik mağaza UI sistemi kuruldu.
|
||
- `EconomyData` ve `StoreData` entegrasyonu sağlandı.
|
||
|
||
- 💳 **Economy & Data System**
|
||
- `BaseData` mimarisi kuruldu. Veriler JSON tabanlı kayıt ve yükleme destekliyor.
|
||
- `EconomyData`, `InventoryData`, `StatsData` yapılandırıldı.
|
||
- `DataService` merkezi kayıt erişimi sağlıyor.
|
||
- Oyunlara özel veri kullanımı seçilebilir hale getirildi (örnek: sadece Gold/Gems/Tickets tutma).
|
||
|
||
- 📊 **Analytics System (Firebase • AppsFlyer • Facebook)**
|
||
- `AnalyticsService` merkezi çoklu SDK entegrasyonu eklendi.
|
||
- `AnalyticsEventListener` otomatik event forwarding sistemi getirildi.
|
||
- `AnalyticsEventMapper` ile tüm platformlara tek event tipi üzerinden loglama sağlandı.
|
||
- `FirebaseService`, `AppsFlyerService`, `FacebookService` modülleri hazırlandı.
|
||
- Otomatik loglama akışı (`Purchase`, `Ad`, `Tutorial`, `Session`, `Reward`) tamamlandı.
|
||
|
||
- 👥 **Event System (EventService & ShiroginEvents)**
|
||
- SDK genelinde event-driven mimari uygulandı.
|
||
- Tüm servisler `EventService` üzerinden haberleşiyor.
|
||
- Kuyruk sistemi eklendi, dinleyici yoksa event’ler kaybolmadan bekliyor.
|
||
- `ShiroginEvents` ile tüm oyun içi olaylar (Ad, Purchase, Reward, Session, Level, Player vb.) tanımlandı.
|
||
|
||
- 🧩 **Remote Config System (Firebase RemoteConfig)**
|
||
- `RemoteConfigService` eklendi.
|
||
- Web API Key ve oyun bazlı konfigürasyon desteği sağlandı.
|
||
- Local fallback ve cache sistemi ile offline çalışma desteklendi.
|
||
- `RemoteConfigData` ve `RemoteConfigDefinition` üzerinden yapılandırılabilir hale getirildi.
|
||
|
||
- 🪟 **Popup & UI Framework**
|
||
- `PopupBase` sistemi kuruldu.
|
||
- DOTween tabanlı açılma/kapanma animasyonları eklendi.
|
||
- `PopupService` tüm UI popuplarını tek merkezden yönetiyor.
|
||
- Temalarla uyumlu arka plan şeffaflık animasyonu desteği getirildi.
|
||
|
||
- 🎨 **Theme Service**
|
||
- `ThemeService` eklendi.
|
||
- Her oyun için özel tema setleri (örnek: Fire, Snow, Dungeon, etc.) tanımlanabiliyor.
|
||
- UI elementleri tema bazlı otomatik güncellenebiliyor.
|
||
|
||
- 🧰 **Editor Tools**
|
||
- `SDKConfigurator` ve `PlayerPrefs Editor` arayüzleri oluşturuldu.
|
||
- SDK modülleri Unity Editor üzerinden kolayca açılıp kapatılabiliyor.
|
||
- Otomatik versiyonlama ve konfigürasyon denetimi sağlandı.
|
||
|
||
- ⚙️ **Core Improvements**
|
||
- `SDKInitializer` eklendi — tüm servisleri sırasıyla başlatıyor.
|
||
- Servislerin `DontDestroyOnLoad` yaşam döngüsü standardize edildi.
|
||
- Konsol log’ları ShiroginSDK etiketiyle birleştirildi.
|
||
|
||
---
|
||
|
||
### 🧩 Düzeltildi
|
||
- IAP `NullReferenceException` hataları giderildi (`StoreRepository` null koruması).
|
||
- `FirebaseService` için `IsObjectMonoBehaviour` hata senaryosu düzeltildi (ana thread başlatma).
|
||
- `DOTween.DOFade` hatası (CanvasGroup yerine Image alpha kullanımı) düzeltildi.
|
||
- Editor'da null `StoreSection`’ların temizlenmesi sağlandı.
|
||
|
||
---
|
||
|
||
### 🧠 Notlar
|
||
- SDK modülleri tamamen **event-based** olarak yeniden tasarlandı.
|
||
- Her servis birbirinden bağımsız, ancak `EventService` aracılığıyla entegre çalışıyor.
|
||
- Firebase, Facebook, AppsFlyer gibi SDK’lar **SDKConfig** üzerinden kolayca devre dışı bırakılabiliyor.
|
||
- Tüm UI bileşenleri **ScriptableObject tabanlı veri akışına** bağlı.
|
||
|
||
---
|
||
|
||
**Hazırlayan:** Emir Han MAMAK
|
||
**Sürüm:** 2025.10
|