我正在创建一个iOS应用程序,对于我们的推送通知,我们使用Amazon的Simple Notification Service(SNS)。
SNS非常好用,但是文档相当简洁。我正在使用boto,亚马逊的Python库,并且已经弄清楚如何发送纯文本推送通知:
然而,文档中并没有说明如何创建苹果推送通知服务(APNS)消息。我需要在推送通知中发送声音和徽章,但无法弄清如何为消息格式化JSON。以下是目前为止我最好的猜测:
当我运行这段代码时,通知上只显示“默认消息”,这意味着Amazon SNS拒绝了我的消息格式,并显示了“default”。
我该如何正确格式化这个JSON?
SNS非常好用,但是文档相当简洁。我正在使用boto,亚马逊的Python库,并且已经弄清楚如何发送纯文本推送通知:
device_arn = 'MY ENDPOINT ARN GOES HERE'
plain_text_message = 'a plaintext message'
sns.publish(message=plain_text_message,target_arn=device_arn)
然而,文档中并没有说明如何创建苹果推送通知服务(APNS)消息。我需要在推送通知中发送声音和徽章,但无法弄清如何为消息格式化JSON。以下是目前为止我最好的猜测:
message = {'default':'default message', 'message':{'APNS_SANDBOX':{'aps':{'alert':'inner message','sound':'mySound.caf'}}}}
messageJSON = json.dumps(message,ensure_ascii=False)
sns.publish(message=messageJSON,target_arn=device_arn,message_structure='json')
当我运行这段代码时,通知上只显示“默认消息”,这意味着Amazon SNS拒绝了我的消息格式,并显示了“default”。
我该如何正确格式化这个JSON?