Merge "Fix entitlement failed when device is on CBRS" into qt-r1-dev

am: 8a44e4f274

Change-Id: Ifabc853b754fd6323e01246613656fe72961c253
This commit is contained in:
Mark Chien
2019-07-03 17:19:49 -07:00
committed by android-build-merger
3 changed files with 14 additions and 11 deletions

View File

@@ -55,7 +55,7 @@ public class TetherProvisioningActivity extends Activity {
final int tetherSubId = getIntent().getIntExtra(EXTRA_SUBID, final int tetherSubId = getIntent().getIntExtra(EXTRA_SUBID,
SubscriptionManager.INVALID_SUBSCRIPTION_ID); SubscriptionManager.INVALID_SUBSCRIPTION_ID);
final int subId = SubscriptionManager.getDefaultDataSubscriptionId(); final int subId = SubscriptionManager.getActiveDataSubscriptionId();
if (tetherSubId != subId) { if (tetherSubId != subId) {
Log.e(TAG, "This Provisioning request is outdated, current subId: " + subId); Log.e(TAG, "This Provisioning request is outdated, current subId: " + subId);
return; return;
@@ -67,6 +67,7 @@ public class TetherProvisioningActivity extends Activity {
final Intent intent = new Intent(Intent.ACTION_MAIN); final Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setClassName(provisionApp[0], provisionApp[1]); intent.setClassName(provisionApp[0], provisionApp[1]);
intent.putExtra(EXTRA_TETHER_TYPE, tetherType); intent.putExtra(EXTRA_TETHER_TYPE, tetherType);
intent.putExtra(SubscriptionManager.EXTRA_SUBSCRIPTION_INDEX, subId);
if (DEBUG) { if (DEBUG) {
Log.d(TAG, "Starting provisioning app: " + provisionApp[0] + "." + provisionApp[1]); Log.d(TAG, "Starting provisioning app: " + provisionApp[0] + "." + provisionApp[1]);
} }

View File

@@ -85,7 +85,7 @@ public class TetherService extends Service {
public void onCreate() { public void onCreate() {
super.onCreate(); super.onCreate();
if (DEBUG) Log.d(TAG, "Creating TetherService"); if (DEBUG) Log.d(TAG, "Creating TetherService");
String provisionResponse = getResourceForDefaultDataSubId().getString( String provisionResponse = getResourceForActiveDataSubId().getString(
com.android.internal.R.string.config_mobile_hotspot_provision_response); com.android.internal.R.string.config_mobile_hotspot_provision_response);
registerReceiver(mReceiver, new IntentFilter(provisionResponse), registerReceiver(mReceiver, new IntentFilter(provisionResponse),
android.Manifest.permission.CONNECTIVITY_INTERNAL, null); android.Manifest.permission.CONNECTIVITY_INTERNAL, null);
@@ -105,7 +105,7 @@ public class TetherService extends Service {
if (intent.hasExtra(EXTRA_SUBID)) { if (intent.hasExtra(EXTRA_SUBID)) {
final int tetherSubId = intent.getIntExtra(EXTRA_SUBID, final int tetherSubId = intent.getIntExtra(EXTRA_SUBID,
SubscriptionManager.INVALID_SUBSCRIPTION_ID); SubscriptionManager.INVALID_SUBSCRIPTION_ID);
final int subId = getTetherServiceWrapper().getDefaultDataSubscriptionId(); final int subId = getTetherServiceWrapper().getActiveDataSubscriptionId();
if (tetherSubId != subId) { if (tetherSubId != subId) {
Log.e(TAG, "This Provisioning request is outdated, current subId: " + subId); Log.e(TAG, "This Provisioning request is outdated, current subId: " + subId);
if (!mInProvisionCheck) { if (!mInProvisionCheck) {
@@ -273,11 +273,13 @@ public class TetherService extends Service {
} }
private Intent getProvisionBroadcastIntent(int index) { private Intent getProvisionBroadcastIntent(int index) {
String provisionAction = getResourceForDefaultDataSubId().getString( String provisionAction = getResourceForActiveDataSubId().getString(
com.android.internal.R.string.config_mobile_hotspot_provision_app_no_ui); com.android.internal.R.string.config_mobile_hotspot_provision_app_no_ui);
final int subId = getTetherServiceWrapper().getActiveDataSubscriptionId();
Intent intent = new Intent(provisionAction); Intent intent = new Intent(provisionAction);
int type = mCurrentTethers.get(index); int type = mCurrentTethers.get(index);
intent.putExtra(TETHER_CHOICE, type); intent.putExtra(TETHER_CHOICE, type);
intent.putExtra(SubscriptionManager.EXTRA_SUBSCRIPTION_INDEX, subId);
intent.setFlags(Intent.FLAG_RECEIVER_FOREGROUND intent.setFlags(Intent.FLAG_RECEIVER_FOREGROUND
| Intent.FLAG_RECEIVER_INCLUDE_BACKGROUND); | Intent.FLAG_RECEIVER_INCLUDE_BACKGROUND);
@@ -309,7 +311,7 @@ public class TetherService extends Service {
PendingIntent pendingIntent = PendingIntent.getService(this, 0, intent, 0); PendingIntent pendingIntent = PendingIntent.getService(this, 0, intent, 0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
int period = getResourceForDefaultDataSubId().getInteger( int period = getResourceForActiveDataSubId().getInteger(
com.android.internal.R.integer.config_mobile_hotspot_provision_check_period); com.android.internal.R.integer.config_mobile_hotspot_provision_check_period);
long periodMs = period * MS_PER_HOUR; long periodMs = period * MS_PER_HOUR;
long firstTime = SystemClock.elapsedRealtime() + periodMs; long firstTime = SystemClock.elapsedRealtime() + periodMs;
@@ -362,7 +364,7 @@ public class TetherService extends Service {
@Override @Override
public void onReceive(Context context, Intent intent) { public void onReceive(Context context, Intent intent) {
if (DEBUG) Log.d(TAG, "Got provision result " + intent); if (DEBUG) Log.d(TAG, "Got provision result " + intent);
String provisionResponse = getResourceForDefaultDataSubId().getString( String provisionResponse = getResourceForActiveDataSubId().getString(
com.android.internal.R.string.config_mobile_hotspot_provision_response); com.android.internal.R.string.config_mobile_hotspot_provision_response);
if (provisionResponse.equals(intent.getAction())) { if (provisionResponse.equals(intent.getAction())) {
@@ -429,14 +431,14 @@ public class TetherService extends Service {
mUsageStatsManager.setAppInactive(packageName, isInactive); mUsageStatsManager.setAppInactive(packageName, isInactive);
} }
int getDefaultDataSubscriptionId() { int getActiveDataSubscriptionId() {
return SubscriptionManager.getDefaultDataSubscriptionId(); return SubscriptionManager.getActiveDataSubscriptionId();
} }
} }
@VisibleForTesting @VisibleForTesting
Resources getResourceForDefaultDataSubId() { Resources getResourceForActiveDataSubId() {
final int subId = getTetherServiceWrapper().getDefaultDataSubscriptionId(); final int subId = getTetherServiceWrapper().getActiveDataSubscriptionId();
return Utils.getResourcesForSubId(this, subId); return Utils.getResourcesForSubId(this, subId);
} }
} }

View File

@@ -458,7 +458,7 @@ public class TetherServiceTest extends ServiceTestCase<TetherService> {
} }
@Override @Override
int getDefaultDataSubscriptionId() { int getActiveDataSubscriptionId() {
return INVALID_SUBSCRIPTION_ID; return INVALID_SUBSCRIPTION_ID;
} }
} }