| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 package org.chromium.chrome.browser.crash; | 5 package org.chromium.chrome.browser.crash; |
| 6 | 6 |
| 7 import android.annotation.SuppressLint; | 7 import android.annotation.SuppressLint; |
| 8 import android.app.IntentService; | 8 import android.app.IntentService; |
| 9 import android.app.job.JobInfo; | 9 import android.app.job.JobInfo; |
| 10 import android.content.ComponentName; | 10 import android.content.ComponentName; |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 * Schedules uploading of all pending minidumps, using the JobScheduler API. | 91 * Schedules uploading of all pending minidumps, using the JobScheduler API. |
| 92 */ | 92 */ |
| 93 @SuppressLint("NewApi") | 93 @SuppressLint("NewApi") |
| 94 public static void scheduleUploadJob(Context context) { | 94 public static void scheduleUploadJob(Context context) { |
| 95 assert shouldUseJobSchedulerForUploads(); | 95 assert shouldUseJobSchedulerForUploads(); |
| 96 | 96 |
| 97 CrashReportingPermissionManager permissionManager = PrivacyPreferencesMa
nager.getInstance(); | 97 CrashReportingPermissionManager permissionManager = PrivacyPreferencesMa
nager.getInstance(); |
| 98 PersistableBundle permissions = new PersistableBundle(); | 98 PersistableBundle permissions = new PersistableBundle(); |
| 99 permissions.putBoolean(ChromeMinidumpUploaderDelegate.IS_CLIENT_IN_METRI
CS_SAMPLE, | 99 permissions.putBoolean(ChromeMinidumpUploaderDelegate.IS_CLIENT_IN_METRI
CS_SAMPLE, |
| 100 permissionManager.isClientInMetricsSample()); | 100 permissionManager.isClientInMetricsSample()); |
| 101 permissions.putBoolean( | |
| 102 ChromeMinidumpUploaderDelegate.IS_CRASH_UPLOAD_DISABLED_BY_COMMA
ND_LINE, | |
| 103 permissionManager.isCrashUploadDisabledByCommandLine()); | |
| 104 permissions.putBoolean(ChromeMinidumpUploaderDelegate.IS_UPLOAD_ENABLED_
FOR_TESTS, | 101 permissions.putBoolean(ChromeMinidumpUploaderDelegate.IS_UPLOAD_ENABLED_
FOR_TESTS, |
| 105 permissionManager.isUploadEnabledForTests()); | 102 permissionManager.isUploadEnabledForTests()); |
| 106 | 103 |
| 107 JobInfo.Builder builder = | 104 JobInfo.Builder builder = |
| 108 new JobInfo | 105 new JobInfo |
| 109 .Builder(TaskIds.CHROME_MINIDUMP_UPLOADING_JOB_ID, | 106 .Builder(TaskIds.CHROME_MINIDUMP_UPLOADING_JOB_ID, |
| 110 new ComponentName(context, ChromeMinidumpUploadJ
obService.class)) | 107 new ComponentName(context, ChromeMinidumpUploadJ
obService.class)) |
| 111 .setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY) | 108 .setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY) |
| 112 .setExtras(permissions); | 109 .setExtras(permissions); |
| 113 MinidumpUploadJobService.scheduleUpload(context, builder); | 110 MinidumpUploadJobService.scheduleUpload(context, builder); |
| (...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 364 return; | 361 return; |
| 365 } | 362 } |
| 366 | 363 |
| 367 if (shouldUseJobSchedulerForUploads()) { | 364 if (shouldUseJobSchedulerForUploads()) { |
| 368 scheduleUploadJob(context); | 365 scheduleUploadJob(context); |
| 369 } else { | 366 } else { |
| 370 tryUploadCrashDump(context, renamedMinidumpFile); | 367 tryUploadCrashDump(context, renamedMinidumpFile); |
| 371 } | 368 } |
| 372 } | 369 } |
| 373 } | 370 } |
| OLD | NEW |