我需要运行BroadcastReceiver才能在后台制作网络摄像头,并通过notificationmanager向用户显示通知。但是,该方法同步运行并在网络摄像头完成之前显示通知。我如何等待包含改装网络摄像头的void方法? 以下是我需要等待的网络方法。
public static void getFriendList(String id, final ApiInterface api, final MainActivity activity, final boolean isUpdate)
{
Call<List<String>> call = api.getFriendList(ServiceGenerator.API_KEY, id,"friend");
call.enqueue(new Callback<List<String>>() {
@Override
public void onResponse(Call<List<String>> call, Response<List<String>> response) {
try {
List<String> idsList = new ArrayList<>();
for (String idGroup : response.body()) {
idsList.add(idGroup);
}
for (String ids : idsList) {
getPlayerSummaries(ids, api, activity, isUpdate); // another web call
}
} catch(Exception ex) {
System.out.println("TEST----------------------FAILED IN RESPONSE" + ex);
}
}
@Override
public void onFailure(Call<List<String>> call, Throwable t) {
System.out.println("TEST----------------------FAILED IN FAILURE" + t.getMessage());
}
});
}
答案 0 :(得分:0)
假。执行是用于同步调用。无论如何,我想我找到了一个解决方案。我将在异步任务中使用同步调用。这样,我知道它何时在Web方法之外完成。