我使用Amazon SNS向我的iOS應用發送推送通知。即使我知道它們是有效的端點(因爲重新啓用它們然後將新的推送通知提供給設備),無論出於何種原因,我的端點有時似乎被設置爲「虛假」。 There's a similar Stack Overflow question here - but no technical answer as to how to resolve the issue.如何使用iOS SDK重新啓用Amazon SNS端點?
所以:我需要弄清楚如何設置端點爲enabled
。
還有only sparse Amazon documentation如何做到這一點,所以我知道知道我需要在屬性字典中使用「enabled」鍵/值。
我的代碼片段看起來是這樣的:
AmazonSNSClient *sns = [AmazonClientManager sns];
SNSCreatePlatformEndpointRequest *endpointPutRequest = [SNSCreatePlatformEndpointRequest new];
endpointPutRequest.platformApplicationArn = kBXTAWSAppARN;
endpointPutRequest.token = deviceToken;
[endpointPutRequest setAttributesValue:@"True" forKey:@"Enabled"];
SNSCreatePlatformEndpointResponse *endpointResponse = [sns createPlatformEndpoint:endpointPutRequest];
這工作完全,除了代碼單行線,其中規定「已啓用」,以「真」的attributesValue。我已經嘗試了所有這些組合:
[endpointPutRequest setAttributesValue:@"true" forKey:@"Enabled"];
[endpointPutRequest setAttributesValue:@"true" forKey:@"enabled"];
[endpointPutRequest setAttributesValue:@"True" forKey:@"Enabled"];
...但他們都沒有工作。寫這行代碼的正確方法是什麼?我應該以某種方式使用BOOL嗎?一個整數?
感謝您的鏈接。儘管亞馬遜說你需要「更新」令牌,但如果蘋果提供了新的令牌,這種情況纔有意義。蘋果公司的同一款應用程序的大部分重新安裝都給了我相同的信號,這使我無法使用該設備進行通知。 – Priyeshj