BroadcastReceiver has no default constructor in android manifest
is there a way around this?
No. Android has no idea how to invoke any other constructor, or what values to pass to that constructor.
this class is also a singleton class
That is not possible. Android will create a new instance of your manifest-registered BroadcastReceiver
for every broadcast that it receives.
but there has to be a simpler method right?
Yes: do not make the BroadcastReceiver
a singleton. Make some other class be the singleton, that the BroadcastReceiver
uses.