[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
(cherry picked from commit 690888547a)
Merged-In: I3bfbcf5a7b21f142fd00130e1a57232bc02aedb6
This commit is contained in:
Songchun Fan
2020-07-29 12:55:11 -07:00
parent d951edaa48
commit 69e604fdb9

View File

@@ -35,19 +35,17 @@ import java.util.List;
public class WriteFallbackSettingsFilesJobService extends JobService {
@Override
public boolean onStartJob(final JobParameters params) {
switch (params.getJobId()) {
case WRITE_FALLBACK_SETTINGS_FILES_JOB_ID:
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;
if (params.getJobId() != 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 false;
}
@Override