VerificationActivity clones calling Intent
When VerificationActivity receives an Intent, clone the calling Intent's extras Bundle and pass the whole Bundle into DynamicSystemInstallationService Intent. Don't unpack and repack the calling Intent's extras field. Since VerificationActivity aren't using the contents of the extras Bundle, it shouldn't know about the details of extra. Test: adb shell am start-activity \ -n com.android.dynsystem/com.android.dynsystem.VerificationActivity \ -a android.os.image.action.START_INSTALL \ --el KEY_USERDATA_SIZE 8589934592 \ -d file:///storage/emulated/0/Download/aosp_arm64-dsu_test.zip Change-Id: Ie19b9d4d9ebcbd4623d8c76637da4fa732a4a3c3
This commit is contained in:
@@ -16,9 +16,6 @@
|
||||
|
||||
package com.android.dynsystem;
|
||||
|
||||
import static android.os.image.DynamicSystemClient.KEY_SYSTEM_SIZE;
|
||||
import static android.os.image.DynamicSystemClient.KEY_USERDATA_SIZE;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.KeyguardManager;
|
||||
import android.content.Context;
|
||||
@@ -88,12 +85,8 @@ public class VerificationActivity extends Activity {
|
||||
private void startInstallationService() {
|
||||
// retrieve data from calling intent
|
||||
Intent callingIntent = getIntent();
|
||||
|
||||
Uri url = callingIntent.getData();
|
||||
long systemSize = callingIntent.getLongExtra(KEY_SYSTEM_SIZE, 0);
|
||||
long userdataSize = callingIntent.getLongExtra(KEY_USERDATA_SIZE, 0);
|
||||
boolean enableWhenCompleted = callingIntent.getBooleanExtra(
|
||||
DynamicSystemInstallationService.KEY_ENABLE_WHEN_COMPLETED, false);
|
||||
Bundle extras = callingIntent.getExtras();
|
||||
|
||||
sVerifiedUrl = url.toString();
|
||||
|
||||
@@ -101,10 +94,7 @@ public class VerificationActivity extends Activity {
|
||||
Intent intent = new Intent(this, DynamicSystemInstallationService.class);
|
||||
intent.setData(url);
|
||||
intent.setAction(DynamicSystemClient.ACTION_START_INSTALL);
|
||||
intent.putExtra(KEY_SYSTEM_SIZE, systemSize);
|
||||
intent.putExtra(KEY_USERDATA_SIZE, userdataSize);
|
||||
intent.putExtra(
|
||||
DynamicSystemInstallationService.KEY_ENABLE_WHEN_COMPLETED, enableWhenCompleted);
|
||||
intent.putExtras(extras);
|
||||
|
||||
Log.d(TAG, "Starting Installation Service");
|
||||
startServiceAsUser(intent, UserHandle.SYSTEM);
|
||||
|
||||
Reference in New Issue
Block a user