https://kotlinlang.org logo
#compose-wear
Title
# compose-wear
a

amoledwatchfaces

10/12/2023, 9:58 AM
Hello, I'm using androidx.wear.watchfacewatchface complications data1.2.0-beta02 and trying new DynamicComplicationText with PlatformHealthSources.heartRateBpm().format() It works flawlessly on emulator but on my GalaxyWatch 6 and GalaxyWatch 4, it only shows fallback value. BODY_SENSORS permission given. Is this bug or it needs to be implemented differently?
y

yschimke

10/12/2023, 7:09 PM
Probably worth filing a bug. Watchface developers aren't active here.
a

amoledwatchfaces

10/12/2023, 8:25 PM
Wish there was wear-watchface channel 🙂 Anyway, created Issue report here: https://issuetracker.google.com/issues/305035805 @Garan Jenkin
g

Garan Jenkin

10/16/2023, 10:00 PM
Looks like there's an answer on the bug 👍
plus green 1
a

Ashley Ingram

10/17/2023, 8:42 AM
Hey - PW2 should support this behaviour (along with the emulator). Samsung support will hopefully be coming soon (but it’ll be via an OTA, so no guarantee every device gets it).
a

amoledwatchfaces

10/17/2023, 8:45 AM
@Ashley Ingram Thanks for info! I'll be able to test it tomorrow on Pixel Watch 2 🙂 Great news!
⏱️ 1
@Ashley Ingram btw, this is reply I got from Samsung. Does it make any sense to you?
Copy code
Wear OS is developed  by Google, and similarly, Health services is also Google's propriety.
As DynamicComplicationText is unavailable for Wear OS 4, this is obvious it will not support Galaxy Watches running Wear OS 4 powered by Samsung.
If Google will add this for Wear OS 4, then Samsung will analyze about it's limitation and use. 
Hope you understand the circumstances.
a

Ashley Ingram

10/17/2023, 9:19 AM
🤔 I’ll follow up with the Samsung team we work with.
🙄 1
a

amoledwatchfaces

10/18/2023, 2:42 PM
@Ashley Ingram seem like I'm unlucky here. Following response from Samsung:
Copy code
We have communicated with our related development team regarding your issue.
According to the team response, Samsung does not use the jetpack version that supports DynamicComplicationText API. This is the reason you are facing issue with this API on Galaxy watches.
Unfortunately, still there is no plan to adopt that feature soon because of some strategic decision. 
Please accept this as our limitation.
a

Ashley Ingram

10/18/2023, 3:04 PM
The jetpack version that has DynamicComplicationText is the library that is bundled in your app… Maybe they misunderstood the question? The change they need to make isn’t related to jetpack versions, and requires an OTA.
I probably shouldn’t share exactly when they’re planning to do an OTA, but the issue should be solved
(when they do)
a

amoledwatchfaces

10/18/2023, 3:12 PM
Oh, I don't need OTA release date, I'm just happy that it will be supported in the future 🙂 Yes, they probably misunderstood although I've provided them with proper issue description. Thanks for replying me! 🙂
@Ashley Ingram Hi, I'm not sure if it's ok to ask there. I was playing a bit with DynamicComplicationText and used PlatformHealthSources.heartratebpm(). Everything works ok but when complication service is created and watch (Pixel Watch2) is not on wrist, onDestroy is fired automatically because data source is not available. This results in an empty complication slot. I thought that is why there is setDynamicValueInvalidationFallback (for devices supporting Dynamic values). Problem is that this is never used and instead onDestroy wipes entire complication until data source (platformhealthsource) is available again. Shoul I report the bug or this is intended?
y

yschimke

11/05/2023, 10:19 PM
Raise a bug
a

amoledwatchfaces

11/06/2023, 2:25 AM
Will do 🙂
Here it is: https://issuetracker.google.com/issues/309228591 Issue can be also reproduced with Fitbit Heart Rate Complication on Pixel Watch 2 (activating HR complication with watch not on wrist) but I'm not sure if Fitbit is using .setDynamicValueInvalidationFallback()
2 Views