2016-10-10 15 views
1

FCMとAmazon SNSを使用して、プッシュ通知を切断してクライアントアプリケーションに送信しようとしています。トークン登録をサーバに送信しない

私は以下を実装しました。

String customPushData = "my custom data"; 
CreatePlatformEndpointRequest platformEndpointRequest = new CreatePlatformEndpointRequest(); 

platformEndpointRequest.setCustomUserData(customPushData); 
platformEndpointRequest.setToken(token); 
platformEndpointRequest.setPlatformApplicationArn(platformApplicationArn); 
pushClient.setRegion(Region.getRegion(Regions.AP_NORTHEAST_1)); 

CreatePlatformEndpointResult result = pushClient.createPlatformEndpoint(platformEndpointRequest); 
String endpointArn = result.getEndpointArn(); 

私はこれをデバッグしようとしました。私はconsole.aws.amazon.com/snsその後、何のトークンが登録されていないに自分のアプリケーションをチェックインすると、その後、

カーソルが

CreatePlatformEndpointResult result = pushClient.createPlatformEndpoint(platformEndpointRequest); 

から移動しませんでした。

ここで私は間違っていますが、どうやってデータをsnsに送信して別のデバイスに戻すことができますか?

いずれのhepも非常に高く評価されます。

答えて

0

最後に、私はそれを次のように使いました。

AsyncTaskに入れて次のように変更しました。

new AsyncTask<Void, Void, Void>(){ 

      @Override 
      protected Void doInBackground(Void... params) { 

       AWSCredentials awsCredentials = new BasicAWSCredentials("access Key", "secret Key"); 
       AmazonSNSClient pushClient = new AmazonSNSClient(awsCredentials); 

       CreatePlatformEndpointRequest platformEndpointRequest = new CreatePlatformEndpointRequest(); 
       platformEndpointRequest.setToken(regToken); 
       platformEndpointRequest.setPlatformApplicationArn(platformApplicationArn); 
       pushClient.setRegion(Region.getRegion(Regions.Region_Name)); 

       CreatePlatformEndpointResult result = pushClient.createPlatformEndpoint(platformEndpointRequest); 
       Log.e("Registration result",result.toString()); 

     return null; 
} 

私は応答としてendpointARNを取得しています。

関連する問題