Tôi có một lớp học, tạo ra sự kết nối với NFC và hai hoạt động. Cả hai đều tạo ra một đối tượng của lớp đó để họ có thể kết nối với NFC. Trước đó nó đã làm việc bằng cách nào đó nhưng bây giờ tôi đã có vấn đề - ứng dụng của tôi không làm bất cứ điều gì onNewIntent, ngay cả trên các hoạt động đầu tiên. Thay vào đó, tôi có thể thấy "Thẻ mới được thu thập" từ ứng dụng tích hợp được gọi là "Thẻ" (Nexus S)."Thẻ mới được thu thập" thay vì đọc thẻ của ứng dụng - NFC android
Tôi nên làm gì?
lớp:
public NFCForegroundUtil(Activity activity)
{
super();
this.activity = activity;
mAdapter = NfcAdapter.getDefaultAdapter(activity
.getApplicationContext());
mPendingIntent = PendingIntent.getActivity(activity, 0, new Intent(
activity, activity.getClass())
.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP), 0);
IntentFilter ndef = new IntentFilter(NfcAdapter.ACTION_TAG_DISCOVERED);
IntentFilter ndef2 = new IntentFilter(NfcAdapter.ACTION_NDEF_DISCOVERED);
IntentFilter ndef3 = new IntentFilter(NfcAdapter.ACTION_TECH_DISCOVERED);
try
{
ndef2.addDataType("*/*");
}
catch (MalformedMimeTypeException e)
{
throw new RuntimeException("fail", e);
}
mFilters = new IntentFilter[] {ndef, ndef2, ndef3 };
mTechLists = new String[][] { new String[] {
// android.nfc.tech.NfcV.class.getName(),
android.nfc.tech.NfcA.class.getName(),
android.nfc.tech.IsoDep.class.getName() } };
mAdapter.enableForegroundDispatch(this, mPendingIntent, mFilters, mTechLists);
}
hoạt động 1:
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
nfcForegroundUtil = new NFCForegroundUtil(this);
}
@Override
protected void onNewIntent(Intent intent)
{
super.onNewIntent(intent);
Intent i = new Intent(this, NfcDisplayLabelActivity2.class);
startActivity(i);
}
Bạn đã làm cho nó hoạt động tốt như thế nào? –
Nếu bạn vẫn gặp sự cố, hãy xem câu trả lời của tôi. – MagicSeth
Thực sự không có bất kỳ dữ liệu hữu ích nào trong câu trả lời này. Chỉ cần nói "oh, tôi đã sửa ứng dụng của mình và giờ nó hoạt động" không nói cho cộng đồng biết bất cứ điều gì về _how_ ứng dụng đã được sửa và _what_ ban đầu bạn đã làm sai. – jwir3