Я пытаюсь отправить сообщение в свою очередь SQS со своей учетной записью. На других настольных компьютерах легко выполнить SDK с помощью моего access_key и секретного access_key. В андроид-проекте сложно инициализировать среду. Например, я хотел бы реализовать следующие коды для создания функции SendSQS
:
public void addItemSQS() {
AmazonSQSAsyncClient sqs = new AmazonSQSAsyncClient(AWSMobileClient.getInstance());
sqs.setRegion(Region.getRegion("XX-XXXX-X"));
SendMessageRequest req = new SendMessageRequest("https://sqs.XX-XXXX-X.amazonaws.com/XXXXXXXXXXXX/MyQueue", "hello world");
sqs.sendMessageAsync(req, new AsyncHandler<SendMessageRequest, SendMessageResult>() {
@Override
public void onSuccess(SendMessageRequest request, SendMessageResult sendMessageResult) {
Log.i(LOG_TAG, "SQS result: " + sendMessageResult.getMessageId());
}
@Override
public void onError(Exception e) {
Log.e(LOG_TAG, "SQS error: ", e);
}
});
}
Проблема в том, что я не знаю, как правильно настроить AWSMobileClient.getInstance()
, чтобы предоставить доступ к моей очереди SQS. Я пробовал AmazonSQSAsyncClient(AWSCredentials awsCredentials)
метод, но застрял с инициализацией AWSCredentials. com.amazonaws.auth.BasicAWSCredentials
не работал ни один.