fit-samples icon indicating copy to clipboard operation
fit-samples copied to clipboard

Error: Fitness api can't request data for big time intervals [E/JavaBinder: !!! FAILED BINDER TRANSACTION !!!]

Open Hesowcharov opened this issue 4 years ago • 5 comments

Hello! My google fit app doesn't work for 2 months. I started to debug the application and I was able to find these errors from adb logcat:

2020-11-22 17:04:48.804 16111-16143/? E/JavaBinder: !!! FAILED BINDER TRANSACTION !!!  (parcel size = 1330200)
E/FitAndroidFutures: While reading data with request: DataReadRequest{bucket by intervals: active_minutes heart_minutes calories.expended distance.delta d:step_count.delta:gms:estimated_steps (2020-11-22 00:00:00 - 2020-11-22 17:04:41) +server}
    him: java.lang.IllegalStateException: hrb: 8: 
        at hii.a(Unknown Source:4)
        at qei.a(PG:2)
        at rhf.e(Unknown Source:2)
        at rhh.run(PG:11)
        at rjp.execute(PG:1)
        at rhv.r(PG:1)
        at rhv.n(PG:11)
        at rhv.l(PG:5)
        at rlm.run(PG:10)
...

Please pay attention to the line "FAILED BINDER TRANSACTION !!! (parcel size = 1330200" - google fit can't get the data from the android service because the response is too large to be returned through IPC.

Also, I'm developing an application that uses the fitness api and also I noticed that gms Task api doesn't return anything and even doesn't call "onComplete" listener in similar cases when google fit service can't deliver the result to a requester. I think a reading task should be completed anyways if Binder fails for some reason.

Hesowcharov avatar Nov 22 '20 16:11 Hesowcharov

Hi, i'm facing the same issue. The api cannot handle large runs. Did you find any solutions?

krobert avatar Feb 19 '21 13:02 krobert

Hi, I'm also facing the same issue, My google fit app have lots of data over the last 3 months. I tried to get these all data used 'setTimeRange' in DataReadRequest, which returns nothing, I mean the data between the range is nearly 1800(approx), and there is no exception printed in logs, also any callbacks not triggered. So we struggle to get total data from GoogleFit. I think the large data responses don't parsable. I request a pagination functionality from the server and the problem may be solved. Please file the issue and find any solution! Thankyou);-

braver-tool avatar Dec 29 '21 07:12 braver-tool

Hello! My google fit app doesn't work for 2 months. I started to debug the application and I was able to find these errors from adb logcat:

2020-11-22 17:04:48.804 16111-16143/? E/JavaBinder: !!! FAILED BINDER TRANSACTION !!!  (parcel size = 1330200)
E/FitAndroidFutures: While reading data with request: DataReadRequest{bucket by intervals: active_minutes heart_minutes calories.expended distance.delta d:step_count.delta:gms:estimated_steps (2020-11-22 00:00:00 - 2020-11-22 17:04:41) +server}
    him: java.lang.IllegalStateException: hrb: 8: 
        at hii.a(Unknown Source:4)
        at qei.a(PG:2)
        at rhf.e(Unknown Source:2)
        at rhh.run(PG:11)
        at rjp.execute(PG:1)
        at rhv.r(PG:1)
        at rhv.n(PG:11)
        at rhv.l(PG:5)
        at rlm.run(PG:10)
...

Please pay attention to the line "FAILED BINDER TRANSACTION !!! (parcel size = 1330200" - google fit can't get the data from the android service because the response is too large to be returned through IPC.

Also, I'm developing an application that uses the fitness api and also I noticed that gms Task api doesn't return anything and even doesn't call "onComplete" listener in similar cases when google fit service can't deliver the result to a requester. I think a reading task should be completed anyways if Binder fails for some reason.

No worries

Bethany91live avatar Mar 27 '23 08:03 Bethany91live

@lawsuit

Bethany91live avatar Mar 27 '23 08:03 Bethany91live