我有一个Activity1。我想在Activity1的类中调用resolveIntent方法。 当我点击activity1中的一个按钮时,执行以下代码:
Intent IntObj=new Intent();
IntObj.setAction(NfcAdapter.ACTION_TECH_DISCOVERED); IntObjputExtra(NfcAdapter.EXTRA_TAG,getIntent().getParcelableExtra
(NfcAdapter.EXTRA_TAG));
appletcommunication appletclass=new appletcommunication(IntObj);
if(!appletclass.ReadyConnection)
return;//nfc communication not erady
在课堂上有这段代码
public class appletcommunication {
private static final String TAG = null;
//private NfcAdapter mAdapter = null;
static IsoDep myTag;
static byte AppletCLA=(byte)0x00;
public static boolean ReadyConnection;
public appletcommunication(Intent intent) {
resolveIntent( intent);
}
public Boolean resolveIntent(Intent intent)
{
Boolean bresult=true;
String action = intent.getAction();
if (NfcAdapter.ACTION_TAG_DISCOVERED.equals(action) || NfcAdapter.ACTION_TECH_DISCOVERED.equals(action) || NfcAdapter.ACTION_NDEF_DISCOVERED.equals(action))
{
Parcelable tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
final Tag t = (Tag) tag;
myTag = IsoDep.get(t);
if (myTag != null)
{
if (!myTag.isConnected())
{
try {
myTag.connect();
myTag.setTimeout(5000);
}
catch (IOException e)
{
e.printStackTrace();
bresult=false;
}
}
if (myTag.isConnected())
{
String szATR = null;
try {
szATR = "kkk";
}
catch (Exception e)
{
szATR = "CARD DETECTED ";
bresult=false;
}
}
}
else
bresult=false;
}
else
bresult=false;
return bresult;
}
1 - 但此行标记为null。 Parcelable tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
先谢谢
答案 0 :(得分:-1)
Please get all methods help about getParcelableExtra from below mentioned URL
http://www.codota.com/android/methods/android.content.Intent/getParcelableExtra