使用来自Amazon Web Services产品的文本和图像填充ListView?

时间:2016-07-10 12:41:58

标签: android mongodb listview amazon-web-services amazon-dynamodb

我在AWS DynamoDB中有一个数据库。在这个DB中,有3个文本列要放在ListView中(每行中每列一个文本)。
此外,我想在每一行添加一个图像。

所以,我有四个问题:
1.我应该在哪里存储图像?在S3服务?
2.我应该将文本存储在DynamoDB表上,还是应该在EC2上创建MongoDB实例并在那里访问?我问,因为我仍然在免费等级,我不想结束我的免费读写单位。
3.如何创建一个从数据库中获取文本的ListView以及正确的图像?
4.如果没有图像或其中一个文本是N / A,我如何显示“N / A”而不是文本?

2 个答案:

答案 0 :(得分:0)

这是一个悬而未决的问题。这是我的建议:

  1. 图片应该转到S3。 DynamoDB不是为存储大型二进制数据而设计的。它具有每个项目的大小限制,与其他存储服务相比更具扩展性。
  2. SDK具有S3Link,允许您在S3中存储图像,在DynamoDB中存储元数据以进行查询。见http://docs.aws.amazon.com/AWSAndroidSDK/latest/javadoc/com/amazonaws/mobileconnectors/dynamodbv2/dynamodbmapper/S3Link.html
  3. 见上文。您可以从DynamoDB获取文本并链接到图像。
  4. 见上文。当链接为空时显示N / A.

答案 1 :(得分:0)

我使用DynamoDBScanExpression和BaseAdapter类解决了它。对于S3图像,我使用图像的url将其解码为位图,并在每一行中将其设置为ImageView。