Merge "Fix entitlement failed when device is on CBRS" into qt-r1-dev
This commit is contained in:
@@ -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]);
|
||||||
}
|
}
|
||||||
|
@@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -458,7 +458,7 @@ public class TetherServiceTest extends ServiceTestCase<TetherService> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
int getDefaultDataSubscriptionId() {
|
int getActiveDataSubscriptionId() {
|
||||||
return INVALID_SUBSCRIPTION_ID;
|
return INVALID_SUBSCRIPTION_ID;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user