首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用AWS DataStore,然后允许对Android中的云同步功能进行可选激活。

使用AWS DataStore,然后允许对Android中的云同步功能进行可选激活。
EN

Stack Overflow用户
提问于 2020-05-18 15:02:01
回答 1查看 841关注 0票数 4

我使用AwsAppsync启动了一个项目。

该应用程序将首先离线。如果客户想要同步,我们希望稍后提供在云中同步的选项,作为一个额外的选项。因此,我将我的项目配置如下:

在build.gradle中添加了以下内容:

代码语言:javascript
复制
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.6.2'
        classpath 'com.amplifyframework:amplify-tools-gradle-plugin:0.2.1'
    }
}

apply plugin: 'com.amplifyframework.amplifytools'

并添加了这些依赖项:

代码语言:javascript
复制
implementation 'com.amplifyframework:core:0.10.0'
implementation 'com.amplifyframework:aws-api:0.10.0' // If using cloud sync
implementation 'com.amplifyframework:aws-datastore:0.10.0'

然后使用扩容CLI:

在任何时候通过执行这个Amplify命令复制生成模型:

代码语言:javascript
复制
amplify codegen models

之后,在活动的onCreate中:

代码语言:javascript
复制
ModelProvider modelProvider = AmplifyModelProvider.getInstance();
Amplify.addPlugin(AWSDataStorePlugin.forModels(modelProvider));
Amplify.configure(getApplicationContext());

有了这个,我可以查询、更新和删除数据。

,这足以提供完整的离线体验吗?

现在,根据文档,要添加在线同步功能,我必须执行以下操作:

使用扩容CLI:

代码语言:javascript
复制
amplify push

这将创建具有同步配置的amplifyconfiguration.json。

现在,这些信息似乎是在构建时设置的。那么,当我需要这个特性时,我如何启用/禁用它?这些文件提到了以下内容:

代码语言:javascript
复制
ModelProvider modelProvider = AmplifyModelProvider.getInstance();
Amplify.addPlugin(AWSDataStorePlugin.forModels(modelProvider));
Amplify.addPlugin(new AWSApiPlugin()); // If using remote model synchronization
Amplify.configure(getApplicationContext());

因此,我需要添加“新AWSApiPlugin()”才能启用/禁用该特性?谢谢!

有足够好的教程/书来解释这一点吗?我读过几个文档(包括官员),但我没有找到关于这个特定案例的一些东西。它总是与在线同步从get开始。

EN

回答 1

Stack Overflow用户

发布于 2020-06-01 06:17:52

从高层次来看,是的,这是相当准确的。DataStore不需要后端,它只是一个本地DB,您可以用于脱机,包括查询。当您使用amplify push添加后端(这将部署由DynamoDB支持的AppSync API )并将其与AWSApiPlugin连接时,它将开始同步。最好的教程在docs中:https://docs.amplify.aws

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61872577

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档