Is it possible to define a broadcast receiver as an inner class in manifest file?
android, android-manifest, broadcastreceiver
Solution
Yes, it is possible.
The receiver android:name attribute should look like `.path.to.class.MyClass$MyInnerClass`
Problem
I want to create a broadcast receiver as an inner class in my main activity. But I have problems defining the broadcast receiver in manifest xml file, because android can't find it. Code: ``` public class MyActivity extends Activity{ ... public class Receiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { .... } } ... } ``` Manifest: ``` <receiver android:name=".org.danizmax.myapp.MyActivity$Receiver" android:enabled="true"> <intent-filter> <action android:name="org.danizmax.myapp.BROADCAST_INITIAL_DATA"></action> </intent-filter> </receiver> ``` I tried with: - .org.danizmax.myapp.MyActivity$Receiver - org.danizmax.myapp.MyActivity$Receiver - .MyActivity$Receiver - .Receiver I saw others also having similar problems, but did not find any answers. So is it possible? If not, what's better way to use broadcast receivers? Thanks!