Amazon aws KVS Video streaming using Access key ID Secret access key in Android

Amazone aws KVS Video streaming using Access key ID Secret access key in Android

我正在使用 Amazon KVS 视频流服务。我需要以下两点帮助。

  1. 我知道可以通过两种方式进行视频流式传输。首先使用网络 RTC,其次使用 KVS 视频流。我想知道如何使用 KVS 视频流来完成?我有访问密钥 ID 和秘密访问密钥。
  2. 我想在不创建 Cognito 用户的情况下实现此目的。
  3. 是否可以在没有池 ID 的情况下实现这一点?

我正在关注下面的参考。

KinesisVideoAndroidClientFactory is a generic AWSCredentialsProvider 的第二个参数。

通过 Cognito 提供身份验证的 AWSMobileClientAWSCredentialsProvider 的一个示例。

但是,AWSCredentialsProvider还有其他实现。最简单的解决方案之一是使用 StaticCredentialsProvider, to provide some BasicAWSCredentials.

在 Kotlin 中:

val credentials =
    BasicAWSCredentials(your, secretKey)
val provider =
    StaticCredentialsProvider(credentials)
val kinesis =
    KinesisVideoAndroidClientFactory.createKinesisVideoClient(applicationContext, provider)

或Java:

AWSCredentials credentials =
    new BasicAWSCredentials(your, secretKey);
AWSCredentialsProvider provider =
    new StaticCredentialsProvider(credentials);
KinesisVideoClient kinesis =
    KinesisVideoAndroidClientFactory.createKinesisVideoClient(getApplicationContext(), provider);

你就是这样做的。现在,你应该吗?当然,用于调试和开发。但是,此解决方案要求您将 AWS 访问凭证烘焙到您的代码中。该解决方案的安全性较低,我不建议将其用于生产。请查看 Best practices for managing AWS access keys,并考虑改用 AWSMobileClient / Cognito。