[Settings] Remove the intent receiver due to the register exception
Bug: 274899027 Test: atest SystemUIMicrobenchmark:android.platform.test.scenario.sysui.quicksettings Change-Id: Ia19b91cfd1073f22180cc9679025447b4d5fecd9
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
package com.android.settings.network;
|
||||
|
||||
import static com.android.internal.telephony.TelephonyIntents.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED;
|
||||
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.telephony.SubscriptionManager;
|
||||
import android.telephony.TelephonyManager;
|
||||
|
||||
public class DefaultSubscriptionReceiver extends BroadcastReceiver {
|
||||
|
||||
private Context mContext;
|
||||
private DefaultSubscriptionListener mListener;
|
||||
|
||||
public DefaultSubscriptionReceiver(Context context, DefaultSubscriptionListener listener) {
|
||||
mContext = context;
|
||||
mListener = listener;
|
||||
}
|
||||
|
||||
public void registerReceiver() {
|
||||
final IntentFilter filter = new IntentFilter();
|
||||
filter.addAction(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED);
|
||||
filter.addAction(SubscriptionManager.ACTION_DEFAULT_SUBSCRIPTION_CHANGED);
|
||||
filter.addAction(ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED);
|
||||
filter.addAction(SubscriptionManager.ACTION_DEFAULT_SMS_SUBSCRIPTION_CHANGED);
|
||||
mContext.registerReceiver(this, filter);
|
||||
}
|
||||
|
||||
public void unRegisterReceiver() {
|
||||
mContext.unregisterReceiver(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
String action = intent.getAction();
|
||||
if (TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED.equals(action)) {
|
||||
mListener.onDefaultDataChanged(SubscriptionManager.getDefaultDataSubscriptionId());
|
||||
} else if (SubscriptionManager.ACTION_DEFAULT_SUBSCRIPTION_CHANGED.equals(action)) {
|
||||
mListener.onDefaultSubInfoChanged(SubscriptionManager.getDefaultSubscriptionId());
|
||||
} else if (TelephonyManager.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED.equals(action)) {
|
||||
mListener.onDefaultVoiceChanged(SubscriptionManager.getDefaultVoiceSubscriptionId());
|
||||
} else if (SubscriptionManager.ACTION_DEFAULT_SMS_SUBSCRIPTION_CHANGED.equals(action)) {
|
||||
mListener.onDefaultSmsChanged(SubscriptionManager.getDefaultSmsSubscriptionId());
|
||||
}
|
||||
}
|
||||
|
||||
public interface DefaultSubscriptionListener {
|
||||
default void onDefaultSubInfoChanged(int defaultSubId) {
|
||||
}
|
||||
default void onDefaultDataChanged(int defaultDataSubId) {
|
||||
}
|
||||
default void onDefaultVoiceChanged(int defaultVoiceSubId) {
|
||||
}
|
||||
default void onDefaultSmsChanged(int defaultSmsSubId) {
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user