BUG: LONG TEXT complication / next event / AOD with latest GW4 update

I’d like to know the secret of the preinstalled watch faces))))) How do they work?? How do they redraw a watch face in AOD mode every minute? I was trying to set a timer for one minute (in Android Studio) to wake the system up but no luck, timers don’t work as they should according to the Google documentation for Wear.

2 Likes

do a factory reset and refuse the newer updates.

I have a feeling the fix for this will be swift but they can’t introduce a new fix only to add a different bug so it takes some time.

Ron

As far as I can tell they don’t use the public Application Programming Interface but work on a sub-level.

Ron
Samsung Developer Relations

1 Like

After the update, using WakeLock to lock the CPU (as it appears in the documentation)
will be ignored and won`t work.
This code will not work after the update:

val pm = getSystemService(POWER_SERVICE) as PowerManager
wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "awake")
wl.acquire(
 
)

I also would like to know the secret…

1 Like

Yes, I’ve tried that, doesn’t work. Also I was trying to use AlarmManager for one minute, but it works every 5 minutes. Weird)
Noticed that geomagnetic rotation sensor (type 20) is not in a list after the update.
Can’t work on my projects with this broken firmware.
Hope they fix it soon.

Sincerely,
Max

1 Like

Maybe try Jobscheduler instead of AlarmManger

Same here. It’s not good to be a shock absorber of the problem between users and watch firmware issue. Few months back, we wf devs already suffered from installation issues of users that has nothing to do with our watch faces. Negative feedbacks dropping in, scam, refund etc. I guess we have to carry this burden again and probably try watch reset to continue working while hoping for the coming update.

4 Likes

I have only uploaded 3 watch faces.
I don’t see Wear OS with a good future in watches.
Battery consumption has not improved, problems with updates and applications.
The Google store is still a mess.
The era of creating watch faces I think is over for me.
The market is saturated and there is no specific store for smart watches.
My Watch 4 is barely up to date and with failures.
Better hardware in watch 4 and worse battery life and many bugs.
The only drawback in Tizen OS was the lack of apps.
For me Tizen OS is much better by far than Wear OS.
This change that Samsung has made is not benefiting developers and consumers.
And about creating free coupons, consumers have gotten used to coupons and this has not been good.

6 Likes

Hi

GW4 completely reset. No improvement.
Battery consumption certainly 25% higher, no time update in AOD. Watch slower respond, no message on phone when fully charged.
These all since FW update yesterday.
Still the same after RESET, without importing backup.

Only thing is I wasted a view hours last night.
Chance would be maybe to refuse the updates then.

If then everything works again, it can be only the FW.

One more thing from yesterday:
First FW update on my S20 Ultra 5G, 30 Minutes after that FW update on my GW4 and right after that an update from the wearable app…

And there mankind wants to think about autonomous car driving???

1 Like

Well AoD on my watch4classic 46mm still freezes and lags behind the main display time. I have started to feel that every update breaks something which was already working fine on wear os 3 powered by Samsung.

I have now very little patience and energy to deal such issues . So for the last 1 month I am not making anything on watchface studio. I have even stopped using the watch as i feel really pissed at Samsung as a watchface developer and user.

Too many issues with watch4 wear os. Believe me as a customer and consumer i have lost most of the interest
in it and im glad that i have an active2 44mm on Tizen
which works just great for all basic functionality.

Samsung and Google have made Wear OS a joke. Every new update is Nastier than previous and breaks something very important

At the moment no firmwares are available for watch to downgrade and factory reseting wont revert the update by the way as some one mentioned. So we are royally screwed

Thanks Samsung

2 Likes

Just wanted to confirm the bug as well. Neither short nor long text compilation works for the calendar / next event setting.

Samsung rolls out an update!

2 Likes

It appears that the Calendar complication still does not work.
It is blank on the WFS created watch faces that I tested it on and it does not work on the Basic Dashboard but does work in the Digital Dashboard shown in SGWatchDesign image.

I think the complication itself is malformed.
If anyone finds different let us know.
Ron
Samsung Developer Relations

It is really bad news.
The complication with the previous version on GW4 worked fine.

I expected the team to have solved this issue as well, it doesn’t work with WFS 1.1.9 either.

This is a commonly requested complication and I don’t understand why it hasn’t been fixed in this update.

The Calendar App broke with the previous firmware update. Calendar complication does not even work with all the preinstalled watch faces. As far as I can see that is the only complication effected.

I see in the Android Developers docs that the complication API was deprecated so that may be have something to do with it.

Ron
Samsung Developer Relations

1 Like

Ron, do you perhaps have a link to the deprecation part?

Found same bug. any workarround?

I’m just thinking I don’t know if that had any affect.

Ron
Samsung Developer Relations

So I’ve decided to debug the Next Event issue… and went thru the logs of my watch, while beforehand creating a simple WF with short and long text complication, setting it up to display Calendar.

So the NextEvent call is actually crashing in the background, when it calls the service.
I’ve setup a test event at 19:00 CET and you can see it finds it, it’s there, but when the service returns the data…

02-26 18:30:02.660 1266 14027 D WCS : [DataRequester]scheduleNextUpdate 261
02-26 18:30:02.670 1266 14027 D WCS : [DataRequester]Scheduling job for ComplicationConfig{id=261, watchFaceComponent=ComponentInfo{com.watchfacestudio.Test_45972916651884356414702358769417/com.samsung.android.wearable.watchfacestudio.WatchFaceStudioRuntime}, watchFaceSlotId=13, provider=ComponentInfo{com.samsung.android.wearable.sysui/com.google.android.clockwork.sysui.experiences.calendar.NextEventProviderService}, type=3, configActionPending=false, enabled=true} delay=300 jobId=1000076
02-26 18:30:02.673 14836 14836 I NextEventProvider: [Service] onComplicationUpdate
02-26 18:30:02.673 14836 14836 I SysUI : [NextEventProvider]onComplicationUpdate
02-26 18:30:02.676 14836 14909 I NextEventProvider: [DataBuilder] buildComplicationData
02-26 18:30:02.677 563 2559 D BaseRestrictionMgr: callerPkgName:com.samsung.android.wearable.sysui calleePackage:com.samsung.android.calendar action:null for type:provider
02-26 18:30:02.684 1266 14027 D WCS : [ComplicationController]requestUpdateFromProvider 262
02-26 18:30:02.684 1266 14027 D WCS : [DataRequester]cancelScheduledUpdates ComplicationConfig{id=262, watchFaceComponent=ComponentInfo{com.watchfacestudio.Test_45972916651884356414702358769417/com.samsung.android.wearable.watchfacestudio.WatchFaceStudioRuntime}, watchFaceSlotId=14, provider=ComponentInfo{com.samsung.android.wearable.sysui/com.google.android.clockwork.sysui.experiences.calendar.NextEventProviderService}, type=4, configActionPending=false, enabled=true}
02-26 18:30:02.691 1782 11713 I WCalendar$WatchCalendarProvider: [QUERY] URI : content://com.samsung.android.calendar.watch/nextEvents(com.samsung.android.wearable.sysui)
02-26 18:30:02.691 1782 11713 I WCalendar$WatchCalendarProvider: [QUERY] NextEvent query Range : 1645896602000, 1645916399000

02-26 18:30:02.701 14836 14909 I NextEventProvider: [DataBuilder] ChosenEvent : EventInstance{dataItemName=null, id=0, eventId=21687, title=<6 chars>, begin=1645898400000{Sat Feb 26 19:00:00 GMT+01:00 2022}, end=1645902000000{Sat Feb 26 20:00:00 GMT+01:00 2022}, eventColor=-15292571, calColor=0, allDay=false, ownerAccount=<0 chars>, status=0, ownerProfileAssetData=<0 chars>, reminders=null, attendees=<0 chars>, type=0, url=<0 chars>}

02-26 18:30:02.701 14836 14909 I NextEventProvider: [DataBuilder] ChosenEvent : 21687
02-26 18:30:02.702 563 1176 D BaseRestrictionMgr: callerPkgName:null calleePackage:com.android.providers.calendar action:null for type:provider
02-26 18:30:02.710 379 460 I Sensors : context 12 0 11 1,1,46,1,0,0,4,0,1,124,119,4, 175388796909112
02-26 18:30:02.710 379 460 D Sensors : scontext len: 12, inst: 1, type: 1, LibType: 46
02-26 18:30:02.710 379 460 I Sensors : Parsed libType: 46(37) 12
02-26 18:30:02.712 1266 14027 D WCS : [DataRequester]requestUpdateFromProvider ComplicationConfig{id=262, watchFaceComponent=ComponentInfo{com.watchfacestudio.Test_45972916651884356414702358769417/com.samsung.android.wearable.watchfacestudio.WatchFaceStudioRuntime}, watchFaceSlotId=14, provider=ComponentInfo{com.samsung.android.wearable.sysui/com.google.android.clockwork.sysui.experiences.calendar.NextEventProviderService}, type=4, configActionPending=false, enabled=true}
02-26 18:30:02.713 1266 14027 D WCS : [DataRequester]scheduleNextUpdate 262
02-26 18:30:02.734 14836 14836 I NextEventProvider: [Service] onComplicationUpdate
02-26 18:30:02.734 14836 14836 I SysUI : [NextEventProvider]onComplicationUpdate
02-26 18:30:02.734 14836 14891 I NextEventProvider: [DataBuilder] buildComplicationData
02-26 18:30:02.735 1266 14027 D WCS : [DataRequester]Scheduling job for ComplicationConfig{id=262, watchFaceComponent=ComponentInfo{com.watchfacestudio.Test_45972916651884356414702358769417/com.samsung.android.wearable.watchfacestudio.WatchFaceStudioRuntime}, watchFaceSlotId=14, provider=ComponentInfo{com.samsung.android.wearable.sysui/com.google.android.clockwork.sysui.experiences.calendar.NextEventProviderService}, type=4, configActionPending=false, enabled=true} delay=300 jobId=1000077
02-26 18:30:02.738 1583 19307 I SHW - WhsPassiveMonitoringSensor: [onPassiveMonitoringUpdate] start
02-26 18:30:02.739 1583 19307 I SHW - WhsPassiveMonitoringSensor: [onPassiveMonitoringUpdate] end
02-26 18:30:02.741 1583 9118 I SHW - WhsPassiveMonitoringSensor: [onPassiveMonitoringUpdate] emit hr data
02-26 18:30:02.742 1583 1723 I SHW - DataPointHelper: [toHeartRateSensorData] metadata=[hr_rri :1143][source :24][hr_flags :1]
02-26 18:30:02.743 1583 1723 I SHW - WhsHeartRateBackgroundSensor: [loggingSensorEvent] startTime:1645896602710, endTime:1645896602710, zeroCount:0, nonZeroCount:1, modeFrequent:0, modeContinuous:1

02-26 18:30:02.743 14836 14836 E AndroidRuntime: FATAL EXCEPTION: main
02-26 18:30:02.743 14836 14836 E AndroidRuntime: Process: com.samsung.android.wearable.sysui, PID: 14836
02-26 18:30:02.743 14836 14836 E AndroidRuntime: java.lang.IllegalArgumentException: Preview data should have time range set to ALWAYS.
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at androidx.wear.watchface.complications.datasource.ComplicationDataSourceService$IComplicationProviderWrapper$onUpdate$1$1.onComplicationData(ComplicationDataSourceService.kt:255)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at com.google.android.wearable.libraries.steampack.googlecomplicationsprovider.GoogleComplicationProviderService$2$1.onComplicationData(GoogleComplicationProviderService.java:161)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at com.google.android.clockwork.sysui.experiences.calendar.NextEventProviderService$1.onPostExecute(NextEventProviderService.java:66)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at com.google.android.clockwork.sysui.experiences.calendar.NextEventProviderService$1.onPostExecute(NextEventProviderService.java:55)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at com.google.android.clockwork.common.concurrent.CwAsyncTask.finish(CwAsyncTask.java:469)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at com.google.android.clockwork.common.concurrent.CwAsyncTask.access$500(CwAsyncTask.java:41)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at com.google.android.clockwork.common.concurrent.CwAsyncTask$InternalHandler.handleMessage(CwAsyncTask.java:486)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at android.os.Looper.loop(Looper.java:246)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7690)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593)
02-26 18:30:02.743 14836 14836 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:995)
02-26 18:30:02.743 1782 11713 I WCalendar$WatchCalendarProvider: [QUERY] URI : content://com.samsung.android.calendar.watch/nextEvents(com.samsung.android.wearable.sysui)
02-26 18:30:02.746 1782 11713 I WCalendar$WatchCalendarProvider: [QUERY] NextEvent query Range : 1645896602000, 1645916399000

If I’m not mistaken, Samsung needs to fix this on their end.

1 Like

After 20 days no calendar fix and no way to downgrade? Shame on you Samsung

2 Likes