package com.android.settings.sim;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.telecom.PhoneAccountHandle;
import android.telecom.TelecomManager;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
import android.util.Log;
import com.android.settings.R;
import java.util.List;
/**
* Created by wjc on 19-5-25.
*/
public class SimCallSettingReciver extends BroadcastReceiver {
private static final String TAG = SimCallSettingReciver.class.getName();
@Override
public void onReceive(Context context, Intent intent) {
Log.d(TAG, "action = " + intent.getAction());
if (!context.getResources().getBoolean(R.bool.sim_call_ask_every_time_disable)) {
return;
}
if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
if (SubscriptionManager.from(context).getActiveSubscriptionInfoCount() > 1) {
setSim(context);
setCall(context);
}
}
}
private void setCall(Context context) {
try {
TelecomManager telecomManager = TelecomManager.from(context);
if (telecomManager.getUserSelectedOutgoingPhoneAccount() == null) {
Log.d(TAG, "setCall");
List<PhoneAccountHandle> phoneAccountsList = telecomManager.getCallCapablePhoneAccounts();
telecomManager.setUserSelectedOutgoingPhoneAccount(phoneAccountsList.get(0));
}
} catch (Exception e) {
e.printStackTrace();
}
}
private void setSim(Context context) {
try {
SubscriptionManager subscriptionManager = SubscriptionManager.from(context);
if (subscriptionManager.getDefaultSmsSubscriptionInfo() == null) {
Log.d(TAG, "setSim");
List<SubscriptionInfo> subInfoList = subscriptionManager.getActiveSubscriptionInfoList();
int subid = subInfoList.get(0).getSubscriptionId();
subscriptionManager.setDefaultSmsSubId(subid);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
anroid p 去掉短信,电话,每次询问项
最新推荐文章于 2023-03-16 18:02:28 发布