Use Token-based logic for HTML5 apps

Description

Drop the HTTP proxy in launcher process and verify applications using token connection are working connecting directly to the service using websockets

Environment

None
100% Done
Type
Key
Summary
Priority
Story Points
Assignee
Status

Activity

Jacobo Aragunde Pérez 
January 29, 2020 at 4:37 AM

Issue with role names has been reported as https://lf-automotivelinux.atlassian.net/browse/SPEC-3127#icft=SPEC-3127. On the other hand, after https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl-devel/+/23651, all related WAM commits and a workaround for that issue have been merged. We can close this ticket.

Jacobo Aragunde Pérez 
January 22, 2020 at 5:45 PM

https://lf-automotivelinux.atlassian.net/browse/SPEC-3116#icft=SPEC-3116 seems unrelated.

More findings: if I trim down the length of the role name, things work as expected; I've tried with 10 characters so far. There might be an undocumented limitation, or a bug.

Jacobo Aragunde Pérez 
January 22, 2020 at 11:58 AM

Jacobo Aragunde Pérez 
January 21, 2020 at 5:09 PM

I've tried the homescreen webapp, which uses a hardcoded role instead of a generated one, and it showed up flawlessly! My theory was that the role string was being used to identify the webapp that should receive the SyncDraw event. The way the role string is generated in WAM has changed, and somehow event listeners are out of sync. The test with the homescreen seems to prove this theory, but I have yet to found how to fix it.

Jacobo Aragunde Pérez 
January 21, 2020 at 4:55 PM

We have this log in the windowmanager service:

Jan 21 16:08:48 qemux86-64 afbd-windowmanager-service@0.1[409]: [2676002.385] [wm NOTICE] [wm_client.cpp, emitSyncDraw(), Line:282] >>> trace
Jan 21 16:08:48 qemux86-64 afbd-windowmanager-service@0.1[409]: [2676002.405] [wm DEBUG] [window_manager.cpp, setTimer(), Line:948] >>> req 1: Timer set activate
VJan 21 16:08:48 qemux86-64 afbd-windowmanager-service@0.1[409]: [2676002.438] [wm DEBUG] [policy_manager.cpp, transitionState(), Line:678] >>> >>>>>>>>>> FINISH STATE TRANSITION

It should be followed by:

Jan 21 16:25:19 qemux86-64 afbd-webapps-html5-launcher@1.0[427]: ## (DEBUG)[WebAppLauncherRuntime::init_wm()::<lambda(json_object*)>] Got Event_SyncDraw
Jan 21 16:25:19 qemux86-64 afbd-webapps-html5-launcher@1.0[427]: [3667110.822] [libwm DEBUG] [libwindowmanager.cpp, endDraw(), Line:374] >>> called
Jan 21 16:25:19 qemux86-64 afbd-windowmanager-service@0.1[412]: [3667110.930] [wm INFO] [applist.cpp, setEndDrawFinished(), Line:443] >>> req 1: Role WebApp-31033 finish redraw

But the event never arrives to the WAM side.

Fixed

Details

Assignee

Reporter

Fix versions

Labels

Contract ID

Priority

Created June 21, 2019 at 9:04 AM
Updated April 8, 2020 at 7:35 PM
Resolved January 29, 2020 at 4:37 AM

Flag notifications