Gereksinimler
- SDK’mızın en son sürümü.
- iOS 16.1+ ve iPadOS 17+
- Bir .p8 APNs anahtarı kullanın. Apple, Live Activity’lerle p12 sertifikalarını desteklemiyor.
- Xcode 14 veya üzeri
Kurulum
1. SDK’mızı kurun
Uygulamanızda Mobile SDK’mızın en son sürümünü kurduğunuzdan emin olun. Live Activity’ler web siteleri için veya Web SDK’mızla kullanılamaz.
Unity
Unity tabanlı mobil uygulamalar için platformlar arası SDK rehberi.

React Native & Expo
React Native ve Expo ortamları için kurulum talimatları.

Flutter
Dart kullanan Flutter uygulamaları için SDK rehberi.

Ionic & Ionic Capacitor
Ionic ve Capacitor hibrit mobil uygulamalar için kurulum.
.NET MAUI
.NET MAUI uygulamalarıyla entegrasyon için rehber.

Huawei Android Native
HMS push servislerini kullanan Huawei cihazlar için SDK kurulumu.
2. Yeni setupDefault metodunu ekleyin
OneSignal SDK’sına DefaultLiveActivityAttributes türü için LiveActivity yaşam döngüsünü yönetmesini söylemek için setupDefault metodunu çağırabilirsiniz. Bu metod, Varsayılan Live Activity’yi başlatmak/güncellemek/sonlandırmak için hem Start Live Activity hem de Update Live Activity API’lerini kullanmanıza olanak tanır.
3. Activity Widget oluşturun
1
Info.plist dosyanızı güncelleyin
Xcode’da ana hedefinizin 
Info.plist dosyasını açın, Supports Live Activities anahtarını Boolean olarak ekleyin ve değerini YES olarak ayarlayın.
Info'ya Supports Live Activities anahtarını ekleyin ve değerini Boolean YES olarak ayarlayın
Live Activity’leri güncellerken, Apple’ın güncellemenin ne kadar acil olduğunu belirlemek için kullandığı bir “öncelik” ayarlama seçeneğiniz vardır. Apple, yüksek öncelik bayrağını çok sık kullanan istekleri kısıtlayacağı dahili eşiklere sahiptir.Live Activity’ler için kullanım durumlarınız daha sık yüksek öncelikli güncellemelere dayanıyorsa, Apple’ın Geliştirici Dokümanlarında belirtildiği gibi Info.plist dosyanıza
NSSupportsLiveActivitiesFrequentUpdates anahtarını Boolean türünde YES olarak ayarlayarak ekleyebilirsiniz. Live Activity push bütçesini aştığında kullanıcılara bir diyalog sunulacak ve Live Activity’nin devam etmesine izin verirlerse, bütçe sorunsuz bir kullanıcı deneyimi için otomatik olarak artırılacaktır.2
Bir Widget Extension oluşturun
Xcode’da File > New > Target… > Widget Extension yolunu izleyin.
Seçin ve Next düğmesine basın.Bir isim vererek Widget Extension’ı yapılandırın (örnek: 
Şemayı etkinleştirmeniz istenirse Don’t Activate düğmesine tıklayın.

Xcode'da uygulamanız için yeni bir Widget Extension hedefi ekleyin.
OneSignalWidget) ve Include Live Activity seçeneğinin seçildiğinden emin olun. Ardından Finish düğmesine tıklayın.
Bir Live Activity için Widget Extension seçenekleri.

Bir Live Activity için Widget Extension seçenekleri.
3
Podfile dosyanıza OneSignalXCFramework ekleyin
Projenizin Targets listesinde widget extension hedefinizin adını bulun. Örnekteki ad 
Xcode’u kapatın ve
OneSignalWidgetExtension.
Widget extension hedefinizin adını bulun
Podfile dosyanızı açın ve aşağıdaki kodu ekleyin. OneSignalWidgetExtension yerine widget extension hedefinizin adını yazın.Podfile
OneSignalLiveActivities pod’unu yüklemek için pod repo update && pod install komutunu çalıştırın.4. LiveActivity.swift dosyasını kurun
Xcode’da WidgetExtensionLiveActivity.swift dosyasını açın. Ekranın sağ tarafındaki Inspector panelini açın. Target Membership içinde + düğmesine tıklayın ve Runner hedefinizi seçin.
Ana hedef üyeliğine izin verin
Swift
Live Activity’yi test edin
- Uygulamayı başlatın
- Start Live Activity API referansımızda olası tüm alanları görün. Bu alanların yapısı, UI’nizi nasıl kurduğunuza bağlı olarak farklılık gösterebilir. Örneğin:
"event_updates": Bu, Live Activity başlatıldıktan sonra güncellenebilecek dinamik veridir (kod örneğindekicontext.statesonrasındaki her şey). context.state.data olduğundan, bu alana bir data nesnesi ve kod örneğinde eklediğimiz mesaj sözlüğü gibi içindeki ek alanları ekleriz. Kullanım için aşağıdaki örnek isteğe bakın."event_attributes": Bu, push to start isteğinde ayarlanan ve Live Activity kaldırılana veya üzerine yazılana kadar aynı değeri koruyan statik veridir.
-
Push to start kullanırken,
"activity_id"kodda değil istekte ayarlanır. Farklı Activity ID’leri kullanmak yeni Live Activity’ler başlatacaktır. Aynı Activity ID’yi kullanmak, o ID’yi şu anda kullanan widget’ın üzerine yazacaktır. -
URL yolunuzda OneSignal App ID’yi ve Authorization başlığında Rest API Key’i değiştirdiğinizden emin olun. Varsayılan kurulumu kullanıyorsanız
DefaultActivityAttributestürü değiştirilemez. Ayrıca lütfen yolunuza eklenen activity türünün büyük/küçük harfe duyarlı olduğunu ve sizin tanımladığınız veya aşağıdaki örnekte kullanılan Varsayılan activity ile eşleşmesi gerektiğini unutmayın.
curl