package com.example.opwer.myfinal;
import android.app.Activity;
import android.app.PendingIntent;
import android.content.Intent;
import android.nfc.NfcAdapter;
import android.nfc.Tag;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class tagActivity extends Activity {
private NfcAdapter nfcAdapter;
private PendingIntent pendingIntent;
private TextView tagDesc;
public String str;
private String id1 = "04563E52274980";
private String id2 = "04463E52274980";
private String id3 = "04423E52274980";
private Intent intent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tag);
tagDesc = (TextView)findViewById(R.id.tagDesc);
nfcAdapter = NfcAdapter.getDefaultAdapter(this);
// Intent intent = new Intent(this, ImgActivity.class);
intent = new Intent(this, ImgActivity.class).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
pendingIntent = PendingIntent.getActivity(this, 0, intent, 0);
if(str == id1 || str == id2 || str == id3){
startActivity(intent);
}
}
@Override
protected void onPause() {
if (nfcAdapter != null) {
nfcAdapter.disableForegroundDispatch(this);
}
super.onPause();
}
@Override
protected void onResume() {
super.onResume();
if (nfcAdapter != null) {
nfcAdapter.enableForegroundDispatch(this, pendingIntent, null, null);
}
}
@Override
protected void onNewIntent(Intent intent) {
//super.onNewIntent(intent);
Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
if (tag != null) {
byte[] tagId = tag.getId();
str = toHexString(tagId);
tagDesc.setText("TagID: " + str);
}
}
public static final String CHARS = "0123456789ABCDEF";
public String toHexString(byte[] data) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < data.length; ++i) {
sb.append(CHARS.charAt((data[i] >> 4) & 0x0F))
.append(CHARS.charAt(data[i] & 0x0F));
}
return sb.toString();
}
}
이런식으로 짰는데 ... 액티비티 전환이 되긴 하는데 아이디값을 판별못하는것같아요 .. 다른 아이디값의 NFC를 태깅해도 넘어가더라구요..
어떻게 하면 아이디값에 따라 다른 액티비티를 전환할 수 있을까요?