2015-02-24 9 views
5

Ho aggiunto un suono personalizzato alla mia app ma non viene riprodotto quando arriva un push. Non ho idea del perché no, non riesco a vedere nulla di diverso da quello che ho fatto e ci sono così pochi passaggi coinvolti.Suono personalizzato non riprodotto quando arriva il push

1) Il file audio è un file audio valido che è udibile (posso persino cliccarlo e riprodurlo all'interno di Xcode).

2) Il file audio è presente in bundle dell'app:

enter image description here

3) Il nome del file audio viene specificato con il nome esatto e la cassa nel payload spinta:

{"aps":{"alert":"Test","badge":0,"sound":"PyngNotification.caf"}} 

4) Ho provato a specificare il nome senza l'estensione, proprio come "PyngNotification".

5) Il push arriva e viene visualizzato ma il suono personalizzato non viene riprodotto.

6) Il telefono emette lo stesso rumore indipendentemente dal fatto che il contenuto del push contenga un suono di "PyngNotification.caf", "default" o "". È un suono di breve durata.

7) I suoni non sono disabilitati sul telefono, né per i push per l'app.

8) L'app si sta registrando per UIRemoteNotificationTypeSound (se iOS8). (L'app visualizza Suoni come uno dei tipi consentiti se visualizzati tramite il pannello di controllo).

9) Ho più di un telefono, uno con iOS8, uno con iOS7. I suoni non su nessuno di loro.

10) L'audio è inferiore a 30 secondi.

11) Il suono era ma4 e convertito in caf utilizzando afconvert.

Non riesco a vedere i passaggi che ho lasciato fuori, né tutto ciò che è errato. Qualcuno ha qualche idea?

+0

È possibile riprodurre manualmente lo stesso suono come descritto [qui] (http://stackoverflow.com/a/10336977/1248068)? Ho la stessa identica configurazione di te, e il mio suono personalizzato suona perfettamente su iOS 8.3 –

+0

Ho anche la stessa configurazione e utilizzo come menzione @black_stallion, ma per me funziona su IOS 7 ma non su IOS 8 –

+0

Ho lo stesso problema !! lavorando su dispositivi iOS 9 ogni volta ma non su iOS 8. Quello che è pazzo è che ho avuto modo di funzionare 1 volta sul dispositivo iOS 8. Ma nelle build successive con suoni diversi non funziona. – user3413723

risposta

-5

Acc. alla documentazione di Apple https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/IPhoneOSClientImp.html#//apple_ref/doc/uid/TP40008194-CH103-SW6

Preparazione avviso personalizzato Suoni

Per le notifiche remote in iOS, è possibile specificare un suono personalizzato che iOS gioca quando si presenta una notifica locale o remoto per un app. I file audio devono trovarsi nel bundle principale dell'app client.

suoni personalizzati di allarme vengono riprodotti dalla struttura di sistema audio iOS, quindi devono essere in uno dei seguenti formati di dati audio:

Linear PCM 
MA4 (IMA/ADPCM) 
µLaw 
aLaw 

È possibile impacchettare i dati audio in un formato AIFF, WAV o file caf. Quindi, in Xcode, aggiungi il file audio al tuo progetto come risorsa non localizzata del pacchetto dell'app.

È possibile utilizzare lo strumento afconvert per convertire i suoni. Ad esempio, per convertire il suono del sistema lineare PCM a 16 bit, Sottomarino.AIFF a IMA4 audio in un file CAF, utilizzare il seguente comando in app Terminal:

afconvert /System/Library/Sounds/Submarine.aiff ~/Desktop/sub.caf -d ima4 -f caff - v

È possibile ispezionare un suono per determinarne il formato dei dati aprendolo in QuickTime Player e scegliendo Mostra Movie Inspector dal menu Film.

I suoni personalizzati devono essere inferiori a 30 secondi quando riprodotti. Se un suono personalizzato supera questo limite, viene riprodotto invece il suono di sistema predefinito.

0

Toccare il file audio che non funziona in Xcode. Guarda l'ispettore file sulla destra e assicurati che l'opzione "Appartenenza alla destinazione" sia spuntata.