Como simular o toque da tag de outro aplicativo

Quero simular o evento de toque para meu aplicativo. Meu manifesto é como

<activity
    android:name=".activity.TagActivity_"
    android:label="@string/app_name"
    android:launchMode="singleTask"
    android:noHistory="true"
    android:permission="android.permission.NFC"
    android:screenOrientation="portrait" >

    <intent-filter>
        <action android:name="android.nfc.action.TECH_DISCOVERED" />
    </intent-filter>
    <meta-data
        android:name="android.nfc.action.TECH_DISCOVERED"
        android:resource="@xml/nfc_tech_filter" />

    <intent-filter>
        <action android:name="android.nfc.action.NDEF_DISCOVERED" />
        <category android:name="android.intent.category.DEFAULT" />
        <data
            android:host="ext"
            android:pathPrefix="/abc:d"
            android:scheme="vnd.android.nfc" />
    </intent-filter>
    <intent-filter>
        <action android:name="android.nfc.action.NDEF_DISCOVERED"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <data android:mimeType="text/plain" />
    </intent-filter>
</activity>

Pergunta (1): quero chamar meu aplicativo de outro aplicativo. Como faço isso? Meu código atual é como:

try {
    final Intent intent = new Intent(NfcAdapter.ACTION_NDEF_DISCOVERED);
    NdefMessage ndefMessage = buildNdefMessage(getTagData());
    intent.putExtra(NfcAdapter.EXTRA_NDEF_MESSAGES, new NdefMessage[] {ndefMessage});
    startActivity(intent);
} catch (Exception e) {
    e.printStackTrace();
}

Mas isso não está invocando meu aplicativo. provavelmente porque o tipo de dados e o prefixo do caminho não correspondem. Como passo isso ao iniciar a atividade?

Pergunta (2): Para fins temporários, eu adicionei

<intent-filter>
    <action android:name="android.nfc.action.NDEF_DISCOVERED" />
    <category android:name="android.intent.category.DEFAULT" />
</intent-filter>

para fazê-lo funcionar e meu aplicativo é invocado. Mas, ao ler a tag, verifico o tipo de tag e, como não estou passando nenhum tipo de tag, meu aplicativo trava. Então, como eu crio uma instância de tag? Não há construtor para isso. Quero dizer, não posso fazerNdef ndef = new Ndef();. E eu basicamente não tenho uma etiqueta, então não possoNdef ndef = Ndef.get(tag);.

questionAnswers(1)

yourAnswerToTheQuestion