Callback/Event 在多个 OkHttp post 请求之后
Callback/Event after multiple OkHttp post request
我的应用程序有一个 BroadCastReceiver
,它是使用 registerReceiver(receiver, filter)
以编程方式注册的。代码 registerReceiver(receiver, filter)
放置在 Application
class 中,因此它具有全局 access.The BroadCastReceiver
启动一个 Service
发送多个 OkHttp POST对服务器的请求。当多个 POST 请求成功时,我想注销 BroadCastReceiver
的实例。如何做到这一点?
MyService.java:
public class MyService extends Service {
@Override
public void onCreate() {
for(int i=0;i<size;i++){
/....Multiple POST Requests..../
}
Callback/Event(){ execute unregisterReceiver();}
}
@Override
public void onDestroy() {
}
}
MyReciever.java:
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
startService(new Intent(context, MyService.class));
}
}
好的,我通过简单地使用计数器变量解决了它。
public class MyService extends Service {
int counter;
@Override
public void onCreate() {
counter = size ;
for(int i=0;i<size;i++){
/....Multiple POST Requests..../
OnResponse:
counter--
if(counter ==0){
execute unregisterReceiver();
}
}
}
@Override
public void onDestroy() {
}
}
我的应用程序有一个 BroadCastReceiver
,它是使用 registerReceiver(receiver, filter)
以编程方式注册的。代码 registerReceiver(receiver, filter)
放置在 Application
class 中,因此它具有全局 access.The BroadCastReceiver
启动一个 Service
发送多个 OkHttp POST对服务器的请求。当多个 POST 请求成功时,我想注销 BroadCastReceiver
的实例。如何做到这一点?
MyService.java:
public class MyService extends Service {
@Override
public void onCreate() {
for(int i=0;i<size;i++){
/....Multiple POST Requests..../
}
Callback/Event(){ execute unregisterReceiver();}
}
@Override
public void onDestroy() {
}
}
MyReciever.java:
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
startService(new Intent(context, MyService.class));
}
}
好的,我通过简单地使用计数器变量解决了它。
public class MyService extends Service {
int counter;
@Override
public void onCreate() {
counter = size ;
for(int i=0;i<size;i++){
/....Multiple POST Requests..../
OnResponse:
counter--
if(counter ==0){
execute unregisterReceiver();
}
}
}
@Override
public void onDestroy() {
}
}