First time using Stackoverflow !
I have an issue with my Workmanager and I'm asking for help:
When I run my app, its executing without switching my switch to ON. It's happening every time when I install (run) my app, my notification appears without doing anything. (it still works when I'm using my switch after launching )
MyWorker.java
public class MyWorker extends Worker {
private Workmate workmate;
private String messageBody;
public MyWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
super(context, workerParams);
}
@NonNull
@Override
public Result doWork() {
retrievesWorkmateData();
return Result.success();
}
SettingsActivity.java
@Override
public int getLayout() {
return R.layout.activity_settings;
}
@Override
protected void onConfigureDesign() {
mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
configureToolbar();
spinnerLanguage();
final SharedPreferences.Editor editor = mSharedPreferences.edit();
boolean notificationBoolean = mSharedPreferences.getBoolean(BOOLEAN, false);
final OneTimeWorkRequest simpleRequest = new OneTimeWorkRequest.Builder(MyWorker.class)
.build();
UUID workId = simpleRequest.getId();
if (notificationBoolean) {
mSwitch.setChecked(true);
}
mSwitch.setOnCheckedChangeListener((buttonView, isChecked) -> {
if (mSwitch.isChecked()) {
editor.putBoolean(BOOLEAN, true);
WorkManager.getInstance().enqueue(simpleRequest);
Toast.makeText(this, getResources().getString(R.string.Alarm_manager_start), Toast.LENGTH_SHORT).show();
} else {
editor.putBoolean(BOOLEAN, false);
WorkManager.getInstance().cancelWorkById(workId);
Toast.makeText(this, getResources().getString(R.string.Alarm_manager_cancel), Toast.LENGTH_SHORT).show();
}
editor.apply();
});
}
Have a nice day.