I'm trying to create an app for Google Home using Actions on Google.
The flow is set to authorization code, but just in case, I've enabled implicit flow on the tenant. The endpoints are the ones found in the well-known openid endpoint and I've added the right app id and secret.
If I run the 'gala-demo' google tool that debugs Account linking it gets a token so I think that the OAuth server works.
When I run the test app from the Google Home app at the end of the account linking process it shows an error saying Couldn't update the settings, check the connection
I'm from Italy, but I've the assistant available due to the language set to English (US)
Can anyone help me?
This is the actions-package used :
{
"actions": [
{
"name": "MAIN",
"fulfillment": {
"conversationName": "default"
},
"intent": {
"name": "actions.intent.MAIN"
}
},
{
"name" :"actions.devices",
"deviceControl":{
},
"fulfillment": {
"conversationName" :"automation"
}
}
],
"conversations": {
"automation" :
{
"name":"automation",
"url" :"https://xxx/voicetest"
},
"default" :
{
"name":"default",
"url" :"https://xxx"
}
}
}
Edit: This is a log from the android phone:
09-11 17:44:20.329 713 1982 I ActivityManager: START u0 {act=android.intent.action.VIEW dat=customtab://4640903d-c02f-438b-9349-850fa2b5132b?https://assistant.google.com/services/auth/handoffs/auth/start?provider=test1-bd_dev&scopes=https://bpb2ctest.onmicrosoft.com/smarthome/write%20openid&return_url=assistant-handoff://complete&[email protected]&redirect_uri=assistant-handoff%3A%2F%2Fcomplete flg=0x5b088000 cmp=com.android.chrome/org.chromium.chrome.browser.customtabs.SeparateTaskCustomTabActivity (has extras)} from uid 10118 on display 0
09-11 17:44:20.413 1316 4161 W cr_tabmodel: Starting to fetch tab list.
09-11 17:44:20.414 1316 4161 E cr_tabmodel: State file does not exist.
09-11 17:44:20.446 713 723 I art : Background partial concurrent mark sweep GC freed 23840(1732KB) AllocSpace objects, 4(208KB) LOS objects, 33% free, 25MB/38MB, paused 2.574ms total 176.425ms
09-11 17:44:20.501 713 765 I ActivityManager: Displayed com.android.chrome/org.chromium.chrome.browser.customtabs.SeparateTaskCustomTabActivity: +141ms (total +259ms)
09-11 17:44:20.528 1392 1419 W Adreno-ES20: <rb_perfcounter_gpu_disjoint_status:487>: open failed: errno 13
09-11 17:44:20.528 1392 1419 W Adreno-ES20: <rb_perfcounter_gpu_disjoint_status:487>: open failed: errno 13
09-11 17:44:20.525 1419 1419 W CrGpuMain: type=1400 audit(0.0:1449): avc: denied { read } for name="reset_count" dev="sysfs" ino=19599 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:sysfs:s0 tclass=file permissive=0
09-11 17:44:20.525 1419 1419 W CrGpuMain: type=1300 audit(0.0:1449): arch=40000028 syscall=322 per=800008 success=no exit=-13 a0=ffffff9c a1=a6ffbe7c a2=20000 a3=0 items=1 ppid=345 ppcomm=main auid=4294967295 uid=10118 gid=10118 euid=10118 suid=10118 fsuid=10118 egid=10118 sgid=10118 fsgid=10118 tty=(none) ses=4294967295 exe="/system/bin/app_process32_xposed" subj=u:r:untrusted_app:s0:c512,c768 key=(null)
09-11 17:44:20.525 292 292 W auditd : type=1307 audit(0.0:1449): cwd="/"
09-11 17:44:20.525 292 292 W auditd : type=1302 audit(0.0:1449): item=0 name="/sys/class/kgsl/kgsl-3d0/reset_count" inode=19599 dev=00:0d mode=0100444 ouid=0 ogid=0 rdev=00:00 obj=u:object_r:sysfs:s0
09-11 17:44:20.525 292 292 W auditd : type=1327 audit(0.0:1449): proctitle="com.android.chrome:privileged_process0"
09-11 17:44:20.525 292 292 W auditd : type=1320 audit(0.0:1449):
09-11 17:44:20.525 1419 1419 W CrGpuMain: type=1400 audit(0.0:1450): avc: denied { read } for name="reset_count" dev="sysfs" ino=19599 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:sysfs:s0 tclass=file permissive=0
09-11 17:44:20.525 1419 1419 W CrGpuMain: type=1300 audit(0.0:1450): arch=40000028 syscall=322 per=800008 success=no exit=-13 a0=ffffff9c a1=a6ffbe7c a2=20000 a3=0 items=1 ppid=345 ppcomm=main auid=4294967295 uid=10118 gid=10118 euid=10118 suid=10118 fsuid=10118 egid=10118 sgid=10118 fsgid=10118 tty=(none) ses=4294967295 exe="/system/bin/app_process32_xposed" subj=u:r:untrusted_app:s0:c512,c768 key=(null)
09-11 17:44:20.525 292 292 W auditd : type=1307 audit(0.0:1450): cwd="/"
09-11 17:44:20.525 292 292 W auditd : type=1302 audit(0.0:1450): item=0 name="/sys/class/kgsl/kgsl-3d0/reset_count" inode=19599 dev=00:0d mode=0100444 ouid=0 ogid=0 rdev=00:00 obj=u:object_r:sysfs:s0
09-11 17:44:20.525 292 292 W auditd : type=1327 audit(0.0:1450): proctitle="com.android.chrome:privileged_process0"
09-11 17:44:20.525 292 292 W auditd : type=1320 audit(0.0:1450):
09-11 17:44:20.532 1392 1419 W Adreno-ES20: <rb_perfcounter_gpu_disjoint_status:487>: open failed: errno 13
09-11 17:44:20.528 1419 1419 W CrGpuMain: type=1400 audit(0.0:1451): avc: denied { read } for name="reset_count" dev="sysfs" ino=19599 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:sysfs:s0 tclass=file permissive=0
09-11 17:44:20.528 1419 1419 W CrGpuMain: type=1300 audit(0.0:1451): arch=40000028 syscall=322 per=800008 success=no exit=-13 a0=ffffff9c a1=a6ffbe7c a2=20000 a3=0 items=1 ppid=345 ppcomm=main auid=4294967295 uid=10118 gid=10118 euid=10118 suid=10118 fsuid=10118 egid=10118 sgid=10118 fsgid=10118 tty=(none) ses=4294967295 exe="/system/bin/app_process32_xposed" subj=u:r:untrusted_app:s0:c512,c768 key=(null)
09-11 17:44:20.528 292 292 W auditd : type=1307 audit(0.0:1451): cwd="/"
09-11 17:44:20.528 292 292 W auditd : type=1302 audit(0.0:1451): item=0 name="/sys/class/kgsl/kgsl-3d0/reset_count" inode=19599 dev=00:0d mode=0100444 ouid=0 ogid=0 rdev=00:00 obj=u:object_r:sysfs:s0
09-11 17:44:20.528 292 292 W auditd : type=1327 audit(0.0:1451): proctitle="com.android.chrome:privileged_process0"
09-11 17:44:20.528 292 292 W auditd : type=1320 audit(0.0:1451):
09-11 17:44:21.164 327 327 W SurfaceFlinger: couldn't log to binary event log: overflow.
09-11 17:44:21.180 713 922 W ActivityManager: Finishing task with all activities already finished
09-11 17:44:21.180 713 922 W ActivityManager: Duplicate finish request for ActivityRecord{6fbf838 u0 android/com.android.internal.app.ResolverActivity t1512 f}
09-11 17:44:23.459 713 21104 I ActivityManager: START u0 {act=android.intent.action.VIEW cat=[android.intent.category.BROWSABLE] dat=assistant-handoff://complete/?result_code=SUCCESS&result_message=Accounts+now+linked. flg=0x10000000 cmp=com.google.android.googlequicksearchbox/com.google.android.apps.gsa.assistant.handoff.BrowserReturnActivity (has extras)} from uid 10118 on display 0
09-11 17:44:23.469 713 21104 I ActivityManager: moveTaskToBack: TaskRecord{5a1503c #1514 I=com.android.chrome/org.chromium.chrome.browser.customtabs.SeparateTaskCustomTabActivity U=0 StackId=1 sz=1}
09-11 17:44:23.493 713 1422 I ActivityManager: Process com.android.chrome:sandboxed_process0 (pid 4231) has died
09-11 17:44:23.493 713 1422 D ActivityManager: cleanUpApplicationRecord -- 4231
09-11 17:44:23.493 713 1422 W ActivityManager: Scheduling restart of crashed service com.android.chrome/org.chromium.content.app.SandboxedProcessService0 in 1000ms
09-11 17:44:23.509 713 730 I MediaFocusControl: AudioFocus abandonAudioFocus() from uid/pid 10118/1316 clientId=android.media.AudioManager@35966bforg.chromium.content.browser.AudioFocusDelegate@4e1868c
09-11 17:44:23.569 1316 1350 W cr_ChildProcessConn: onServiceDisconnected (crash or killed by oom): pid=4231
09-11 17:44:23.599 713 1971 I ActivityManager: START u0 {dat=assistant-handoff://complete/?result_code=SUCCESS&result_message=Accounts+now+linked. cmp=com.google.android.googlequicksearchbox/com.google.android.apps.gsa.assistant.handoff.BrowserControlActivity} from uid 10044 on display 0
09-11 17:44:23.612 1316 4328 W InvalidationClientCore: [TiclService] Ticl being stopped: Client: <ApplicationClientIdP: client_type=1018 client_name=9b72d349-1e3b-465b-9f0e-c949b1a6c961>, \n\006\n\004\010\003\020\001\022\022\t\r\025\007W\223\211\275\213\021\333F0\002L\251\"&\032\007\010\2022\020\003\030\001, <RunState: 2>
09-11 17:44:23.703 713 723 I art : Background partial concurrent mark sweep GC freed 16404(916KB) AllocSpace objects, 10(664KB) LOS objects, 33% free, 25MB/38MB, paused 1.663ms total 141.766ms
09-11 17:44:23.713 2078 2078 W BrowserControlActivity: Transition animation scale is not available
09-11 17:44:23.741 1392 1419 E Surface : getSlotFromBufferLocked: unknown buffer: 0x94d5f9a0
09-11 17:44:23.748 2078 2078 I art : Starting a blocking GC Explicit
09-11 17:44:23.769 1316 1350 I cr_BindingManager: onTrimMemory: level=20, size=0
09-11 17:44:23.796 1316 1316 W cr_ContextualSearch: Warning, the UNDEFINED state was aborted.
09-11 17:44:23.815 2078 2078 I art : Explicit concurrent mark sweep GC freed 6403(374KB) AllocSpace objects, 1(36KB) LOS objects, 36% free, 27MB/43MB, paused 703us total 65.328ms
09-11 17:44:23.832 2078 2078 I art : Starting a blocking GC Explicit
09-11 17:44:23.888 2078 2078 I art : Explicit concurrent mark sweep GC freed 2723(194KB) AllocSpace objects, 0(0B) LOS objects, 36% free, 27MB/43MB, paused 719us total 55.852ms
09-11 17:44:24.047 1316 1350 W cr_ChildProcLauncher: Create a new ChildConnectionAllocator with package name = com.android.chrome, inSandbox = true
09-11 17:44:24.100 713 1982 I ActivityManager: Start proc 4334:com.android.chrome:sandboxed_process0/u0i9 for service com.android.chrome/org.chromium.content.app.SandboxedProcessService0
09-11 17:44:24.437 327 327 W SurfaceFlinger: couldn't log to binary event log: overflow.
09-11 17:44:24.437 327 327 W SurfaceFlinger: couldn't log to binary event log: overflow.
09-11 17:44:24.495 4334 4334 W dboxed_process0: type=1400 audit(0.0:1452): avc: denied { getattr } for path="/data/data/com.android.chrome" dev="mmcblk0p26" ino=262070 scontext=u:r:isolated_app:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=dir permissive=0
09-11 17:44:24.495 4334 4334 W dboxed_process0: type=1300 audit(0.0:1452): arch=40000028 syscall=327 per=800008 success=no exit=-13 a0=ffffff9c a1=be96a894 a2=be967700 a3=100 items=1 ppid=345 ppcomm=main auid=4294967295 uid=99009 gid=99009 euid=99009 suid=99009 fsuid=99009 egid=99009 sgid=99009 fsgid=99009 tty=(none) ses=4294967295 exe="/system/bin/app_process32_xposed" subj=u:r:isolated_app:s0:c512,c768 key=(null)
09-11 17:44:24.495 292 292 W auditd : type=1307 audit(0.0:1452): cwd="/"
09-11 17:44:24.495 292 292 W auditd : type=1302 audit(0.0:1452): item=0 name="/data/data/com.android.chrome" inode=262070 dev=b3:1a mode=040700 ouid=10118 ogid=10118 rdev=00:00 obj=u:object_r:app_data_file:s0:c512,c768
09-11 17:44:24.495 292 292 W auditd : type=1327 audit(0.0:1452): proctitle="com.android.chrome:sandboxed_process0"
09-11 17:44:24.495 292 292 W auditd : type=1320 audit(0.0:1452):
09-11 17:44:24.511 4334 4334 W dboxed_process0: type=1400 audit(0.0:1453): avc: denied { search } for name="tmp" dev="mmcblk0p26" ino=523267 scontext=u:r:isolated_app:s0:c512,c768 tcontext=u:object_r:shell_data_file:s0 tclass=dir permissive=0
09-11 17:44:24.511 4334 4334 W dboxed_process0: type=1300 audit(0.0:1453): arch=40000028 syscall=334 per=800008 success=no exit=-13 a0=ffffff9c a1=b40a9ed0 a2=0 a3=0 items=1 ppid=345 ppcomm=main auid=4294967295 uid=99009 gid=99009 euid=99009 suid=99009 fsuid=99009 egid=99009 sgid=99009 fsgid=99009 tty=(none) ses=4294967295 exe="/system/bin/app_process32_xposed" subj=u:r:isolated_app:s0:c512,c768 key=(null)
09-11 17:44:24.511 292 292 W auditd : type=1307 audit(0.0:1453): cwd="/"
09-11 17:44:24.511 292 292 W auditd : type=1302 audit(0.0:1453): item=0 name="/data/local/tmp/chrome-command-line"
09-11 17:44:24.511 292 292 W auditd : type=1327 audit(0.0:1453): proctitle="com.android.chrome:sandboxed_process0"
09-11 17:44:24.511 292 292 W auditd : type=1320 audit(0.0:1453):
09-11 17:44:24.526 4334 4334 I cr_ChildProcessService: Creating new ChildProcessService pid=4334
09-11 17:44:24.558 4334 4354 I cr_LibraryLoader: Time to load native libraries: 23 ms (timestamps 2975-2998)
09-11 17:44:24.560 4334 4354 I cr_LibraryLoader: Using linker: org.chromium.base.library_loader.ModernLinker
09-11 17:44:24.561 4334 4354 I chromium: [INFO:library_loader_hooks.cc(144)] Chromium logging enabled: level = 0, default verbosity = 0
09-11 17:44:24.561 4334 4354 I cr_LibraryLoader: Expected native library version number "60.0.3112.116", actual native library version number "60.0.3112.116"
09-11 17:44:24.611 1392 1419 W Adreno-ES20: <get_gpu_clk:229>: open failed: errno 13
09-11 17:44:24.608 1419 1419 W CrGpuMain: type=1400 audit(0.0:1454): avc: denied { read } for name="gpuclk" dev="sysfs" ino=19588 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:sysfs:s0 tclass=file permissive=0
09-11 17:44:24.608 1419 1419 W CrGpuMain: type=1300 audit(0.0:1454): arch=40000028 syscall=322 per=800008 success=no exit=-13 a0=ffffff9c a1=a6ffbdfd a2=20000 a3=0 items=1 ppid=345 ppcomm=main auid=4294967295 uid=10118 gid=10118 euid=10118 suid=10118 fsuid=10118 egid=10118 sgid=10118 fsgid=10118 tty=(none) ses=4294967295 exe="/system/bin/app_process32_xposed" subj=u:r:untrusted_app:s0:c512,c768 key=(null)
09-11 17:44:24.608 292 292 W auditd : type=1307 audit(0.0:1454): cwd="/"
09-11 17:44:24.608 292 292 W auditd : type=1302 audit(0.0:1454): item=0 name="/sys/class/kgsl/kgsl-3d0/gpuclk" inode=19588 dev=00:0d mode=0100644 ouid=0 ogid=0 rdev=00:00 obj=u:object_r:sysfs:s0
09-11 17:44:24.608 292 292 W auditd : type=1327 audit(0.0:1454): proctitle="com.android.chrome:privileged_process0"
09-11 17:44:24.608 292 292 W auditd : type=1320 audit(0.0:1454):
09-11 17:44:24.618 1419 1419 W CrGpuMain: type=1400 audit(0.0:1455): avc: denied { read } for name="reset_count" dev="sysfs" ino=19599 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:sysfs:s0 tclass=file permissive=0
09-11 17:44:24.618 1419 1419 W CrGpuMain: type=1300 audit(0.0:1455): arch=40000028 syscall=322 per=800008 success=no exit=-13 a0=ffffff9c a1=a6ffbe7c a2=20000 a3=0 items=1 ppid=345 ppcomm=main auid=4294967295 uid=10118 gid=10118 euid=10118 suid=10118 fsuid=10118 egid=10118 sgid=10118 fsgid=10118 tty=(none) ses=4294967295 exe="/system/bin/app_process32_xposed" subj=u:r:untrusted_app:s0:c512,c768 key=(null)
09-11 17:44:24.618 292 292 W auditd : type=1307 audit(0.0:1455): cwd="/"
09-11 17:44:24.618 292 292 W auditd : type=1302 audit(0.0:1455): item=0 name="/sys/class/kgsl/kgsl-3d0/reset_count" inode=19599 dev=00:0d mode=0100444 ouid=0 ogid=0 rdev=00:00 obj=u:object_r:sysfs:s0
09-11 17:44:24.620 1392 1419 W Adreno-ES20: <rb_perfcounter_gpu_disjoint_status:487>: open failed: errno 13
09-11 17:44:24.620 1392 1419 W Adreno-ES20: <rb_perfcounter_gpu_disjoint_status:487>: open failed: errno 13
09-11 17:44:24.625 1392 1419 W Adreno-ES20: <rb_perfcounter_gpu_disjoint_status:487>: open failed: errno 13
09-11 17:44:24.633 1392 1419 W Adreno-ES20: <rb_perfcounter_gpu_disjoint_status:487>: open failed: errno 13
09-11 17:44:24.633 1392 1419 W Adreno-ES20: <rb_perfcounter_gpu_disjoint_status:487>: open failed: errno 13
09-11 17:44:24.634 1392 1419 W Adreno-ES20: <rb_perfcounter_gpu_disjoint_status:487>: open failed: errno 13
09-11 17:44:24.747 2078 2078 W CvcChallengeAdapter: Handoff activity for CVC challenge for transactions is disabled with a flag
09-11 17:44:24.747 2078 2078 W FixInstrumentAdapter: Handoff activity for fix instrument for transactions is disabled with a flag
09-11 17:44:24.747 2078 2078 W PaymentsAuthAdapter: Handoff activity for payments auth is disabled with a flag
09-11 17:44:24.747 2078 2078 W AddInstrumentAdapter: Handoff activity for add instrument for transactions is disabled with a flag
09-11 17:44:24.776 2078 2370 W Settings: Setting mobile_data has moved from android.provider.Settings.Secure to android.provider.Settings.Global.
09-11 17:44:24.778 2078 2366 W CronetHttpEngine: Upload request without a content type.
09-11 17:44:25.835 2078 1177 W S3NetworkUtils: [Upload] response code: 500
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: #onFailure
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: com.google.android.apps.gsa.shared.speech.b.o: errorCode: -83903, engine: 2
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at com.google.android.apps.gsa.s3.t.b(SourceFile:7)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at com.google.android.apps.gsa.s3.o.a(SourceFile:9)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at com.google.android.apps.gsa.s3.m.QX(SourceFile:61)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at com.google.android.apps.gsa.s3.l.run(SourceFile:19)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:428)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at java.util.concurrent.FutureTask.run(FutureTask.java:237)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:428)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at java.util.concurrent.FutureTask.run(FutureTask.java:237)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at com.google.android.apps.gsa.shared.util.concurrent.a.af.run(Unknown Source)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at com.google.android.apps.gsa.shared.util.concurrent.a.bn.run(SourceFile:4)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at com.google.android.apps.gsa.shared.util.concurrent.a.bn.run(SourceFile:4)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at java.lang.Thread.run(Thread.java:761)
09-11 17:44:25.839 2078 2078 W ASPrefControlBase: at com.google.android.apps.gsa.shared.util.concurrent.a.aj.run(SourceFile:6)
09-11 17:44:25.855 713 8545 W InputMethodManagerService: Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@6985970 attribute=null, token = android.os.BinderProxy@63bc384
09-11 17:44:26.056 327 327 W SurfaceFlinger: couldn't log to binary event log: overflow.
09-11 17:44:26.132 1316 4373 W InvalidationClientCore: [TiclService] Ticl being stopped: Client: <ApplicationClientIdP: client_type=1018 client_name=9b72d349-1e3b-465b-9f0e-c949b1a6c961>, \n\006\n\004\010\003\020\001\022\022\t\r\025\007W\223\211\275\213\021\333F0\002L\251\"&\032\007\010\2022\020\003\030\001, <RunState: 2>
I've solved using the example response from google, only setting the right requestId.
EDIT 1: The error was evidently in the JSON response that the back-end was providing. I wasn't able to test this with my own endpoint because google doesn't allow self signed certificates even for testing
EDIT 2: The error was in the JSON response, everything is camel-case except nicknames, that i was writing as nickNames (wrong) ..