【问题标题】:Where do these code snippets for DynamoDB go in my Android application?DynamoDB 的这些代码片段在我的 Android 应用程序中的什么位置?
【发布时间】:2015-01-06 04:01:35
【问题描述】:

我正在创建一个需要在 DynamoDB 中存储/检索数据的 Android 应用程序。我创建了一个名为“Schedules”的 DynamoDB 表,并根据this 教程创建了一个 Schedules 类。但是,本教程奇怪地缺少在哪里/如何放置身份验证代码和对象映射器代码。

我使用了 Amazon Cognito,创建了一个身份池,并获得了生成的示例代码,在提供 AWS 凭证标题 #4 下引用了 here。这段代码应该去哪里?在自己的班级?在我从表中显示/创建数据的活动中?如果是这样,在哪里(onCreate(),它自己的方法等?)。提前感谢您的帮助!

【问题讨论】:

    标签: android authentication amazon-web-services amazon-dynamodb amazon-cognito


    【解决方案1】:

    非常感谢您指出这一点。我们将努力更新文档。

    凭据提供程序被传递给 DynamoDB 客户端,而后者又被传递给映射器。

    AmazonDynamoDBClient ddb = new AmazonDynamoDBClient(credentialsProvider);
    DynamoDBMapper mapper = new DynamoDBMapper(ddb);
    

    此代码的去向取决于您的应用程序,但最好尝试保留对映射器和客户端的单一引用,因此在 onCreate() 或单独的共享类中可能最合适。

    【讨论】:

    • 在示例 Cognito 代码中,它有一行:myActivity.getContext()。我在onCreate() 方法中将这段代码添加到一个activity 中,但是this.getContext() 不起作用,因为getContext() 不是Activity 的方法。有getBaseContext() 和getApplicationContext()。如何使这条线工作?
    • 您正在查看哪个示例代码,以及哪一行?正如this question 回答的那样,每个都有不同的用例,但如果我看到你在看什么会对我有所帮助。
    猜你喜欢
    • 2017-11-07
    • 1970-01-01
    • 1970-01-01
    • 2011-09-29
    • 2021-11-19
    • 1970-01-01
    • 2012-07-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多