Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 25ca8a9e authored by Wink Saville's avatar Wink Saville
Browse files

Additional changes to SubscriptionManager API as per API council.

bug: 17575308
Change-Id: Idd98aa46c15a9219ccf28091c62602ac8bf16c62
parent f3cbc1e7
Loading
Loading
Loading
Loading
+10 −13
Original line number Diff line number Diff line
@@ -20,16 +20,9 @@ import android.content.Context;
import android.telephony.PhoneStateListener;
import android.telephony.ServiceState;
import android.telephony.SignalStrength;
import android.telephony.SubscriptionListener;
import android.telephony.TelephonyManager;
import android.telephony.SubscriptionManager;
import android.content.IntentFilter;
import android.content.Intent;
import android.content.BroadcastReceiver;

import com.android.internal.telephony.TelephonyIntents;
import com.android.internal.telephony.PhoneConstants;

import android.telephony.SubscriptionManager.OnSubscriptionsChangedListener;
import android.util.Log;
import android.bluetooth.BluetoothDevice;

@@ -79,14 +72,18 @@ class HeadsetPhoneState {

    private PhoneStateListener mPhoneStateListener = null;

    private final SubscriptionListener mSubscriptionListener = new SubscriptionListener() {
    private SubscriptionManager mSubMgr;

    private OnSubscriptionsChangedListener mOnSubscriptionsChangedListener =
            new OnSubscriptionsChangedListener() {
        @Override
        public void onSubscriptionInfoChanged() {
        public void onSubscriptionsChanged() {
            listenForPhoneState(false);
            listenForPhoneState(true);
        }
    };


    HeadsetPhoneState(Context context, HeadsetStateMachine stateMachine) {
        mStateMachine = stateMachine;
        mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
@@ -95,13 +92,13 @@ class HeadsetPhoneState {
        // Register for SubscriptionInfo list changes which is guaranteed
        // to invoke onSubscriptionInfoChanged and which in turns calls
        // loadInBackgroud.
        SubscriptionManager.register(mContext, mSubscriptionListener,
                SubscriptionListener.LISTEN_SUBSCRIPTION_INFO_LIST_CHANGED);
        mSubMgr = SubscriptionManager.from(mContext);
        mSubMgr.registerOnSubscriptionsChangedListener(mOnSubscriptionsChangedListener);
    }

    public void cleanup() {
        listenForPhoneState(false);
        SubscriptionManager.unregister(mContext, mSubscriptionListener);
        mSubMgr.unregisterOnSubscriptionsChangedListener(mOnSubscriptionsChangedListener);

        mTelephonyManager = null;
        mStateMachine = null;