I am trying to test my Android Wear app on a Samsung Watch6 device (SM-R940, Android 13, samsung/fresh6blue/fresh6bl:13/TWR5.230621.001/R940XXU1AXC2:user/release-keys)
My app contains support for a complication as documented in Expose data to complications | Android Developers
When testing on the Android Studio contained Wear OS emulator, the complication from my app can be selected and being used by the watch face with no issues.
But on Samsung Watch6 physical and also in the remote testlab test device (https://developer.samsung.com/remotetestlab/devices/102/galaxy-watch#737), my app is ignored by the complication picker activity in com.samsung.android.wearable.sysui/com.google.android.clockwork.sysui.experiences.complications.ProviderChooserActivity (seen in logcat traces)
I tested both a debug build and release build (signed with my own key) and result is same: My app is not appearing in the list of complications. Only Samsung provided apps and their complications are visible.
Is there any limitation on Watch6, which filters out complications from 3rd party apps?
Hello,
As far as I know, watch 6 should also work like watch 4/5 for complications. Did you check this on other real devices? What’s the result? If not, please check with other devices also if possible.
Please check whether you are using any system information on your app or not. If yes, you are not allowed to do this.
You can follow this guide for complication: From Wrist to Hand: Develop a Companion App for Your Wearable Application | Samsung Developer
Thanks Shamima,
I only have one physical device to test with: my personal Samsung Watch6.
I meanwhile tested successfully my watch app, specifically the complication service in it, on a remote Google Pixel Watch (API 30) via Android Studio Device Streaming (Firebase Test Lab).
When using a non-Samsung watch face on my Watch6, then my complication is selectable and is actually working also.
So I still think that the issue (complication picker does not list my complication) is not due to wrong implementation on app side.
Hello,
Please report this to Developer Support for analysis.
Include below information with the problem details:
Steps to reproduce the issue
Sample app (source code and .apk file)
Screenshot/demo video if possible
Dumpstate log
Steps to collect dumpstate log:
First, make sure the Developer Option of your device is “ON” before applying the following steps.
a) Dial *#9900#, Delete Dumstate/logcat
b) Dial *#9900#, Select Debug Level to MID. This restarts the device.
c) Reproduce the issue
d) Again dial *#9900# and press “Run Dumpstate/logcat”
e) When it is finished press “Copy To SD Card (include CP Ramdump)
f) In the main (root) directory of the device file system, please look for the directory ‘log’. That directory would contain the dumpstate log file generated, having the name format: dumpstate__
g) Compress the “log” folder and attach it