title: BroadcastReceiver has no default constructor in android manifest
body: <p>I am trying to register a class that extends BroadcastReceiver as a receiver in Android manifest. I have no trouble registering them but the problem occurs because of the class does not have an empty constructor.</p>
  
  <ol>
  <li>I don't understand why BroadcastReceiver requires an empty constructor, is there a way around this?</li>
  <li>I could make a public empty constructor in my class but the problem is, this class is also a singleton class. Which means I do not want this class to use the empty constructor! There is an obvious conflict here, I could just write an empty constructor and trust users do not ever use it by writing documentation but there has to be a simpler method right?</li>
  </ol>
  
  <p>TLDR; How to implement a class that is a broadcast receiver (requires empty constructor to register it in android manifest) but at the same time, be a singleton class or a class that denies users access to the default constructor. (I've tried making the default constructor protected but that does not solve the problem as the manifest cannot register the receiver)</p>