如何使用AWS PHP SDK在简单通知服务(SNS)上创建APNS平台应用程序


How can I create a APNS Platform application on Simple Notification Service (SNS) using AWS PHP SDK?

我在使用php AWS SDK到Apple APNS在SNS上创建平台应用程序时遇到了一些问题。

我创建了一个GCM应用程序,它运行良好,但我不知道如何创建一个针对APNS的PlataformApplication。

有人能给我举个例子吗?

我有必要的证书,但我不知道如何使用它。

我用来创建GCM Plataform应用程序的代码是:

$result = $this->_sns->createPlatformApplication(array(
  'Name'       => Yii::app()->params['SNS_APPLICATION_NAME'],
  'Platform'   => 'GCM',
  'Attributes' => array('PlatformCredential' => Yii::app()->params['GCM_API_KEY']),
));

谢谢!

我终于找到了这个问题的答案。创建APNS平台应用程序ARN非常简单。

生成.pem证书后,只需要将该文件的内容分为两个不同的文件(private_key和certificate),并像这样调用aws-sis客户端:

  $result = $this->_sns->createPlatformApplication(array(
    'Name'       => Yii::app()->params['SNS_APPLICATION_NAME'],
    'Platform'   => 'APNS_SANDBOX',
    'Attributes' => array(
      'PlatformCredential' => file_get_contents(dirname(__FILE__) . '/../runtime/key.txt'),
      'PlatformPrincipal'  => file_get_contents(dirname(__FILE__) . '/../runtime/certificate.txt'),
    ),
  ));

它将根据您的证书生成APNS_SANDBOX或APNS平台应用程序ARN。

我希望这能有所帮助。

谢谢。