Getting raw ppg - client binder is null error

I have been granted access to the Samsung Health SDK and have been working on it to get raw ppg signal from galaxy watch 4.

However, I have encountered an error message stating, “Client binder is null.” I am uncertain about the root cause of this error and would greatly appreciate your guidance in resolving it.

I have considered whether this issue might be related to developing the app using Kotlin as the primary programming language.

thank you for your help

What do you mean by Samsung Health SDK
Do you mean the Privileged Health SDK which is for Galaxy Watch 4 and newer running Wear 3 or new
or the old
Samsung Health SDK for Android
That was for Samsung Galaxy Watch 3 or older with Tizen Operating system.

And what watch are you using?

If you are using Watch 4 and newer you may manually have to give permission on the watch.

Knowing that I can help direct you to the proper documentation or support.

Ron
Samsung Developer Relations

thank you for your reply.
yes, the sdk that I am using is [samsung-priviledged-health-sdk-tracking-service_v1.1.0]

we are developing with galaxy watch 4 and 5.

what do you mean by manually giving permission on the watch?
can you give me more detail please

Thanks

@bambit

what do you mean by manually giving permission on the watch?

I know a little about the old Heath SDK and a lot less about the Privileged SDK but for my Pro 4 in Settings → Samsung Health
Scroll down and it has
Share data with devices and services
Health Platform is one one of the Services to share

There is a Blog for Health Client Types That may help
If you haven’t already check out the blog tutorials for Wear OS Health written by the Health Team to instruct new Health Developers.

If you don’t see any solution in the Blogs, You may need to ask for assistance in From the health partner services or Technical support

I hope that gets you on track in one way or another.

Ron
Samsung Developer Relations

Hi, This error occurs when I call val availableTrackers = healthTracking.trackingCapability.supportHealthTrackerTypes and ppgGreenTracker = healthTracking.getHealthTracker(HealthTrackerType.PPG_GREEN)

Error code is like below

FATAL EXCEPTION: main
                                                                                                    Process: com.bambit.silvercare, PID: 4416
                                                                                                    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bambit.silvercare/com.bambit.silvercare.presentation.MainActivity}: java.lang.IllegalStateException: Client binder is null
                                                                                                    	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3456)
                                                                                                    	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3612)
                                                                                                    	at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
                                                                                                    	at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
                                                                                                    	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
                                                                                                    	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2073)
                                                                                                    	at android.os.Handler.dispatchMessage(Handler.java:106)
                                                                                                    	at android.os.Looper.loop(Looper.java:246)
                                                                                                    	at android.app.ActivityThread.main(ActivityThread.java:7690)
                                                                                                    	at java.lang.reflect.Method.invoke(Native Method)
                                                                                                    	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593)
                                                                                                    	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:995)
                                                                                                    Caused by: java.lang.IllegalStateException: Client binder is null
                                                                                                    	at com.samsung.android.service.health.tracking.HealthTrackerCapability.getSupportHealthTrackerTypes(Unknown Source:2)
                                                                                                    	at com.samsung.android.service.health.tracking.HealthTrackingService.getHealthTracker(Unknown Source:34)
                                                                                                    	at com.bambit.silvercare.presentation.MainActivity.trackPpgGreen(MainActivity.kt:92)
                                                                                                    	at com.bambit.silvercare.presentation.MainActivity.access$trackPpgGreen(MainActivity.kt:26)
                                                                                                    	at com.bambit.silvercare.presentation.MainActivity$onCreate$1.invokeSuspend(MainActivity.kt:113)
                                                                                                    	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
                                                                                                    	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
                                                                                                    	at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:284)
                                                                                                    	at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)
                                                                                                    	at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
                                                                                                    	at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source:1)
                                                                                                    	at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38)
                                                                                                    	at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source:1)
                                                                                                    	at com.bambit.silvercare.presentation.MainActivity.onCreate(MainActivity.kt:110)
                                                                                                    	at android.app.Activity.performCreate(Activity.java:8033)
                                                                                                    	at android.app.Activity.performCreate(Activity.java:8013)
                                                                                                    	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
                                                                                                    	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3429)

All I can suggest is you ask for assistance from Technical support

Ron
Samsung Developer Relations

Hi, I have the same problem with getting this error. Did you find a solution?