Name of affected component: Mobile Tracking
Name of related library and version: Android, Play Services Analytics 7.0.0
Issue summary:
Reporting fails sometimes when done in the service method
WearableListenerService.onMessageReceived(). The following call causes the
exception:
tracker.send(eventBuilder.build());
Steps to reproduce issue:
Not reproducible, seen on crash reporting tool.
Expected output:
Event sent to Google Analytics
Actual results:
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextEntry(HashMap.java:806)
at java.util.HashMap$EntryIterator.next(HashMap.java:843)
at java.util.HashMap$EntryIterator.next(HashMap.java:841)
at java.util.AbstractMap.putAll(AbstractMap.java:380)
at java.util.HashMap.putAll(HashMap.java:522)
at com.google.android.gms.analytics.Tracker.zza()
at mypackage.WearDataListenerService.onMessageReceived(WearDataListenerService.java)
at com.google.android.gms.wearable.WearableListenerService$zza$2.run()
at android.os.Handler.handleCallback(Handler.java:733)
Notes:
The Tracker is shared between multiple classes/threads as described here:
https://developers.google.com/analytics/devguides/collection/android/v4/
Due to the examples I consider it as thread safe.
Original issue reported on code.google.com by peter.ro...@gmail.com on 5 Jul 2015 at 2:27
Original issue reported on code.google.com by
peter.ro...@gmail.com
on 5 Jul 2015 at 2:27