Cannot change volume when Yatse is closed after update to Android 12

Issue description:
I used to be able to change the volume in Yatse without opening the app, and even without unlocking my smartphone (Pixel 4a). A few days ago I updated to Android 12, and these functions do not work anymore.
The option “Publish media session” is enabled.

Logs:
To obtain the logs, I clicked on android’s home button and tried to change the volume. Instead of changing Yatse’s volume, I changed my ring tone volume.
Here is the log:

2021-10-31 17:36:42.619 Verbose/MainInstance: initialize: sunfish/sunfish/31/12/Pixel 4a/google/0/true/false/68/126/360
2021-10-31 17:36:42.628 Verbose/MainInstance: initialize: 10.10.5 (71108200[arm64-v8a,armeabi-v7a,armeabi]) false
2021-10-31 17:36:42.629 Verbose/MainInstance: Registering screen events!
2021-10-31 17:36:42.630 Verbose/NetworkManager: Network status: Init
2021-10-31 17:36:42.631 Verbose/NetworkManager: Not Wifi Only: Status[true/WIFI/false]
2021-10-31 17:36:42.632 Verbose/DynamicShortcutUtils: Update shortcuts: true / [movies, search, voice_command]
2021-10-31 17:36:42.636 Verbose/KodiLeia: Settings: [email protected] true [9090/9777/5600] (1/0/0/0)
2021-10-31 17:36:42.654 Verbose/StatusObserver: UI status changed to true from false
2021-10-31 17:36:42.655 Verbose/NetworkManager: Network status: Resume(0)
2021-10-31 17:36:42.656 Verbose/KodiLeia: Caching http://192.168.0.15:8080/jsonrpc as http://192.168.0.15:8080/jsonrpc
2021-10-31 17:36:42.659 Verbose/KodiLeia: → [786] POST http://192.168.0.15:8080/jsonrpc (61-byte body)
2021-10-31 17:36:42.660 Verbose/KodiLeia: → [786] {“id”:861,“jsonrpc”:“2.0”,“method”:“Player.GetActivePlayers”}
2021-10-31 17:36:42.661 Verbose/NetworkManager: Not Wifi Only: Status[true/WIFI/false]
2021-10-31 17:36:42.662 Verbose/KodiTCPListener: Starting TCPListener for: 192.168.0.15
2021-10-31 17:36:42.664 Verbose/ImageRequestCacheStreamFetcher: Ignoring previously failed load for ImageRequest{url=‘http://192.168.0.15:8080/image/image%3A%2F%2Fvideo%40%2Fmedia%2FF42AF2C42AF28342%2FMusica%2FZep%2FVideo%20vari%2FLocanda%20Blues%20-%20Rock%20n%20Roll%20(Led%20Zeppelin).mp4%2F’, onlyCached=false, keepTransparency=false, cacheKey=image%3A%2F%2Fvideo%40%252Fmedia%252FF42AF2C42AF28342%252FMusica%252FZep%252FVideo%2520vari%252FLocanda%2520Blues%2520-%2520Rock%2520n%2520Roll%2520(Led%2520Zeppelin).mp4%2F}
2021-10-31 17:36:42.670 Verbose/KodiLeia: ← [786] 200 OK http://192.168.0.15:8080/jsonrpc (13ms, 38-byte body)
2021-10-31 17:36:42.671 Verbose/KodiLeia: ← [786] {“id”:861,“jsonrpc”:“2.0”,“result”:[]}
2021-10-31 17:36:42.673 Verbose/KodiLeia: → [974] POST http://192.168.0.15:8080/jsonrpc (106-byte body)
2021-10-31 17:36:42.675 Verbose/KodiLeia: → [974] {“id”:739,“jsonrpc”:“2.0”,“method”:“Application.GetProperties”,“params”:{“properties”:[“volume”,“muted”]}}
2021-10-31 17:36:42.676 Verbose/KodiLeia: ← [974] 200 OK http://192.168.0.15:8080/jsonrpc (3ms, 63-byte body)
2021-10-31 17:36:42.677 Verbose/KodiLeia: ← [974] {“id”:739,“jsonrpc”:“2.0”,“result”:{“muted”:false,“volume”:22}}
2021-10-31 17:36:42.678 Verbose/StatusObserver: UI status changed to false from true
2021-10-31 17:36:42.717 Verbose/StartActivity: Handling #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=org.leetzone.android.yatsewidgetfree/org.leetzone.android.yatsewidget.ui.activity.StartActivity;sourceBounds=38%201091%20239%201402;end null true
2021-10-31 17:36:42.718 Verbose/StartActivity: Navigating to RemoteNavigationDestination
2021-10-31 17:36:42.796 Verbose/StatusObserver: UI status changed to true from false
2021-10-31 17:36:42.796 Verbose/NetworkManager: Network status: Resume(0)
2021-10-31 17:36:42.798 Verbose/NetworkManager: Not Wifi Only: Status[true/WIFI/false]
2021-10-31 17:36:44.321 Verbose/KodiLeia: → [478] POST http://192.168.0.15:8080/jsonrpc (61-byte body)
2021-10-31 17:36:44.323 Verbose/KodiLeia: → [478] {“id”:176,“jsonrpc”:“2.0”,“method”:“Player.GetActivePlayers”}
2021-10-31 17:36:44.342 Verbose/KodiLeia: ← [478] 200 OK http://192.168.0.15:8080/jsonrpc (20ms, 38-byte body)
2021-10-31 17:36:44.343 Verbose/KodiLeia: ← [478] {“id”:176,“jsonrpc”:“2.0”,“result”:[]}
2021-10-31 17:36:44.347 Verbose/KodiLeia: → [766] POST http://192.168.0.15:8080/jsonrpc (106-byte body)
2021-10-31 17:36:44.348 Verbose/KodiLeia: → [766] {“id”:679,“jsonrpc”:“2.0”,“method”:“Application.GetProperties”,“params”:{“properties”:[“volume”,“muted”]}}
2021-10-31 17:36:44.352 Verbose/KodiLeia: ← [766] 200 OK http://192.168.0.15:8080/jsonrpc (5ms, 63-byte body)
2021-10-31 17:36:44.354 Verbose/KodiLeia: ← [766] {“id”:679,“jsonrpc”:“2.0”,“result”:{“muted”:false,“volume”:22}}
2021-10-31 17:36:44.666 Verbose/StatusObserver: UI status changed to false from true
2021-10-31 17:36:45.864 Verbose/KodiLeia: → [681] POST http://192.168.0.15:8080/jsonrpc (61-byte body)
2021-10-31 17:36:45.866 Verbose/KodiLeia: → [681] {“id”:976,“jsonrpc”:“2.0”,“method”:“Player.GetActivePlayers”}
2021-10-31 17:36:45.868 Verbose/KodiLeia: ← [681] 200 OK http://192.168.0.15:8080/jsonrpc (4ms, 38-byte body)
2021-10-31 17:36:45.869 Verbose/KodiLeia: ← [681] {“id”:976,“jsonrpc”:“2.0”,“result”:[]}
2021-10-31 17:36:45.872 Verbose/KodiLeia: → [717] POST http://192.168.0.15:8080/jsonrpc (106-byte body)
2021-10-31 17:36:45.873 Verbose/KodiLeia: → [717] {“id”:257,“jsonrpc”:“2.0”,“method”:“Application.GetProperties”,“params”:{“properties”:[“volume”,“muted”]}}
2021-10-31 17:36:45.876 Verbose/KodiLeia: ← [717] 200 OK http://192.168.0.15:8080/jsonrpc (4ms, 63-byte body)
2021-10-31 17:36:45.877 Verbose/KodiLeia: ← [717] {“id”:257,“jsonrpc”:“2.0”,“result”:{“muted”:false,“volume”:22}}
2021-10-31 17:36:46.178 Verbose/KodiTCPListener: Stopping TCPListener (true)
2021-10-31 17:36:46.179 Verbose/KodiTCPListener: Disconnecting TCPSocket
2021-10-31 17:36:47.578 Verbose/StartActivity: Handling #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10600000;component=org.leetzone.android.yatsewidgetfree/org.leetzone.android.yatsewidget.ui.activity.StartActivity;sourceBounds=38%201091%20239%201402;end null false
2021-10-31 17:36:47.579 Verbose/StatusObserver: UI status changed to true from false
2021-10-31 17:36:47.580 Verbose/NetworkManager: Network status: Resume(0)
2021-10-31 17:36:47.581 Verbose/NetworkManager: Not Wifi Only: Status[true/WIFI/false]
2021-10-31 17:36:47.582 Verbose/KodiTCPListener: Starting TCPListener for: 192.168.0.15
2021-10-31 17:36:49.091 Verbose/KodiLeia: → [265] POST http://192.168.0.15:8080/jsonrpc (61-byte body)
2021-10-31 17:36:49.092 Verbose/KodiLeia: → [265] {“id”:540,“jsonrpc”:“2.0”,“method”:“Player.GetActivePlayers”}
2021-10-31 17:36:49.109 Verbose/KodiLeia: ← [265] 200 OK http://192.168.0.15:8080/jsonrpc (18ms, 38-byte body)
2021-10-31 17:36:49.111 Verbose/KodiLeia: ← [265] {“id”:540,“jsonrpc”:“2.0”,“result”:[]}
2021-10-31 17:36:49.114 Verbose/KodiLeia: → [269] POST http://192.168.0.15:8080/jsonrpc (105-byte body)
2021-10-31 17:36:49.115 Verbose/KodiLeia: → [269] {“id”:11,“jsonrpc”:“2.0”,“method”:“Application.GetProperties”,“params”:{“properties”:[“volume”,“muted”]}}
2021-10-31 17:36:49.116 Verbose/KodiLeia: ← [269] 200 OK http://192.168.0.15:8080/jsonrpc (4ms, 62-byte body)
2021-10-31 17:36:49.116 Verbose/KodiLeia: ← [269] {“id”:11,“jsonrpc”:“2.0”,“result”:{“muted”:false,“volume”:22}}
2021-10-31 17:36:50.661 Verbose/KodiLeia: → [565] POST http://192.168.0.15:8080/jsonrpc (61-byte body)
2021-10-31 17:36:50.663 Verbose/KodiLeia: → [565] {“id”:976,“jsonrpc”:“2.0”,“method”:“Player.GetActivePlayers”}
2021-10-31 17:36:50.674 Verbose/KodiLeia: ← [565] 200 OK http://192.168.0.15:8080/jsonrpc (14ms, 38-byte body)
2021-10-31 17:36:50.675 Verbose/KodiLeia: ← [565] {“id”:976,“jsonrpc”:“2.0”,“result”:[]}
2021-10-31 17:36:50.677 Verbose/KodiLeia: → [995] POST http://192.168.0.15:8080/jsonrpc (106-byte body)
2021-10-31 17:36:50.679 Verbose/KodiLeia: → [995] {“id”:413,“jsonrpc”:“2.0”,“method”:“Application.GetProperties”,“params”:{“properties”:[“volume”,“muted”]}}
2021-10-31 17:36:50.683 Verbose/KodiLeia: ← [995] 200 OK http://192.168.0.15:8080/jsonrpc (5ms, 63-byte body)
2021-10-31 17:36:50.685 Verbose/KodiLeia: ← [995] {“id”:413,“jsonrpc”:“2.0”,“result”:{“muted”:false,“volume”:22}}
2021-10-31 17:36:51.760 Verbose/StatusObserver: UI status changed to false from true
2021-10-31 17:36:52.219 Verbose/KodiLeia: → [105] POST http://192.168.0.15:8080/jsonrpc (61-byte body)
2021-10-31 17:36:52.222 Verbose/KodiLeia: → [105] {“id”:881,“jsonrpc”:“2.0”,“method”:“Player.GetActivePlayers”}
2021-10-31 17:36:52.237 Verbose/KodiLeia: ← [105] 200 OK http://192.168.0.15:8080/jsonrpc (17ms, 38-byte body)
2021-10-31 17:36:52.238 Verbose/KodiLeia: ← [105] {“id”:881,“jsonrpc”:“2.0”,“result”:[]}
2021-10-31 17:36:52.240 Verbose/KodiLeia: → [196] POST http://192.168.0.15:8080/jsonrpc (106-byte body)
2021-10-31 17:36:52.241 Verbose/KodiLeia: → [196] {“id”:183,“jsonrpc”:“2.0”,“method”:“Application.GetProperties”,“params”:{“properties”:[“volume”,“muted”]}}
2021-10-31 17:36:52.245 Verbose/KodiLeia: ← [196] 200 OK http://192.168.0.15:8080/jsonrpc (4ms, 63-byte body)
2021-10-31 17:36:52.246 Verbose/KodiLeia: ← [196] {“id”:183,“jsonrpc”:“2.0”,“result”:{“muted”:false,“volume”:22}}
2021-10-31 17:36:53.276 Verbose/KodiTCPListener: Stopping TCPListener (true)
2021-10-31 17:36:53.276 Verbose/KodiTCPListener: Disconnecting TCPSocket
2021-10-31 17:36:56.268 Verbose/KodiLeia: → [313] POST http://192.168.0.15:8080/jsonrpc (60-byte body)
2021-10-31 17:36:56.270 Verbose/KodiLeia: → [313] {“id”:75,“jsonrpc”:“2.0”,“method”:“Player.GetActivePlayers”}
2021-10-31 17:36:56.291 Verbose/KodiLeia: ← [313] 200 OK http://192.168.0.15:8080/jsonrpc (22ms, 37-byte body)
2021-10-31 17:36:56.292 Verbose/KodiLeia: ← [313] {“id”:75,“jsonrpc”:“2.0”,“result”:[]}
2021-10-31 17:36:56.294 Verbose/KodiLeia: → [211] POST http://192.168.0.15:8080/jsonrpc (106-byte body)
2021-10-31 17:36:56.296 Verbose/KodiLeia: → [211] {“id”:540,“jsonrpc”:“2.0”,“method”:“Application.GetProperties”,“params”:{“properties”:[“volume”,“muted”]}}
2021-10-31 17:36:56.299 Verbose/KodiLeia: ← [211] 200 OK http://192.168.0.15:8080/jsonrpc (5ms, 63-byte body)
2021-10-31 17:36:56.301 Verbose/KodiLeia: ← [211] {“id”:540,“jsonrpc”:“2.0”,“result”:{“muted”:false,“volume”:22}}
2021-10-31 17:36:57.586 Verbose/KodiLeia: → [320] POST http://192.168.0.15:8080/jsonrpc (50-byte body)
2021-10-31 17:36:57.588 Verbose/KodiLeia: → [320] {“id”:552,“jsonrpc”:“2.0”,“method”:“JSONRPC.Ping”}
2021-10-31 17:36:57.601 Verbose/KodiLeia: ← [320] 200 OK http://192.168.0.15:8080/jsonrpc (14ms, 42-byte body)
2021-10-31 17:36:57.603 Verbose/KodiLeia: ← [320] {“id”:552,“jsonrpc”:“2.0”,“result”:“pong”}
2021-10-31 17:36:57.604 Verbose/MediaUpdateManager: Updating playcount queued media
2021-10-31 17:36:57.607 Verbose/KodiTCPListener: Starting TCPListener for: 192.168.0.15
2021-10-31 17:36:57.636 Verbose/QueryBuilder: Query: SELECT hosts._id,hosts.type,hosts.name,hosts.color,hosts.description,hosts.api,hosts.ip,hosts.port_1,hosts.port_2,hosts.port_3,hosts.port_4,hosts.port_5,hosts.login,hosts.password,hosts.mac_address,hosts.wifi_only,hosts.wifi_ssid,hosts.info_1,hosts.info_2,hosts.info_3,hosts.int_param_1,hosts.int_param_2,hosts.int_param_3,hosts.int_param_4,hosts.int_param_5,hosts.string_param_1,hosts.string_param_2,hosts.string_param_3,hosts.string_param_4,hosts.string_param_5,hosts.unique_id,hosts.display_order FROM hosts WHERE (hosts._id=?) (‘3’) [1 in 1.18ms]
2021-10-31 17:36:57.638 Verbose/QueryBuilder: Query: SELECT sync_medias._id,sync_medias.date,sync_medias.from_device,sync_medias.host_id,sync_medias.media_id,sync_medias.external_id,sync_medias.media_type,sync_medias.play_count,sync_medias.resume_point,sync_medias.title,sync_medias.file,sync_medias.last_played,sync_medias.is_favourite FROM sync_medias WHERE (sync_medias.host_id=?) AND (sync_medias.from_device=?) (‘3’,‘1’) [0 in 1.10ms]
2021-10-31 17:36:57.639 Verbose/MediaUpdateManager: Nothing to update
2021-10-31 17:36:57.639 Verbose/MediaUpdateManager: Updating favourite queued media
2021-10-31 17:36:57.640 Verbose/EventClient: EventClient(192.168.0.15,9777)
2021-10-31 17:36:57.641 Verbose/KodiLeia: Settings: [email protected] true [9090/9777/5600] (1/0/0/0)
2021-10-31 17:36:57.641 Verbose/KodiLeia: Caching http://192.168.0.15:8080/jsonrpc as http://192.168.0.15:8080/jsonrpc
2021-10-31 17:36:57.642 Verbose/KodiLeia: Caching http://192.168.0.15:8080/jsonrpc as http://192.168.0.15:8080/jsonrpc
2021-10-31 17:36:57.643 Verbose/QueryBuilder: Query: SELECT sync_medias._id,sync_medias.date,sync_medias.from_device,sync_medias.host_id,sync_medias.media_id,sync_medias.external_id,sync_medias.media_type,sync_medias.play_count,sync_medias.resume_point,sync_medias.title,sync_medias.file,sync_medias.last_played,sync_medias.is_favourite FROM sync_medias WHERE (sync_medias.host_id=?) AND (sync_medias.from_device=?) (‘3’,‘2’) [0 in 0.68ms]
2021-10-31 17:36:57.644 Verbose/MediaUpdateManager: Nothing to update
2021-10-31 17:36:57.644 Verbose/KodiLeia: → [765] POST http://192.168.0.15:8080/jsonrpc (53-byte body)
2021-10-31 17:36:57.645 Verbose/KodiLeia: → [765] {“id”:479,“jsonrpc”:“2.0”,“method”:“JSONRPC.Version”}
2021-10-31 17:36:57.646 Verbose/KodiLeia: → [583] POST http://192.168.0.15:8080/jsonrpc (50-byte body)
2021-10-31 17:36:57.646 Verbose/KodiLeia: → [583] {“id”:995,“jsonrpc”:“2.0”,“method”:“JSONRPC.Ping”}
2021-10-31 17:36:57.647 Verbose/KodiLeia: ← [765] 200 OK http://192.168.0.15:8080/jsonrpc (4ms, 80-byte body)
2021-10-31 17:36:57.647 Verbose/KodiLeia: ← [765] {“id”:479,“jsonrpc”:“2.0”,“result”:{“version”:{“major”:10,“minor”:3,“patch”:0}}}
2021-10-31 17:36:57.655 Verbose/KodiLeia: ← [583] 200 OK http://192.168.0.15:8080/jsonrpc (15ms, 42-byte body)
2021-10-31 17:36:57.656 Verbose/KodiLeia: ← [583] {“id”:995,“jsonrpc”:“2.0”,“result”:“pong”}
2021-10-31 17:36:57.658 Verbose/QueryBuilder: Query: SELECT smart_sync._id,smart_sync.host_id,smart_sync.media_type,smart_sync.external_id,smart_sync.filter,smart_sync.title,smart_sync.thumbnail,smart_sync.auto_delete,smart_sync.cache_count,smart_sync.transcode_bitrate FROM smart_sync WHERE (smart_sync.host_id=?) (‘3’) [0 in 0.66ms]

Additional information:
I use Yatse to control Kodi v18.

Do you see the media playing notification ?
When you press the volume key what do you see? 2 bars or just 1 bar for the local if you press the 3 dots do you have a bar with a cast icon (screenshots would be nice those last part)

Hi Tolriq,
I see the notification on the lock screen and can stop and pause. However, when I press the volume key I only see one bar for the the local volume, and there’s no cast icon when I click the 3 dots (screenshot attached).


Ok so after loosing tons of time seems it’s intentional from Google:

https://issuetracker.google.com/issues/201546605#comment6

Hopefully they will fix it in an Android 12, but from the rest of the thread there’s 0 possible workaround.
Such incredible undocumented regression …

Thanks Tolriq, I did some research before posting but I did not find that thread.
From the linked thread: “There was a legal issue that I cannot share in public place.”. Wow! So it’s not a technical bug from Google. I’d be curious to know some background…
Anyway, let’s hope they fix it soon…
Thanks again, great support!