I am an italian student from "Alma Mater Studiorum Bologna" university and I am writing a DTN aware application for Android.
I am having troubles on receiving external intents from the IBR-DTN deamon.
<receiver android:enabled="true" android:name=".service.EventReceiver" android:exported="true" android:permission="de.tubs.ibr.dtn.permission.DTN_SERVER">
<intent-filter>
<action android:name="de.tubs.ibr.dtn.intent.STATE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<action android:name="de.tubs.ibr.dtn.intent.REGISTRATION" />
<!-- IMPORTANT: The category has to be the package name of the app! -->
<category android:name="de.tubs.ibr.dtn.app" />
</intent-filter>
<intent-filter>
<action android:name="de.tubs.ibr.dtn.intent.RECEIVE" />
<!-- IMPORTANT: The category has to be the package name of the app! -->
<category android:name="de.tubs.ibr.dtn.app" />
</intent-filter>
</receiver>
ando so I did:
<receiver
android:enabled="true"
android:name=".DtnReceiver"
android:exported="true"
android:permission="de.tubs.ibr.dtn.permission.DTN_SERVER">
<intent-filter>
<action android:name="de.tubs.ibr.dtn.intent.STATE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<!-- Add intent filter for notification of incoming bundles -->
<intent-filter>
<action android:name="de.tubs.ibr.dtn.intent.RECEIVE" />
<category android:name="com.mir.dtnawareapp" />
</intent-filter>
<!-- Add intent filter for status reports generated by the DTN service -->
<intent-filter>
<action android:name="de.tubs.ibr.dtn.intent.STATUS_REPORT" />
<category android:name="com.mir.dtnawareapp" />
</intent-filter>
</receiver>
the DtnReceiver is the broadcast receiver copy-pasted from DTNexampleApp and it's located in the com.mir.dtnawareapp package.
The problem is tha the BroadcastReceiver (DtnReceiver) doesn't get triggered for incoming bundles.
So I tried to modify the DTNexampleApp changing the package from
de.tubs.ibr.dtn.ping
to
de.tubs.ibr.dtn.dtnawareapp
but when i come to change
<category android:name="de.tubs.ibr.dtn.ping" />
to
<category android:name="de.tubs.ibr.dtn.dtnawareapp" />
the BroadcastReceiver just doesn't get triggered anymore.
without changes it gets triggered, even with package name mismach (package name:de.tubs.ibr.dtn.dtnawareapp
, category:de.tubs.ibr.dtn.ping )
I can't figure out where i'm going wrong, I know this is probably an Android related issue, but I didin't find enough documentation on custom categories for intent filters.