Android 如何使一个活动在数据库更新之前保持加载,然后再继续下一个活动?
现在的情况就是这样。我有两个应用程序共享同一个MySQL数据库。一个是给用户的,另一个是给我自己的。在用户提交请求后,用户的应用程序必须一直加载,直到我从我的应用程序中按“接受”,这将更新数据库中的一列,然后用户才能继续进行下一个活动 下面是用户应用程序上的代码。我现在是这样做的,但它不是有效的,也不是正确的解决方案。我为它设置了一个计时器,这意味着我需要在这段时间内快速更新数据库Android 如何使一个活动在数据库更新之前保持加载,然后再继续下一个活动?,android,Android,现在的情况就是这样。我有两个应用程序共享同一个MySQL数据库。一个是给用户的,另一个是给我自己的。在用户提交请求后,用户的应用程序必须一直加载,直到我从我的应用程序中按“接受”,这将更新数据库中的一列,然后用户才能继续进行下一个活动 下面是用户应用程序上的代码。我现在是这样做的,但它不是有效的,也不是正确的解决方案。我为它设置了一个计时器,这意味着我需要在这段时间内快速更新数据库 final Runnable onUi = new Runnable() { @Overr
final Runnable onUi = new Runnable() {
@Override
public void run() {
// this will run on the main UI thread
Intent mainIntent = new Intent(SearchRockets.this,RocketFound.class);
SearchRockets.this.startActivity(mainIntent);
SearchRockets.this.finish();
}
};
Runnable background = new Runnable() {
@Override
public void run() {
// This is the delay
try {
Thread.sleep(WAIT_TIME);
} catch (InterruptedException e) {
e.printStackTrace();
}
// This will run on a background thread
//Simulating a long running task
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Going to Profile Data");
uiHandler.post(onUi);
}
};
new Thread(background).start();
如何使用户的应用程序实时加载,直到我更新列,然后允许用户进行下一个活动?我正在使用PHP for Android与数据库交互。查看后台运行的任务。但听起来您只是在等待服务器响应时向用户显示。请使用推送通知功能。虽然AsynkTask可以解决您的问题,但您是说除非您批准,否则用户将一直看到ProgressBar。这是一个糟糕的用户体验设计。您是否考虑过这样一种情况:您位于远程位置,并且一次有好几天无法批准。理想情况下,您应该将用户重定向到待审批屏幕,并在批准请求后按notify(通知)用户应用程序,以便导航被解锁。您可以在web请求后更新用户应用程序的数据库,对吗?收到http响应后,更新数据库,然后发送一些广播。