iOS, Android, Huawei ve Amazon uygulamalarına özel bildirim sesleri ekleyin — dosya formatları, SDK kurulumu ve API parametreleri dahil.
Özel sesler, uygulamanızda daha benzersiz ve markalı bir deneyim sunmanızı sağlar. Her bildirime özel bir ses ekleyebilir veya yalnızca belirli türdeki bildirimlere ses ekleyebilirsiniz. Örneğin, bir sosyal uygulama sistem bildirimlerinden ayırt etmek için yalnızca doğrudan mesajlarda farklı bir ses çalabilir.
Yalnızca mobil uygulamalar için. Özel sesler web push’ta desteklenmez.
Ses dosyalarını aşağıdaki platform gereksinimlerine göre oluşturun. Cihaz belirtilen dosyayı bulamazsa veya dosya formatı desteklenmiyorsa, varsayılan sistem bildirim sesine geri dönecektir.
Bazı platformlar ses dosyaları için büyük harfleri görmezden geldiğinden ses dosyası adlarını küçük harfle tutun. AwesomeSound.wav yerine awesomesound.wav veya awesome_sound.wav kullanın.
Platform
Uzantılar
Notlar
iOS
.wav.aiff.caf
Sesler Linear PCM, MA4 (IMA/ADPCM), µLaw veya aLaw olarak kodlanmalıdır. 30 saniyeden kısa olmalıdır.
Android
.wav.mp3.ogg
Önerilen uzunluk 30 saniyeden az. Dosya boyutunu küçük tutun, büyük dosyalar bazı cihazlarda çalmayabilir.
Huawei
.wav.mp3.wma
Önerilen uzunluk 30 saniyeden az. Dosya boyutunu küçük tutun, büyük dosyalar bazı cihazlarda çalmayabilir.
Amazon
.wav.mp3.ogg
Önerilen uzunluk 30 saniyeden az. Dosya boyutunu küçük tutun, büyük dosyalar bazı cihazlarda çalmayabilir.
Ses dosyaları uygulamanız içinde kaynak olarak bulunmalıdır. Harici URL’ler desteklenmez.
iOS
Android, Huawei ve Amazon
SDK’nıza bağlı olarak Xcode projenizde uygun konuma ses dosyaları ekleyin.
SDK
Klasör
iOS Native
Dosyaları Xcode proje köküne ekleyin. Dosyaları eklerken Add to targets seçildiğinden emin olun, böylece bundle kaynaklarına otomatik olarak eklenir.
Cordova, Ionic
Dosyaları <project-root>/platforms/ios/project-name.xcodeproj içindeki Xcode projesinde Resources dizinine ekleyin.
Unity
Sesleri Unity projenizde herhangi bir yere ekleyin, projenizi oluşturun ve ardından bu sesleri Xcode proje köküne taşıyın.
SDK’nıza bağlı olarak ses dosyalarını projenizde uygun klasöre ekleyin. Klasör yoksa, oluşturun.
SDK
Klasör
Android, Huawei, Amazon Native
res/raw
React Native
<project-root>/android/app/src/main/res/raw
Cordova
<project-root>/platforms/android/res/raw/
Ionic
/android/app/src/main/res/raw/
Unity
Assets/Plugins/Android/OneSignalConfig/res/rawNOT: Ses ve simge dosya adlarınız küçük harf olmalı ve alt çizgi ve sayılar dışında başka bir şey içeremez.
Ses kaynağına referans verirken dosya uzantısını ekleyin (ör. explode_sound.wav). Push mesajları gönderirken dashboard’da sesi ayarlayın veya Create Notification API ios_sound özelliğini kullanın.Ses olmaması için, Sound alanına nil değerini girin.
OneSignal dashboard'da iOS için özel ses ayarlama.
Android 8+ bildirim seslerini özelleştirmek için kurulması gereken Bildirim Kategorilerini tanıttı. OneSignal, Android’in tüm sürümleri için Bildirim Kanalında yapılandırılan sesi kullanır.Settings > Push & In-App > Android Notification Channels bölümünde grup ve kanalı oluşturun.
Bir bildirim kanalı oluşturun.
Ses çalmak için Importance değerini “Urgent” veya “High” olarak ayarlayın.
İhtiyaçlarınıza göre Sound değerini “Default” veya “Custom” olarak ayarlayın. Ses kaynağına referans verirken dosya uzantısını eklemeyin (ör. cat_meow_sound).
Ses olmaması için, Importance değerini “Urgent” veya “High” ve Sound değerini “Off” olarak ayarlayın. Veya ses olmaması için Importance değerini “Medium” veya “Low” olarak ayarlayabilirsiniz.
Bir bildirim kanalı için ses ayarlama.
Ardından push mesajları gönderirken dashboard’da kategori adını ayarlayabilir veya Create Notification API android_channel_id ve huawei_channel_id özelliklerini kullanabilirsiniz. Kategoride ayarlanan ses, Android’in tüm sürümleri için çalışır.
Push composer'da bildirim kategorisi seçimi.
Her platform için uygun parametreyi kullanarak REST API aracılığıyla sesli bildirimler gönderebilirsiniz. Tüm ayrıntılar için Create Notification API referansına bakın.
Platform
API Parametresi
Ayrıntılar
iOS
ios_sound
Dosya uzantısını dahil edin. Örnek: "ios_sound": "explode_sound.wav". Ses yok için nil değerini girin.
Android
android_channel_id — OneSignal Dashboard’da Bildirim Kategorileri aracılığıyla kanal oluşturduysanız kullanın. existing_android_channel_id — Kanalı başka bir yerde oluşturduysanız kullanın.
huawei_channel_id — OneSignal Dashboard’da Bildirim Kategorileri aracılığıyla kanal oluşturduysanız kullanın. huawei_existing_channel_id — Kanalı başka bir yerde oluşturduysanız kullanın.
Dosya uzantısını dahil etmeyin. Örnek: "adm_sound": "explode_sound".
Uygulamanıza yakın zamanda bir ses kaynağı eklediyseniz, bu sesi kullanan bildirimler göndermeden önce birkaç gün beklemeyi düşünün. Kullanıcıların çoğunluğunun yeni ses dosyasını içeren en son uygulama sürümüne güncellemesi günler veya haftalar alabilir.Bir kullanıcının ses kaynağı olmayan uygulamanızın eski bir sürümü varsa ve buna referans veren bir bildirim alırsa, yalnızca varsayılan sistem bildirim sesini duyacaktır.
Sese ve/veya Android Bildirim Kanalına referans veren bir Şablon kullanın. Bu şablonla gönderilen her bildirim, yapılandırılmış sesi otomatik olarak kullanır.
Farklı kullanıcılara farklı bildirim sesleri gönderebilir miyim?
ios_sound ve android_channel_id parametreleri istek düzeyindedir — o API çağrısının tüm alıcılarına uygulanır. Tek bir istekte farklı kullanıcılar için farklı sesler belirtemezsiniz.Farklı kullanıcılara farklı sesler iletmek için fan-out deseni kullanın: her ses varyantı için ayrı API çağrıları yapın, kullanıcıları etiket veya segmente göre hedefleyin. Örneğin, her kullanıcının tercih ettiği sesi preferred_sound gibi bir etikette saklayın, ardından ses değeri başına bir istek gönderin.
{ "app_id": "YOUR_APP_ID", "contents": {"en": "You have a new message!"}, "ios_sound": "chime.wav", "android_channel_id": "CHIME_CHANNEL_ID", "include_filters": [ {"field": "tag", "key": "preferred_sound", "relation": "=", "value": "chime"} ]}
{ "app_id": "YOUR_APP_ID", "contents": {"en": "You have a new message!"}, "ios_sound": "bell.wav", "android_channel_id": "BELL_CHANNEL_ID", "include_filters": [ {"field": "tag", "key": "preferred_sound", "relation": "=", "value": "bell"} ]}
Her istek yalnızca preferred_sound etiketi eşleşen kullanıcıları hedefler, böylece her grup kendi sesini duyar. İhtiyacınız kadar varyant ekleyin — ses başına bir API çağrısı.
iOS — Kodlama ve test kılavuzu için Apple’ın dokümantasyonunu okuyun.Android — APK’yı çıkararak ve res/raw/ dizininde bulunduğunu doğrulayarak ses dosyasının APK’ya dahil edildiğini kontrol edin.Kaynakları küçültme etkinse, res/raw/ içinde keep.xml oluşturarak ses dosyalarını kaldırılmaktan koruyun:
Bildirimim neden varsayılan ses dosyasını çalıyor?
Kurulum talimatlarını takip ettiğinizden ve ses dosyasının SDK için doğru konumda olduğundan emin olun. Dosya adının büyük-küçük harf kullanımını kontrol edin — bazı platformlar büyük harfleri yok sayar.
Android’de, belirli sayıda bildirim açılmadan alındığında bildirimler birlikte gruplanır. Gruplanmış bildirimler varsayılan bir ses çalar. Tüm bildirimleriniz için grup anahtarı ile sesi ayarlayabilirsiniz.