@Override
 protected void onResume() {
   if (FeatureOption.MTK_GEMINI_SUPPORT) {
     mGeminiPhone.getPreferredNetworkTypeGemini(
         mHandler.obtainMessage(EVENT_QUERY_NETWORKMODE_DONE), mSimType);
   } else {
     mPhone.getPreferredNetworkType(mHandler.obtainMessage(EVENT_QUERY_NETWORKMODE_DONE));
   }
   super.onResume();
 }
  @Override
  protected void onResume() {
    super.onResume();

    // upon resumption from the sub-activity, make sure we re-enable the
    // preferences.
    getPreferenceScreen().setEnabled(true);
    if (mGsmUmtsOptions != null) mGsmUmtsOptions.enableScreen();

    if (getPreferenceScreen().findPreference(BUTTON_PREFERED_NETWORK_MODE) != null) {
      mPhone.getPreferredNetworkType(
          mHandler.obtainMessage(MyHandler.MESSAGE_GET_PREFERRED_NETWORK_TYPE));
    }
  }
 public void handleMessage(Message msg) {
   AsyncResult ar;
   switch (msg.what) {
     case EVENT_QUERY_NETWORKMODE_DONE:
       ar = (AsyncResult) msg.obj;
       if (ar.exception == null) {
         int type = ((int[]) ar.result)[0];
         Xlog.d(TAG, "Get Preferred Type " + type);
         if (mModemType == MODEM_FDD) {
           switch (type) {
             case WCDMA_PREFERRED:
               mPreferredNetworkSpinner.setSelection(WCDMA_PREFERRED_INDEX, true);
               break;
             case GSM_ONLY:
               mPreferredNetworkSpinner.setSelection(GSM_ONLY_INDEX, true);
               break;
             case WCDMA_ONLY:
               mPreferredNetworkSpinner.setSelection(WCDMA_ONLY_INDEX, true);
               break;
             case GSM_WCDMA_AUTO:
               mPreferredNetworkSpinner.setSelection(GSM_WCDMA_AUTO_INDEX, true);
               break;
             default:
               break;
           }
         } else {
           switch (type) {
             case WCDMA_PREFERRED:
               // "CDMA preferred" is the same with "Auto" on TD
               mPreferredNetworkSpinner.setSelection(GSM_WCDMA_AUTO_INDEX_TD, true);
               break;
             case GSM_ONLY:
               mPreferredNetworkSpinner.setSelection(GSM_ONLY_INDEX_TD, true);
               break;
             case WCDMA_ONLY:
               mPreferredNetworkSpinner.setSelection(WCDMA_ONLY_INDEX_TD, true);
               break;
             case GSM_WCDMA_AUTO:
               mPreferredNetworkSpinner.setSelection(GSM_WCDMA_AUTO_INDEX_TD, true);
               break;
             default:
               break;
           }
         }
       } else {
         Toast.makeText(
                 NetworkSelectActivity.this,
                 R.string.query_preferred_fail,
                 Toast.LENGTH_SHORT)
             .show();
       }
       break;
     case EVENT_SET_NETWORKMODE_DONE:
       ar = (AsyncResult) msg.obj;
       if (ar.exception != null) {
         if (FeatureOption.MTK_GEMINI_SUPPORT) {
           mGeminiPhone.getPreferredNetworkTypeGemini(
               obtainMessage(EVENT_QUERY_NETWORKMODE_DONE), mSimType);
         } else {
           mPhone.getPreferredNetworkType(obtainMessage(EVENT_QUERY_NETWORKMODE_DONE));
         }
       }
       break;
     default:
       break;
   }
 }
 private void checkNetworkType() {
   Elog.i(TAG, "TcheckNetworkType");
   mPhone.getPreferredNetworkType(mATCmdHander.obtainMessage(EVENT_QUERY_PREFERRED_TYPE_DONE));
 }