There was a recent thread that states that there is only one Application instance per-APK-per-process. Therefore, Application#onCreate() should be called only once, but I am getting an error that suggest it's called twice: once from the app, and once from a widget broadcast receiver. Is this expected behaviour? Or am I missing something? Details below:
I use ACRA for error reporting which checks if it is initialized only once with this code: public class ACRA { private static Application mApplication; public static void init(Application app) { if (mApplication != null) { throw new IllegalStateException("ACRA#init called more than once"); } ... } ... } (Full code here: http://code.google.com/p/acra/source/browse/trunk/acra/src/main/java/org/acra/ACRA.java ) My application class simply calls this from onCreate(): public class MyApplication extends Application { public void onCreate() { ACRA.init(this); } } Here's the error: RuntimeException: Unable to start receiver MyWidgetProvider: java.lang.RuntimeException: Unable to create application MyApplication: java.lang.IllegalStateException: ACRA#init called more than once Part of trace leading to this: at MyApplication.onCreate(MyApplication.java:77) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969) at android.app.LoadedApk.makeApplication(LoadedApk.java:476) at android.app.ActivityThread.handleReceiver(ActivityThread.java:1791) This is happening on Android 2.3.3 and 2.3.4. Any ideas? -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en