AWS Pinpoint Android, «EventRecorder: не удается успешно доставить события на сервер»

#java #android #amazon-web-services #aws-pinpoint

#java #Android #amazon-веб-сервисы #aws-pinpoint

Вопрос:

Я пытаюсь заставить AWS Pinpoint отправлять уведомления в мое приложение для Android. Я просмотрел инструкции по тестированию установки здесь: https://aws-amplify.github.io/docs/android/push-notifications

Я могу получить токен устройства клиента Pinpoint и отправить сообщение с помощью консоли тестовых сообщений Pinpoint. Как только я отправляю сообщение, я получаю следующую трассировку стека в своем журнале:

 2019-04-11 11:56:34.757 8880-9196/com.example E/EventRecorder: Unable to successfully deliver events to server. Events will be saved, error likely recoverable.Cognito Identity not configured
com.amazonaws.AmazonClientException: Cognito Identity not configured
    at com.amazonaws.mobile.client.AWSMobileClient.getCredentials(AWSMobileClient.java:352)
    at com.amazonaws.services.pinpoint.AmazonPinpointClient.invoke(AmazonPinpointClient.java:4024)
    at com.amazonaws.services.pinpoint.AmazonPinpointClient.putEvents(AmazonPinpointClient.java:3074)
    at com.amazonaws.mobileconnectors.pinpoint.internal.event.EventRecorder.submitEventsAndEndpoint(EventRecorder.java:366)
    at com.amazonaws.mobileconnectors.pinpoint.internal.event.EventRecorder.submitEventsAndEndpoint(EventRecorder.java:344)
    at com.amazonaws.mobileconnectors.pinpoint.internal.event.EventRecorder.processEvents(EventRecorder.java:315)
    at com.amazonaws.mobileconnectors.pinpoint.internal.event.EventRecorder$1.run(EventRecorder.java:240)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
    at java.lang.Thread.run(Thread.java:914)
  

Stacktrace предполагает, что мне нужна «Cognito Identity» для работы обмена сообщениями, но я не хочу эту услугу, поскольку у меня уже есть процесс управления пользователями / аутентификации.

Как мне решить эту проблему?

Спасибо.

Ответ №1:

Я смог решить эту проблему, используя физическое устройство вместо эмулятора.