-
Notifications
You must be signed in to change notification settings - Fork 451
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Calling estimote service from remote service #55
Comments
You create and use BeaconManager only from your remote service? |
Hi Viktor, thx for the fast reply. Yes, BeaconManager is called only from my remote service. I use the estimote-sdk to scan for estimote-beacon in an android application plugin im currently developing. Is this clarifying the scenario? |
ScanPeriodData does not contain any field besides longs so there is no place there to set custom class loader. I'll dig deeper. |
So the problem is described in docs on (Message#obj)[http://developer.android.com/reference/android/os/Message.html#obj]: An arbitrary object to send to the recipient. When using Messenger to send the message across processes this can only be non-null if it contains a Parcelable of a framework class (not one implemented by the application). For other data transfer use setData(Bundle). I need to switch to setData method instead of using |
Fixed with (0.4.2)[https://github.com/Estimote/Android-SDK/releases/tag/0.4.2] release. Please give it a try and tell me how it works. |
Hey Wiktor, |
0.4.2 (June 24, 2014): Fixes Estimote/Android-Fleet-Management-SDK#55: it is safe to use library from remote process 0.4.1 (March 18, 2014) CAN BREAK BUILD: MonitoringListener returns list of beacons the triggered enter region event (Estimote/Android-Fleet-Management-SDK#18) Better messaging when BeaconManager cannot start service to scan beacons (Estimote/Android-Fleet-Management-SDK#25) Fixed bug in SDK when other beacons are around (Estimote/Android-Fleet-Management-SDK#27)
Hi Guys,
but now when i ran my app it is showing the error which is mentioned in this post.i'm using the latest(Estimote sdk) library .my log is as follows.. 11-17 12:09:43.069: E/Parcel(830): Class not found when unmarshalling: com.estimote.sdk.service.ScanPeriodData i'm following http://codeisanart.blogspot.fr/2014/06/estimotes-and-monitoring-practical_22.html this sample. Thanks. |
Which version if lib are you using. On Mon, Nov 17, 2014 at 7:53 AM, Harishy notifications@github.com wrote:
|
it's 0.4.3 version of estimote sdk and i tried with 0.4.2 also got same exception. |
There can be some problem with that tutorial that you are using. Please just use our examples without extra layer of service (in this case EstimoteService). |
In the application level it is not working so i have used that service.And also i have posted my issue.. |
Hi,
I try to run the estimote service code out of a custom remote service and got
stuck in the following exception:
E/Parcel﹕ Class not found when unmarshalling: com.estimote.sdk.service.ScanPeriodData
java.lang.ClassNotFoundException: com.estimote.sdk.service.ScanPeriodData
at java.lang.Class.classForName(Native Method)
at java.lang.Class.forName(Class.java:204)
at android.os.Parcel.readParcelableCreator(Parcel.java:2124)
at android.os.Parcel.readParcelable(Parcel.java:2088)
at android.os.Message.readFromParcel(Message.java:511)
at android.os.Message.access$000(Message.java:32)
at android.os.Message$1.createFromParcel(Message.java:468)
at android.os.Message$1.createFromParcel(Message.java:465)
at android.os.IMessenger$Stub.onTransact(IMessenger.java:51)
at android.os.Binder.execTransact(Binder.java:388)
at dalvik.system.NativeStart.run(Native Method)
After some research i found out, that there is a problem with the Android ClassLoader which is responsible for handling Parcelables but isn`t aware of custom Parcelables, that have been send via messages (like i suggest it is done in the estimote SDK between BeaconManger and BeaconService).
Apparently this can be solved by explicitly setting the classloader to the message data.
Think this problem is a not neccessary restriction in the usage of the estimote sdk.
The text was updated successfully, but these errors were encountered: