2012-04-25 4 views
3

Я хочу отправить push-уведомление с помощью настраиваемого звука, но всегда стараюсь, я слышу только по умолчанию.APNS Custom Sound

мой звук называется wil.caf, и у меня это в моем проекте xcode.

это мой PHP sript огня нажимного сообщения:

<?php 

$message = $_GET["message"]; 

$deviceToken = $_GET["token"]; 


$devideToken = dechex ($deviceToken); 
// Payload erstellen und JSON codieren 

$payload['aps'] = array('alert' => $message, 'badge' => 0, 'sound' => 'default'); 
$payload = json_encode($payload); 
$apnsHost = 'gateway.push.apple.com'; 

$apnsPort = 2195; 

$apnsCert = 'apsDevBundle2.pem'; 



// Stream erstellen 

$streamContext = stream_context_create(); 

stream_context_set_option($streamContext, 'ssl', 'local_cert', $apnsCert); 



$apns = stream_socket_client('ssl://' . $apnsHost . ':' . $apnsPort, $error, $errorString, 2, STREAM_CLIENT_CONNECT, $streamContext); 

if ($apns) 

{ 

    // Nachricht erstellen und senden 

    $apnsMessage = chr(0) . chr(0) . chr(32) . pack('H*', str_replace(' ', '', $deviceToken)) . chr(0) . chr(strlen($payload)).$payload; 

    fwrite($apns, $apnsMessage); 



    // Verbindung schliessen 

    fclose($apns); 

} 

else 

{ 

    echo "Fehler!"; 

    var_dump($error); 

    var_dump($errorString); 

} 

?> 

может кто-нибудь мне помочь?

ответ

6

Ваша тестовая полезная нагрузка указывает «по умолчанию» как звук для воспроизведения. Если вы хотите играть в пользовательский звук, убедитесь, что звуковой файл находится в комплекте приложения и указать его следующим образом (используя пример Apple, bingpong.aiff звуковой файл):

$payload['aps'] = array('alert' => $message, 'badge' => 0, 'sound' => 'bingbong.aiff' 

Полная APNS документация: http://developer.apple.com/library/ios/#DOCUMENTATION/NetworkingInternet/Conceptual/RemoteNotificationsPG/ApplePushService/ApplePushService.html#//apple_ref/doc/uid/TP40008194-CH100-SW9