diff --git a/app/src/main/java/app/attestation/auditor/AttestationActivity.java b/app/src/main/java/app/attestation/auditor/AttestationActivity.java index 01aae605..d1652656 100644 --- a/app/src/main/java/app/attestation/auditor/AttestationActivity.java +++ b/app/src/main/java/app/attestation/auditor/AttestationActivity.java @@ -435,10 +435,10 @@ public boolean onCreateOptionsMenu(final Menu menu) { @Override public boolean onPrepareOptionsMenu(final Menu menu) { - final boolean isRemoteVerifyScheduled = RemoteVerifyJob.isScheduled(this); + final boolean isRemoteVerifyEnabled = RemoteVerifyJob.isEnabled(this); menu.findItem(R.id.action_enable_remote_verify) - .setEnabled(isSupportedAuditee && !isRemoteVerifyScheduled); - menu.findItem(R.id.action_disable_remote_verify).setEnabled(isRemoteVerifyScheduled); + .setEnabled(isSupportedAuditee && !isRemoteVerifyEnabled); + menu.findItem(R.id.action_disable_remote_verify).setEnabled(isRemoteVerifyEnabled); menu.findItem(R.id.action_submit_sample).setEnabled(canSubmitSample && !SubmitSampleJob.isScheduled(this)); return true; diff --git a/app/src/main/java/app/attestation/auditor/RemoteVerifyJob.java b/app/src/main/java/app/attestation/auditor/RemoteVerifyJob.java index d5ad473c..1ff06e51 100644 --- a/app/src/main/java/app/attestation/auditor/RemoteVerifyJob.java +++ b/app/src/main/java/app/attestation/auditor/RemoteVerifyJob.java @@ -49,15 +49,16 @@ public class RemoteVerifyJob extends JobService { private RemoteVerifyTask task; + static boolean isEnabled(final Context context) { + return PreferenceManager.getDefaultSharedPreferences(context).contains(KEY_USER_ID); + } + static boolean isScheduled(final Context context) { return context.getSystemService(JobScheduler.class).getPendingJob(PERIODIC_JOB_ID) != null; } static void restore(final Context context) { - if (!PreferenceManager.getDefaultSharedPreferences(context).contains(KEY_USER_ID)) { - return; - } - if (!isScheduled(context)) { + if (isEnabled(context) && !isScheduled(context)) { Log.d(TAG, "remote attestation is enabled but job was not scheduled, rescheduling it"); try { schedule(context, DEFAULT_INTERVAL);