|  |  | 
 |  |  | import android.nfc.NfcAdapter; | 
 |  |  | import android.os.Bundle; | 
 |  |  |  | 
 |  |  | import com.dayu.baselibrary.tools.nfc.NfcCommonData; | 
 |  |  | import com.dayu.baselibrary.tools.nfc.HuaZhiNfcReadHepler; | 
 |  |  | import com.dayu.baselibrary.utils.ModelUtils; | 
 |  |  | import com.dayu.baselibrary.utils.TipUtil; | 
 |  |  | import com.pos.device.picc.PiccReader; | 
 |  |  | import com.pos.device.picc.PiccReaderCallback; | 
 |  |  |  | 
 |  |  | /** | 
 |  |  |  * author: zuo | 
 |  |  | 
 |  |  | public abstract class BaseNfcActivity extends BaseActivity { | 
 |  |  |     protected NfcAdapter mNfcAdapter; | 
 |  |  |     private PendingIntent mPendingIntent; | 
 |  |  |     public static int adapterType = NfcCommonData.defaultType; | 
 |  |  |     public static int adapterType = ModelUtils.defaultType; | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     protected void onNewIntent(Intent intent) { | 
 |  |  |         super.onNewIntent(intent); | 
 |  |  |         switch (adapterType) { | 
 |  |  |             case NfcCommonData.defaultType: | 
 |  |  |             case ModelUtils.defaultType: | 
 |  |  |                 onNfcBack(intent); | 
 |  |  |                 break; | 
 |  |  |         } | 
 |  |  | 
 |  |  |     @Override | 
 |  |  |     protected void onCreate(Bundle savedInstanceState) { | 
 |  |  |         super.onCreate(savedInstanceState); | 
 |  |  |         //判断是哪个机型 | 
 |  |  |         try { | 
 |  |  |             Class.forName("com.pos.device.config.DevConfig"); | 
 |  |  |             adapterType = NfcCommonData.HuaZhiRongHai; | 
 |  |  |         } catch (ClassNotFoundException e) { | 
 |  |  |             adapterType = NfcCommonData.defaultType; | 
 |  |  |         switch (ModelUtils.getModelType()) { | 
 |  |  |             case ModelUtils.defaultType: | 
 |  |  |             case ModelUtils.ShangMiType: | 
 |  |  |                 adapterType = ModelUtils.defaultType; | 
 |  |  |                 break; | 
 |  |  |             case ModelUtils.HuaZhiRongHaiType: | 
 |  |  |                 adapterType = ModelUtils.HuaZhiRongHaiType; | 
 |  |  |                 PiccReader.getInstance().startSearchCard(HuaZhiNfcReadHepler.TIMEOUT, new PiccReaderCallback() { | 
 |  |  |                     @Override | 
 |  |  |                     public void onSearchResult(int result, int cardType) { | 
 |  |  |                         if (result == PiccReaderCallback.SUCCESS) { | 
 |  |  |                             switch (cardType) { | 
 |  |  |                                 //以下为M1卡 | 
 |  |  |                                 case PiccReader.MIFARE_ONE_S50: | 
 |  |  |                                 case PiccReader.MIFARE_ONE_S70: | 
 |  |  |                                     onNfcBack(null); | 
 |  |  |                                     break; | 
 |  |  |                             } | 
 |  |  |                         } | 
 |  |  |                     } | 
 |  |  |                 }); | 
 |  |  |                 break; | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     protected void onDestroy() { | 
 |  |  |         super.onDestroy(); | 
 |  |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 检测工作,判断设备的NFC支持情况 | 
 |  |  |      * |