コード例 #1
0
  @Override
  protected void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    mScreen = getPreferenceManager().createPreferenceScreen(this);
    setPreferenceScreen(mScreen);

    mDefaultTelephonyManager = MmsApp.getApplication().getTelephonyManager();
    mTelephonyManagers = new ArrayList<TelephonyManager>(2);
    mTelephonies = new ArrayList<ITelephony>(2);

    int phoneCount = mDefaultTelephonyManager.getPhoneCount();
    for (int i = 0; i < phoneCount; ++i) {
      TelephonyManager tm = MmsApp.getApplication().getTelephonyManager(i);
      mTelephonyManagers.add(tm);
      if (tm.hasIccCard() && tm.getSimState() == TelephonyManager.SIM_STATE_READY) {
        ITelephony telephony =
            ITelephony.Stub.asInterface(
                ServiceManager.getService(
                    PhoneFactory.getServiceName(Context.TELEPHONY_SERVICE, i)));
        mTelephonies.add(telephony);
      } else {
        mTelephonies.add(null); // just act as a place holder in the list
      }
    }

    Intent intent = getIntent();
    mMode = intent.getIntExtra(Mode.KEY, Mode.NIL);
    switch (mMode) {
      case Mode.MANAGE_MSG:
        handleManageSimMsg();
        break;
      case Mode.SMSC:
        handleSMSC();
        break;
      default:
        finish();
    }
  }