[SettingsProvider] fix WriteFallbackSettingsFilesJobService holding wakelock

onStartJob() should return false otherwise the job service will hold a long wakelock until it times out. writeFallBackSettingsFiles() is blocking, so when it returns we should finish the job.

BUG: 162438758
Test: manual
Change-Id: I3bfbcf5a7b21f142fd00130e1a57232bc02aedb6
This commit is contained in:
Songchun Fan
2020-07-29 12:55:11 -07:00
parent 507092cf25
commit 690888547a

View File

@@ -35,19 +35,17 @@ import java.util.List;
public class WriteFallbackSettingsFilesJobService extends JobService { public class WriteFallbackSettingsFilesJobService extends JobService {
@Override @Override
public boolean onStartJob(final JobParameters params) { public boolean onStartJob(final JobParameters params) {
switch (params.getJobId()) { if (params.getJobId() != WRITE_FALLBACK_SETTINGS_FILES_JOB_ID) {
case WRITE_FALLBACK_SETTINGS_FILES_JOB_ID: return false;
final List<String> settingsFiles = new ArrayList<>();
settingsFiles.add(params.getExtras().getString(TABLE_GLOBAL, ""));
settingsFiles.add(params.getExtras().getString(TABLE_SYSTEM, ""));
settingsFiles.add(params.getExtras().getString(TABLE_SECURE, ""));
settingsFiles.add(params.getExtras().getString(TABLE_SSAID, ""));
settingsFiles.add(params.getExtras().getString(TABLE_CONFIG, ""));
SettingsProvider.writeFallBackSettingsFiles(settingsFiles);
return true;
default:
return false;
} }
final List<String> settingsFiles = new ArrayList<>();
settingsFiles.add(params.getExtras().getString(TABLE_GLOBAL, ""));
settingsFiles.add(params.getExtras().getString(TABLE_SYSTEM, ""));
settingsFiles.add(params.getExtras().getString(TABLE_SECURE, ""));
settingsFiles.add(params.getExtras().getString(TABLE_SSAID, ""));
settingsFiles.add(params.getExtras().getString(TABLE_CONFIG, ""));
SettingsProvider.writeFallBackSettingsFiles(settingsFiles);
return false;
} }
@Override @Override