根据RESTful查询结果,启动一个特定的活动



我在Android Studio中有一个云端点生成库。端点库与我拥有的Cloud SQL数据库进行交互。

在我的Android应用程序中,我有一个带按钮的MainActivity。单击此按钮可进入ActivityA。

但是,我的Cloud SQL数据库中有一个表,我想在单击此按钮时查询它。如果该表有某个条目,我想启动ActivityB。

因此,默认情况下单击按钮会启动ActivityA,但如果数据库中存在某种内容,我想启动ActivityB。

我应该如何设置它,以便当您单击我的按钮时,端点API(它是一个REST API)查询数据库,并根据查询结果启动ActivityA或ActivityB?

我之所以这么问,是因为我知道应该将Restful调用放入AsyncTask中,以防止UI挂断。但是,AsyncTasks是在后台运行的,所以当它处理查询时,可能已经太晚了,ActivityA无论如何都会启动。

如果您想根据Google Cloud Endpoint ApiMethod响应的结果启动新活动,您可以使用类似HelloEndpoints的onPostExecute(result)示例等待显示Toast。在该示例中,android客户端等待sayHi-apiMethod的MyBean响应的String值。

但根据你的评论。

但在另一种情况下,数据库条目可能会在加载MainActivity和用户单击按钮之间发生更改

我认为,由于将响应发送回android客户端所花费的时间,使用REST服务无法实现您想要实现的目标。假设Endpoint向您的客户端发送响应,您的客户端在1秒后得到它。在这一秒的时间段内,可以更改数据库值。

最新更新