I have received a few crash reports and I am unsure what has cause them.
It is only in a recent update that this has started happening. This may mean that it just didn't happen before or I introduced it. The only thing to do with the network is register for a permission to check the network in the Android Manifest.
Anyway I hope you can point me in the direction. Here is the crash report.
java.lang.RuntimeException: Error receiving broadcast Intent { act=android.net.conn.CONNECTIVITY_CHANGE flg=0x10000000 (has extras) } in maps.z.bz#405d7d40
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:722)
at android.os.Handler.handleCallback(Handler.java:587)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:3691)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalArgumentException: Receiver not registered: maps.z.bz#405d7d40
at android.app.LoadedApk.forgetReceiverDispatcher(LoadedApk.java:610)
at android.app.ContextImpl.unregisterReceiver(ContextImpl.java:853)
at android.content.ContextWrapper.unregisterReceiver(ContextWrapper.java:331)
at maps.z.bz.onReceive(Unknown Source)
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:709)
... 9 more
This is happening if you're using the Maps V2 api with the old (revision 4) library and the new (3.0.25) version of the Google Play services.
It seems that Google broke the backward compatibility so if people upgrade their Google Play services the app released with the old library will be broken.
You have two possibilities at this point:
Release a new version of your app and update to the new library
Revert back to the old maps
I've raised a ticket and Google already acknowledged it:
http://code.google.com/p/gmaps-api-issues/issues/detail?id=5025&thanks=5025&ts=1362047877
Please star it to get a higher priority from Google.
Related
I noticed a huge difference in the number of crashes reported by Crashlytics (Fabric) and Google Play Developer Console. Also we are using Firebase, it also shows a number similar to Crashlytics. However, there is a huge difference in developer console.
This led me to investigate all the crash report details one by one. Then I found a specific crash which happened many many times. This crash is reported only in developer console. However, it does not exist in Crashlytics and Firebase. Developer console provides a short stacktrace of the exception. Here it is.
java.lang.RuntimeException:
at android.app.ActivityThread.installProvider(ActivityThread.java:5196)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4799)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4683)
at android.app.ActivityThread.access$1400(ActivityThread.java:168)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1389)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5493)
at java.lang.reflect.Method.invokeNative(Native Method:0)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1209)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1025)
at dalvik.system.NativeStart.main(Native Method:0)
Caused by: java.lang.ClassNotFoundException:
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:64)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
at android.app.ActivityThread.installProvider(ActivityThread.java:5181)
As you can see, it doesn't tell me which class is not found in the stacktrace. So my hands are tied a little bit here.
Might this crash be happening before the singleton application class is instantiated? Might be happening before Crashlytics and Firebase instances are created?
By the way, this exception is happening only in Android 4.2, 4.3 and 4.4 according to the developer console reports.
Anybody ever experienced this issue, or any ideas? Thanks in advance.
I've an Android app built with trigger.io, using Parse push notifications.
App is deployed to google play and push notifications have been working fine. Recently re-built and deployed to google play a new version of the app, with Forge platform version 1.4.29.
Since then I have been receiving the following crash reports through Google Play:
java.lang.RuntimeException: Unable to start receiver com.parse.ParseBroadcastReceiver: android.content.ReceiverCallNotAllowedException: IntentReceiver components are not allowed to register to receive intents
at android.app.ActivityThread.handleReceiver(ActivityThread.java:2236)
at android.app.ActivityThread.access$1500(ActivityThread.java:130)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1271)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4745)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.content.ReceiverCallNotAllowedException: IntentReceiver components are not allowed to register to receive intents
at android.app.ReceiverRestrictedContext.registerReceiver(ContextImpl.java:125)
at android.app.ReceiverRestrictedContext.registerReceiver(ContextImpl.java:119)
at com.parse.ParseCommandCache.<init>(ParseCommandCache.java:132)
at com.parse.Parse.getCommandCache(Parse.java:450)
at com.parse.ParseObject.saveEventually(ParseObject.java:1022)
at com.parse.ParseInstallation.saveEventually(ParseInstallation.java:170)
at com.parse.ParsePushRouter.saveEventually(ParsePushRouter.java:92)
at com.parse.ParsePushRouter.ensureStateIsLoaded(ParsePushRouter.java:208)
at com.parse.ParsePushRouter.hasRoutes(ParsePushRouter.java:122)
at com.parse.PushService.startServiceIfRequired(PushService.java:129)
at com.parse.ParseBroadcastReceiver.onReceive(ParseBroadcastReceiver.java:19)
at android.app.ActivityThread.handleReceiver(ActivityThread.java:2229)
... 10 more
I have tested the app thoroughly on the following Android handsets and not been able to replicate the bug myself.
Samsung Galaxy Nexus
Samsung Galaxy S2
Samsung Galaxy S
Can someone suggest what is going wrong here and how I can fix it with Trigger.io?
This issue was fixed in Forge v1.4.37, which included an update to the Parse Android SDK v1.2.3.
Trigger.io release ntes
Bug report on Parse Q&A
Recently I had this problem and nothing to do with Parse version. Issue was the initializing of Parse was done on Activity instead of Application. The Broadcast Receiver can start before the Activity and writing a custom Application class and initializing Parse in onCreate of that helps.
public class MyApplication extends Application {
#Override
public void onCreate() {
super.onCreate();
//Initialize Parse here
}
}
<application
android:name=".MyApplication"
...>
.
.
.
</application>
This problem is resolved in Forge v1.4.32:
http://docs.trigger.io/en/v1.4/release-notes.html#v1-4-32
Some users have reported this error via the android error reporting popup thing but I have no idea what causes it. I googled but I can't find any good leads.
Anyone know what causes this error?
java.lang.RuntimeException: Unable to create BackupAgent
com.berlin.mobson.view.OsmandBackupAgent:
java.lang.NullPointerException at
android.app.ActivityThread.handleCreateBackupAgent(ActivityThread.java:2331)
at android.app.ActivityThread.access$2400(ActivityThread.java:134) at
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1358)
at android.os.Handler.dispatchMessage(Handler.java:99) at
android.os.Looper.loop(Looper.java:137) at
android.app.ActivityThread.main(ActivityThread.java:4856) at
java.lang.reflect.Method.invokeNative(Native Method) at
java.lang.reflect.Method.invoke(Method.java:511) at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774) at
dalvik.system.NativeStart.main(Native Method) Caused by:
java.lang.NullPointerException at
android.app.LoadedApk.initializeJavaContextClassLoader(LoadedApk.java:377)
at android.app.LoadedApk.getClassLoader(LoadedApk.java:320) at
android.app.ActivityThread.handleCreateBackupAgent(ActivityThread.java:2301)
... 10 more
My App is a Place finder that uses google Places api to get search results. (no the library, just the json urls)
osmand is
Mobile Map Viewing & Navigation for Offline and Online OSM Maps.
The source code is available here Osmand
May be you can remove osmand from the device and then debug the application using above code available.
Thanks
Looks like their BackupAgent implementation is having some problems. A temporary solution is unchecking "Back up my data" in settings->backup & reset. Long term the NPE has to be tracked down in the BackupAgent.
My app uses ACRA for error reporting, and I've got a couple of reports from my device with the error: Can only use lower 16 bits for requestCode.. Google shows this error occurring when using startActivityForResult, but I've searched my code a few times and I"m not calling that anywhere.
I'm pretty confused and am wondering how this is impacting users (interestingly enough, the Crash Reports beta doesn't show any errors at all).
Anyone else run into this?
java.lang.RuntimeException: Unable to resume activity {com.myapp/com.myapp.MyActivity}:
java.lang.IllegalArgumentException: Can only use lower 16 bits for requestCode
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2120)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:957)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3683)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalArgumentException: Can only use lower 16 bits for requestCode
at android.support.v4.app.g.startActivityForResult(SourceFile:690)
Can somebody help me on this?
RequestCodes can only be a max of 0xffff (65535). So you are probably calling startActivityForResult(intent, REQUEST_CODE); and REQUEST_CODE is greater than 65535.
Solutions:
make request code smaller
override startActivityForResult to handle your larger request codes (which will mostly come down to a hack that truncates or some other manipulation to push your request code within the bounds) In the linked answer (from above) there is the code in startActivityForResult that is the issue you're running into by Raghav Sood.
We recently introduced OAuth login in our app. This means using a WebView to authenticate the user, and an AsyncTask to do necessary REST calls afterwards.
Unfortunately, after introducing this login method, we're getting reports of the app force closing. This seems to be related to other AsyncTasks that are executed after the login, but the stack traces does unfortunately not tell us much:
java.lang.IllegalStateException: Could not execute method of the activity
at android.view.View$1.onClick(View.java:3100)
at android.view.View.performClick(View.java:3627)
at android.view.View$PerformClick.run(View.java:14329)
at android.os.Handler.handleCallback(Handler.java:605)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4511)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:980)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at android.view.View$1.onClick(View.java:3095)
... 11 more
Caused by: java.lang.NoClassDefFoundError: android/os/AsyncTask
at com.foo.bar.TransmissionActivity.transmit(TransmissionActivity.java:44)
... 14 more
We managed to fix the error above by using RoboAsyncTask (from RoboGuice), instead of AsyncTask from the Android SDK, but we have other activities that use WebViews. WebView apparently uses AsyncTask somewhere in its call stack, and errors similar the one shown above (Caused by: java.lang.NoClassDefFoundError: android/os/AsyncTask) have started to show in our error logs.
The error happens on different devices, and different Android versions, with no apparent pattern. We have tried to reproduce the error ourselves, without any luck.
Any ideas?
It might be an issue with the build setup. (Build order of src/gen has been known to cause some issues, the libs folder for the compat library being called lib has caused some issues for me on new sdk versions).
To see if it is create a new project (in eclipse, since that's 100% android official). Add a webview and an asynctask and then do a diff on the project with your project. Ignoring src/gen/res. Hopefully you'll find that the src/gen are built in the wrong order or something like that.
~ Anders