0

我设置了一个前台调度,例如:

    mAdapter = NfcAdapter.getDefaultAdapter(this);
mPendingIntent = PendingIntent.getActivity(this, 0, new Intent(this,
        getClass()).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP), 0);
mFilters = new IntentFilter[] { new IntentFilter(
        NfcAdapter.ACTION_TECH_DISCOVERED) };

// Setup a tech list for all NfcF tags
mTechLists = new String[][] { new String[] { MifareClassic.class
        .getName() } };

我有:

@Override
public void onResume() {
super.onResume();
mAdapter.enableForegroundDispatch(this, mPendingIntent, mFilters,
        mTechLists);
}

但是当屏幕旋转前台调度停止调用 public void onNewIntent(Intent intent)。

我做错了什么?

4

1 回答 1

0

也许您mPendingIntent包含对您的 Activity 不再存在的先前实例化的引用。重新创建 PendingIntent 并且事情可能会开始按您的预期工作。

于 2013-05-27T08:28:15.157 回答