doWork() method is not getting called from Work Manager
I am trying to make server call using WorkManager. So, I wrote the below Worker class:
class ServerCallWorker extends Worker {
public ServerCallWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
super(context, workerParams);
Log.d("Testing", "ServerCallWorker constructor method" );
}
@NonNull
@Override
public Worker.Result doWork() {
Log.d("Testing", "doWork() method" );
return Worker.Result.SUCCESS;
}
}
This worker class I am calling from my onCreate() method of my activity. The code snippet is here:
private void getLocationUpdate() {
Log.d("Testing", "inside Location Update");
WorkManager workManager = WorkManager.getInstance();
Log.d("Testing", "inside Location Update 222");
Constraints constraints = new Constraints.Builder().setRequiredNetworkType(NetworkType
.CONNECTED).build();
// PeriodicWorkRequest recurringWork = new PeriodicWorkRequest.Builder(FilterWorker.class, 15,
// TimeUnit.MINUTES).build();
OneTimeWorkRequest wrkReq = new OneTimeWorkRequest.Builder(ServerCallWorker.class).setConstraints(constraints)
.build();
Log.d("Testing", "inside Location Update 333");
workManager.enqueue(wrkReq);
Log.d("Testing", "inside Location Update 444");
}
Now, getLocationUpdate() is getting called and it is printing the logs. But doWork() method is not getting called as no logs are showing. Same for ServerCallWorker() method.
Can someone please point out, where I am making wrong.
Thanks,
Arindam.
android service android-workmanager
add a comment |
I am trying to make server call using WorkManager. So, I wrote the below Worker class:
class ServerCallWorker extends Worker {
public ServerCallWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
super(context, workerParams);
Log.d("Testing", "ServerCallWorker constructor method" );
}
@NonNull
@Override
public Worker.Result doWork() {
Log.d("Testing", "doWork() method" );
return Worker.Result.SUCCESS;
}
}
This worker class I am calling from my onCreate() method of my activity. The code snippet is here:
private void getLocationUpdate() {
Log.d("Testing", "inside Location Update");
WorkManager workManager = WorkManager.getInstance();
Log.d("Testing", "inside Location Update 222");
Constraints constraints = new Constraints.Builder().setRequiredNetworkType(NetworkType
.CONNECTED).build();
// PeriodicWorkRequest recurringWork = new PeriodicWorkRequest.Builder(FilterWorker.class, 15,
// TimeUnit.MINUTES).build();
OneTimeWorkRequest wrkReq = new OneTimeWorkRequest.Builder(ServerCallWorker.class).setConstraints(constraints)
.build();
Log.d("Testing", "inside Location Update 333");
workManager.enqueue(wrkReq);
Log.d("Testing", "inside Location Update 444");
}
Now, getLocationUpdate() is getting called and it is printing the logs. But doWork() method is not getting called as no logs are showing. Same for ServerCallWorker() method.
Can someone please point out, where I am making wrong.
Thanks,
Arindam.
android service android-workmanager
Make sure the device is connected to the internet when getLocationUpdate() is called. Otherwise ServerCallWorker() will be scheduled to be called on device internet connection.
– M.R.Javid
Nov 12 '18 at 20:29
I am connected with internet. If I remove the Network related constraint, still it is not working. doWorK() is not getting called.
– Arindam Mukherjee
Nov 13 '18 at 11:35
@ArindamMukherjee have you solved this problem? I am also facing the same problem.
– Vivek Pratap Singh
Nov 28 '18 at 5:00
I am facing the same issue, Did you find a solution?
– Nadeem Shukoor
Dec 12 '18 at 8:57
add a comment |
I am trying to make server call using WorkManager. So, I wrote the below Worker class:
class ServerCallWorker extends Worker {
public ServerCallWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
super(context, workerParams);
Log.d("Testing", "ServerCallWorker constructor method" );
}
@NonNull
@Override
public Worker.Result doWork() {
Log.d("Testing", "doWork() method" );
return Worker.Result.SUCCESS;
}
}
This worker class I am calling from my onCreate() method of my activity. The code snippet is here:
private void getLocationUpdate() {
Log.d("Testing", "inside Location Update");
WorkManager workManager = WorkManager.getInstance();
Log.d("Testing", "inside Location Update 222");
Constraints constraints = new Constraints.Builder().setRequiredNetworkType(NetworkType
.CONNECTED).build();
// PeriodicWorkRequest recurringWork = new PeriodicWorkRequest.Builder(FilterWorker.class, 15,
// TimeUnit.MINUTES).build();
OneTimeWorkRequest wrkReq = new OneTimeWorkRequest.Builder(ServerCallWorker.class).setConstraints(constraints)
.build();
Log.d("Testing", "inside Location Update 333");
workManager.enqueue(wrkReq);
Log.d("Testing", "inside Location Update 444");
}
Now, getLocationUpdate() is getting called and it is printing the logs. But doWork() method is not getting called as no logs are showing. Same for ServerCallWorker() method.
Can someone please point out, where I am making wrong.
Thanks,
Arindam.
android service android-workmanager
I am trying to make server call using WorkManager. So, I wrote the below Worker class:
class ServerCallWorker extends Worker {
public ServerCallWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
super(context, workerParams);
Log.d("Testing", "ServerCallWorker constructor method" );
}
@NonNull
@Override
public Worker.Result doWork() {
Log.d("Testing", "doWork() method" );
return Worker.Result.SUCCESS;
}
}
This worker class I am calling from my onCreate() method of my activity. The code snippet is here:
private void getLocationUpdate() {
Log.d("Testing", "inside Location Update");
WorkManager workManager = WorkManager.getInstance();
Log.d("Testing", "inside Location Update 222");
Constraints constraints = new Constraints.Builder().setRequiredNetworkType(NetworkType
.CONNECTED).build();
// PeriodicWorkRequest recurringWork = new PeriodicWorkRequest.Builder(FilterWorker.class, 15,
// TimeUnit.MINUTES).build();
OneTimeWorkRequest wrkReq = new OneTimeWorkRequest.Builder(ServerCallWorker.class).setConstraints(constraints)
.build();
Log.d("Testing", "inside Location Update 333");
workManager.enqueue(wrkReq);
Log.d("Testing", "inside Location Update 444");
}
Now, getLocationUpdate() is getting called and it is printing the logs. But doWork() method is not getting called as no logs are showing. Same for ServerCallWorker() method.
Can someone please point out, where I am making wrong.
Thanks,
Arindam.
class ServerCallWorker extends Worker {
public ServerCallWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
super(context, workerParams);
Log.d("Testing", "ServerCallWorker constructor method" );
}
@NonNull
@Override
public Worker.Result doWork() {
Log.d("Testing", "doWork() method" );
return Worker.Result.SUCCESS;
}
}
class ServerCallWorker extends Worker {
public ServerCallWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
super(context, workerParams);
Log.d("Testing", "ServerCallWorker constructor method" );
}
@NonNull
@Override
public Worker.Result doWork() {
Log.d("Testing", "doWork() method" );
return Worker.Result.SUCCESS;
}
}
private void getLocationUpdate() {
Log.d("Testing", "inside Location Update");
WorkManager workManager = WorkManager.getInstance();
Log.d("Testing", "inside Location Update 222");
Constraints constraints = new Constraints.Builder().setRequiredNetworkType(NetworkType
.CONNECTED).build();
// PeriodicWorkRequest recurringWork = new PeriodicWorkRequest.Builder(FilterWorker.class, 15,
// TimeUnit.MINUTES).build();
OneTimeWorkRequest wrkReq = new OneTimeWorkRequest.Builder(ServerCallWorker.class).setConstraints(constraints)
.build();
Log.d("Testing", "inside Location Update 333");
workManager.enqueue(wrkReq);
Log.d("Testing", "inside Location Update 444");
}
private void getLocationUpdate() {
Log.d("Testing", "inside Location Update");
WorkManager workManager = WorkManager.getInstance();
Log.d("Testing", "inside Location Update 222");
Constraints constraints = new Constraints.Builder().setRequiredNetworkType(NetworkType
.CONNECTED).build();
// PeriodicWorkRequest recurringWork = new PeriodicWorkRequest.Builder(FilterWorker.class, 15,
// TimeUnit.MINUTES).build();
OneTimeWorkRequest wrkReq = new OneTimeWorkRequest.Builder(ServerCallWorker.class).setConstraints(constraints)
.build();
Log.d("Testing", "inside Location Update 333");
workManager.enqueue(wrkReq);
Log.d("Testing", "inside Location Update 444");
}
android service android-workmanager
android service android-workmanager
asked Nov 12 '18 at 19:25
Arindam Mukherjee
96563472
96563472
Make sure the device is connected to the internet when getLocationUpdate() is called. Otherwise ServerCallWorker() will be scheduled to be called on device internet connection.
– M.R.Javid
Nov 12 '18 at 20:29
I am connected with internet. If I remove the Network related constraint, still it is not working. doWorK() is not getting called.
– Arindam Mukherjee
Nov 13 '18 at 11:35
@ArindamMukherjee have you solved this problem? I am also facing the same problem.
– Vivek Pratap Singh
Nov 28 '18 at 5:00
I am facing the same issue, Did you find a solution?
– Nadeem Shukoor
Dec 12 '18 at 8:57
add a comment |
Make sure the device is connected to the internet when getLocationUpdate() is called. Otherwise ServerCallWorker() will be scheduled to be called on device internet connection.
– M.R.Javid
Nov 12 '18 at 20:29
I am connected with internet. If I remove the Network related constraint, still it is not working. doWorK() is not getting called.
– Arindam Mukherjee
Nov 13 '18 at 11:35
@ArindamMukherjee have you solved this problem? I am also facing the same problem.
– Vivek Pratap Singh
Nov 28 '18 at 5:00
I am facing the same issue, Did you find a solution?
– Nadeem Shukoor
Dec 12 '18 at 8:57
Make sure the device is connected to the internet when getLocationUpdate() is called. Otherwise ServerCallWorker() will be scheduled to be called on device internet connection.
– M.R.Javid
Nov 12 '18 at 20:29
Make sure the device is connected to the internet when getLocationUpdate() is called. Otherwise ServerCallWorker() will be scheduled to be called on device internet connection.
– M.R.Javid
Nov 12 '18 at 20:29
I am connected with internet. If I remove the Network related constraint, still it is not working. doWorK() is not getting called.
– Arindam Mukherjee
Nov 13 '18 at 11:35
I am connected with internet. If I remove the Network related constraint, still it is not working. doWorK() is not getting called.
– Arindam Mukherjee
Nov 13 '18 at 11:35
@ArindamMukherjee have you solved this problem? I am also facing the same problem.
– Vivek Pratap Singh
Nov 28 '18 at 5:00
@ArindamMukherjee have you solved this problem? I am also facing the same problem.
– Vivek Pratap Singh
Nov 28 '18 at 5:00
I am facing the same issue, Did you find a solution?
– Nadeem Shukoor
Dec 12 '18 at 8:57
I am facing the same issue, Did you find a solution?
– Nadeem Shukoor
Dec 12 '18 at 8:57
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53268806%2fdowork-method-is-not-getting-called-from-work-manager%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53268806%2fdowork-method-is-not-getting-called-from-work-manager%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Make sure the device is connected to the internet when getLocationUpdate() is called. Otherwise ServerCallWorker() will be scheduled to be called on device internet connection.
– M.R.Javid
Nov 12 '18 at 20:29
I am connected with internet. If I remove the Network related constraint, still it is not working. doWorK() is not getting called.
– Arindam Mukherjee
Nov 13 '18 at 11:35
@ArindamMukherjee have you solved this problem? I am also facing the same problem.
– Vivek Pratap Singh
Nov 28 '18 at 5:00
I am facing the same issue, Did you find a solution?
– Nadeem Shukoor
Dec 12 '18 at 8:57