我正在学习Android
。我已经做了一个简单的Activity
然后在Activity
启动Service
进行一些高网络操作,现在我想在高网络负载调用完成时然后我想更新到我的{{1} }}
是否可以从Activity
更新Activity
?
提前致谢。
答案 0 :(得分:1)
这是从名为DataDroid的现已折旧的库中获取和修改的代码,但它与您尝试执行的操作相关。
private final class RequestReceiver extends ResultReceiver {
RequestReceiver() {
super(new Handler(Looper.getMainLooper()));
}
@Override
public void onReceiveResult(int resultCode, Bundle resultData) {
/*
* Depending on how you implement this either update activity from here
* or instantiate it with an interface that your activity implements and
* call that here.
*/
}
}
使用类似的东西创建服务:
RequestReceiver requestReceiver = new RequestReceiver();
Intent i = new Intent(mContext, Service);
i.putExtra(RequestService.INTENT_EXTRA_RECEIVER, requestReceiver);
mContext.startService(i);
您也可以使用前面提到的库并对其进行修改以适合您当前的用例,或者使用其他许多类似库中的一个。