Additional changes to SubscriptionManager API as per API council.
bug: 17575308 Change-Id: I7773965094510999bfce8fc6b2b31ba6ce496653
This commit is contained in:
@@ -19,8 +19,6 @@ package com.android.settings.sim;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Settings.SimSettingsActivity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import android.app.NotificationManager;
|
||||
import android.app.PendingIntent;
|
||||
import android.content.BroadcastReceiver;
|
||||
@@ -31,10 +29,9 @@ import android.content.SharedPreferences.Editor;
|
||||
import android.content.res.Resources;
|
||||
import android.support.v4.app.NotificationCompat;
|
||||
import android.telephony.SubscriptionInfo;
|
||||
import android.telephony.SubscriptionListener;
|
||||
import android.telephony.SubscriptionManager;
|
||||
import android.telephony.TelephonyManager;
|
||||
import android.util.Log;
|
||||
import android.telephony.SubscriptionManager.OnSubscriptionsChangedListener;
|
||||
|
||||
import com.android.settings.Utils;
|
||||
|
||||
@@ -47,16 +44,17 @@ public class SimBootReceiver extends BroadcastReceiver {
|
||||
private SharedPreferences mSharedPreferences = null;
|
||||
private TelephonyManager mTelephonyManager;
|
||||
private Context mContext;
|
||||
private SubscriptionManager mSubscriptionManager;
|
||||
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
|
||||
mContext = context;
|
||||
mSubscriptionManager = SubscriptionManager.from(mContext);
|
||||
mSharedPreferences = mContext.getSharedPreferences(SHARED_PREFERENCES_NAME,
|
||||
Context.MODE_PRIVATE);
|
||||
|
||||
SubscriptionManager.register(mContext, mSubscriptionListener,
|
||||
SubscriptionListener.LISTEN_SUBSCRIPTION_INFO_LIST_CHANGED);
|
||||
mSubscriptionManager.registerOnSubscriptionsChangedListener(mSubscriptionListener);
|
||||
}
|
||||
|
||||
private void detectChangeAndNotify() {
|
||||
@@ -71,12 +69,12 @@ public class SimBootReceiver extends BroadcastReceiver {
|
||||
// by checking if the list is empty.
|
||||
// This is not completely correct, but works for most cases.
|
||||
// See Bug: 18377252
|
||||
if (SubscriptionManager.getActiveSubscriptionInfoList().size() < 1) {
|
||||
if (mSubscriptionManager.getActiveSubscriptionInfoList().size() < 1) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (int i = 0; i < numSlots; i++) {
|
||||
final SubscriptionInfo sir = Utils.findRecordBySlotId(i);
|
||||
final SubscriptionInfo sir = Utils.findRecordBySlotId(mContext, i);
|
||||
final String key = SLOT_PREFIX+i;
|
||||
final int lastSubId = getLastSubId(key);
|
||||
|
||||
@@ -133,9 +131,10 @@ public class SimBootReceiver extends BroadcastReceiver {
|
||||
notificationManager.cancel(NOTIFICATION_ID);
|
||||
}
|
||||
|
||||
private final SubscriptionListener mSubscriptionListener = new SubscriptionListener() {
|
||||
private final OnSubscriptionsChangedListener mSubscriptionListener =
|
||||
new OnSubscriptionsChangedListener() {
|
||||
@Override
|
||||
public void onSubscriptionInfoChanged() {
|
||||
public void onSubscriptionsChanged() {
|
||||
detectChangeAndNotify();
|
||||
}
|
||||
};
|
||||
|
Reference in New Issue
Block a user