Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add XOAUTH2 support for gmail and outlook #4832

Closed
wants to merge 1 commit into from
Closed

Add XOAUTH2 support for gmail and outlook #4832

wants to merge 1 commit into from

Conversation

starshipcoder
Copy link
Contributor

Hello,

This PR is a refactor of the code for xoauth2 in GSOC_account_setup branch.

It manage only one method to obtain access token: the Authorization Code Grant.
It don't manage token from google device account.

It could be easily test with an outlook/hotmail account, for gmail it needs credentials for debug and release.

@ThierryHFR
Copy link

ThierryHFR commented Jun 17, 2020

Finally a free and easy to use solution for Xoauth2.
thank's!

@cketti
Copy link
Member

cketti commented Jun 19, 2020

@starshipcoder: Thanks for the pull request. This is quite a substantial change and not something I want to merge (or even look at in detail) before releasing a new stable version of the app. So it might be a while before I get to this.

@sledz
Copy link

sledz commented Jan 4, 2021

Any chance that this request will be merged in the near future?

There are a lot of users waiting for OAUTH support.

Base automatically changed from master to main January 21, 2021 00:00
@aiobofh
Copy link

aiobofh commented Jan 26, 2021

Just a curious question: What's the usual turn-around time for this to appear in Google Play Store? Such important feature. :)

@poldi171254
Copy link
Contributor

poldi171254 commented May 17, 2021

Hi starshipcoder,
Trying branch b7405b3 and have found a few issues.

When setting up the account, the password prompt disappears
Ac setup1

I then get an ssl failure when connecting

2021-05-17 17:42:24.323 2060-2100/system_process E/memtrack: Couldn't load memtrack module
2021-05-17 17:42:24.323 2060-2100/system_process W/android.os.Debug: failed to get memory consumption info: -1
2021-05-17 17:42:31.621 1784-1784/? W/adbd: timeout expired while flushing socket, closing
2021-05-17 17:42:48.961 2060-2100/system_process E/memtrack: Couldn't load memtrack module
2021-05-17 17:42:48.961 2060-2100/system_process W/android.os.Debug: failed to get memory consumption info: -1
2021-05-17 17:42:49.013 2844-10153/com.google.android.gms.persistent I/NetworkScheduler.Stats: Task com.google.android.gms/com.google.android.gms.netrec.module.NetRecGcmTaskService started execution. cause:4 exec_start_elapsed_seconds: 4612 [CONTEXT service_id=218 ]
2021-05-17 17:42:49.015 2844-10056/com.google.android.gms.persistent I/NetRec: [489] alql.a: Refreshing scores for 1 networks.
2021-05-17 17:42:49.025 2844-2862/com.google.android.gms.persistent W/GLSUser: [DeviceKeyStore] Cannot load key: Device key file not found.
2021-05-17 17:42:49.199 2844-2862/com.google.android.gms.persistent W/GLSUser: [AppCertManager] IOException while requesting key: 
    java.io.IOException: Invalid device key response.
        at hwy.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):49)
        at hww.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):5)
        at hww.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):46)
        at cpc.onTransact(:com.google.android.gms@202414022@20.24.14 (040700-319035315):5)
        at android.os.Binder.transact(Binder.java:914)
        at cta.onTransact(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at android.os.Binder.transact(Binder.java:914)
        at aaeo.onTransact(:com.google.android.gms@202414022@20.24.14 (040700-319035315):17)
        at android.os.Binder.execTransactInternal(Binder.java:1021)
        at android.os.Binder.execTransact(Binder.java:994)
2021-05-17 17:42:49.199 2844-2862/com.google.android.gms.persistent W/GLSUser: [DeviceKeyStore] Cannot load key: Device key file not found.
2021-05-17 17:42:49.204 2844-4020/com.google.android.gms.persistent E/aoob: Phenotype API error. Event # ccoz@9f7830b7, EventCode: 12 [CONTEXT service_id=51 ]
    aonf: 29503
        at aooh.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):27)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):91)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):86)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:42:49.204 2844-4020/com.google.android.gms.persistent E/AsyncOperation: serviceID=51, operation=GetCommittedConfigurationOperationCall
    OperationException[Status{statusCode=unknown status code: 29503, resolution=null}]
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):93)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):86)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:42:49.204 2844-4115/com.google.android.gms.persistent E/NetRec: [169] alnx.a: Could not retrieve server token for package com.google.android.apps.gcs
    java.util.concurrent.ExecutionException: rkq: 29503: 
        at avmp.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):5)
        at avmp.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):23)
        at alnx.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at alnx.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):4)
        at alnw.getHeaders(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at com.android.volley.toolbox.HttpClientStack.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):18)
        at sjr.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at bql.executeRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at com.android.volley.toolbox.BasicNetwork.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at sjs.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):16)
        at com.android.volley.NetworkDispatcher.processRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):6)
        at com.android.volley.NetworkDispatcher.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at com.android.volley.NetworkDispatcher.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
     Caused by: rkq: 29503: 
        at rqe.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):4)
        at aonp.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):3)
        at aooh.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):8)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):17)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:42:49.205 2844-4115/com.google.android.gms.persistent W/NetRec: [169] alnx.a: No server tokens extracted.
2021-05-17 17:42:49.351 2844-4115/com.google.android.gms.persistent E/Volley: [169] BasicNetwork.performRequest: Unexpected response code 400 for https://mobilenetworkscoring-pa.googleapis.com/v1/GetWifiQuality?key=AIzaSyBrlVtd67QvwS_Wz0Do4ZIdOeA6ThtVczU
2021-05-17 17:42:49.351 2844-10056/com.google.android.gms.persistent I/NetRec: [489] alql.b: Will retry failed rapid_refresh_scores_task task as standard refresh.
2021-05-17 17:42:49.353 2844-10056/com.google.android.gms.persistent W/NetRec: [489] alql.a: Unexpected exception com.android.volley.ClientError while waiting for score updates (com.android.volley.ClientError). Returning 2.
2021-05-17 17:42:49.357 2844-10056/com.google.android.gms.persistent I/NetRec: [489] NetRecChimeraGcmTaskService.a: Still entries pending update, scheduling new rapid_refresh_scores_task refresh.
2021-05-17 17:42:49.359 2844-10056/com.google.android.gms.persistent I/NetRec: [489] NetRecChimeraGcmTaskService.a: Completed rapid_refresh_scores_task score refresh task in 346 ms, returning 2
2021-05-17 17:42:49.361 2844-10154/com.google.android.gms.persistent I/NetworkScheduler.Stats: Task com.google.android.gms/com.google.android.gms.netrec.module.NetRecGcmTaskService finished executing. cause:4 result: 2 elapsed_millis: 373 uptime_millis: 373 exec_start_elapsed_seconds: 4612 [CONTEXT service_id=218 ]
2021-05-17 17:42:52.964 2315-2315/? I/wpa_supplicant: nl80211: send_and_recv->nl_recvmsgs failed: -33
2021-05-17 17:42:52.965 2060-4791/system_process D/WificondControl: Scan result ready event
2021-05-17 17:43:00.002 2244-2244/com.android.systemui D/KeyguardClockSwitch: Updating clock: 543
2021-05-17 17:43:00.008 2244-2626/com.android.systemui D/EGL_emulation: eglMakeCurrent: 0xd8f1a480: ver 3 1 (tinfo 0xd8f0f080)
2021-05-17 17:43:04.616 10508-10632/com.fsck.k9.debug W/m.fsck.k9.debu: Got a deoptimization request on un-deoptimizable method java.net.InetAddress[] libcore.io.Linux.android_getaddrinfo(java.lang.String, android.system.StructAddrinfo, int)
2021-05-17 17:43:19.104 1914-1914/? E/netmgr: Failed to open QEMU pipe 'qemud:network': Invalid argument
2021-05-17 17:43:19.415 2844-10056/com.google.android.gms.persistent I/NetworkScheduler.Stats: Task com.google.android.gms/com.google.android.gms.netrec.module.NetRecGcmTaskService started execution. cause:4 exec_start_elapsed_seconds: 4642 [CONTEXT service_id=218 ]
2021-05-17 17:43:19.416 2844-10153/com.google.android.gms.persistent I/NetRec: [493] alql.a: Refreshing scores for 1 networks.
2021-05-17 17:43:19.431 2844-2863/com.google.android.gms.persistent W/GLSUser: [DeviceKeyStore] Cannot load key: Device key file not found.
2021-05-17 17:43:19.431 2844-2863/com.google.android.gms.persistent W/GLSUser: [DeviceKeyStore] Cannot load key: Device key file not found.
2021-05-17 17:43:19.433 2844-4020/com.google.android.gms.persistent E/aoob: Phenotype API error. Event # ccoz@9f7830b7, EventCode: 12 [CONTEXT service_id=51 ]
    aonf: 29503
        at aooh.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):27)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):91)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):86)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:43:19.434 2844-4020/com.google.android.gms.persistent E/AsyncOperation: serviceID=51, operation=GetCommittedConfigurationOperationCall
    OperationException[Status{statusCode=unknown status code: 29503, resolution=null}]
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):93)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):86)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:43:19.434 2844-4113/com.google.android.gms.persistent E/NetRec: [167] alnx.a: Could not retrieve server token for package com.google.android.apps.gcs
    java.util.concurrent.ExecutionException: rkq: 29503: 
        at avmp.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):5)
        at avmp.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):23)
        at alnx.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at alnx.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):4)
        at alnw.getHeaders(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at com.android.volley.toolbox.HttpClientStack.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):18)
        at sjr.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at bql.executeRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at com.android.volley.toolbox.BasicNetwork.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at sjs.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):16)
        at com.android.volley.NetworkDispatcher.processRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):6)
        at com.android.volley.NetworkDispatcher.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at com.android.volley.NetworkDispatcher.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
     Caused by: rkq: 29503: 
        at rqe.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):4)
        at aonp.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):3)
        at aooh.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):8)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):17)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:43:19.434 2844-4113/com.google.android.gms.persistent W/NetRec: [167] alnx.a: No server tokens extracted.
2021-05-17 17:43:19.581 2844-4113/com.google.android.gms.persistent E/Volley: [167] BasicNetwork.performRequest: Unexpected response code 400 for https://mobilenetworkscoring-pa.googleapis.com/v1/GetWifiQuality?key=AIzaSyBrlVtd67QvwS_Wz0Do4ZIdOeA6ThtVczU
2021-05-17 17:43:19.581 2844-10153/com.google.android.gms.persistent I/NetRec: [493] alql.b: Will retry failed rapid_refresh_scores_task task as standard refresh.
2021-05-17 17:43:19.583 2844-10153/com.google.android.gms.persistent W/NetRec: [493] alql.a: Unexpected exception com.android.volley.ClientError while waiting for score updates (com.android.volley.ClientError). Returning 2.
2021-05-17 17:43:19.583 2844-10153/com.google.android.gms.persistent I/NetRec: [493] NetRecChimeraGcmTaskService.a: Still entries pending update, scheduling new rapid_refresh_scores_task refresh.
2021-05-17 17:43:19.585 2844-10153/com.google.android.gms.persistent I/NetRec: [493] NetRecChimeraGcmTaskService.a: Completed rapid_refresh_scores_task score refresh task in 170 ms, returning 2
2021-05-17 17:43:19.588 2844-10153/com.google.android.gms.persistent I/NetworkScheduler.Stats: Task com.google.android.gms/com.google.android.gms.netrec.module.NetRecGcmTaskService finished executing. cause:4 result: 2 elapsed_millis: 195 uptime_millis: 195 exec_start_elapsed_seconds: 4642 [CONTEXT service_id=218 ]
2021-05-17 17:43:20.135 1916-1916/? E/wifi_forwarder: RemoteConnection failed to initialize: RemoteConnection failed to open pipe
2021-05-17 17:43:24.435 2060-2100/system_process E/memtrack: Couldn't load memtrack module
2021-05-17 17:43:24.435 2060-2100/system_process W/android.os.Debug: failed to get memory consumption info: -1
2021-05-17 17:43:35.605 2060-3199/system_process D/WificondControl: Scan result ready event
2021-05-17 17:43:37.257 10508-10632/com.fsck.k9.debug D/ImapConnection: Connecting to imap.gmail.com as imap.gmail.com/74.125.130.109
2021-05-17 17:43:49.636 2844-9702/com.google.android.gms.persistent I/NetworkScheduler.Stats: Task com.google.android.gms/com.google.android.gms.netrec.module.NetRecGcmTaskService started execution. cause:4 exec_start_elapsed_seconds: 4673 [CONTEXT service_id=218 ]
2021-05-17 17:43:49.637 2844-9702/com.google.android.gms.persistent I/NetRec: [453] alql.a: Refreshing scores for 1 networks.
2021-05-17 17:43:49.650 2844-4278/com.google.android.gms.persistent W/GLSUser: [DeviceKeyStore] Cannot load key: Device key file not found.
2021-05-17 17:43:49.808 2844-4278/com.google.android.gms.persistent W/GLSUser: [AppCertManager] IOException while requesting key: 
    java.io.IOException: Invalid device key response.
        at hwy.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):49)
        at hww.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):5)
        at hww.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):46)
        at cpc.onTransact(:com.google.android.gms@202414022@20.24.14 (040700-319035315):5)
        at android.os.Binder.transact(Binder.java:914)
        at cta.onTransact(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at android.os.Binder.transact(Binder.java:914)
        at aaeo.onTransact(:com.google.android.gms@202414022@20.24.14 (040700-319035315):17)
        at android.os.Binder.execTransactInternal(Binder.java:1021)
        at android.os.Binder.execTransact(Binder.java:994)
2021-05-17 17:43:49.808 2844-4278/com.google.android.gms.persistent W/GLSUser: [DeviceKeyStore] Cannot load key: Device key file not found.
2021-05-17 17:43:49.814 2844-4020/com.google.android.gms.persistent E/aoob: Phenotype API error. Event # ccoz@9f7830b7, EventCode: 12 [CONTEXT service_id=51 ]
    aonf: 29503
        at aooh.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):27)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):91)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):86)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:43:49.814 2844-4020/com.google.android.gms.persistent E/AsyncOperation: serviceID=51, operation=GetCommittedConfigurationOperationCall
    OperationException[Status{statusCode=unknown status code: 29503, resolution=null}]
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):93)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):86)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:43:49.814 2844-4114/com.google.android.gms.persistent E/NetRec: [168] alnx.a: Could not retrieve server token for package com.google.android.apps.gcs
    java.util.concurrent.ExecutionException: rkq: 29503: 
        at avmp.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):5)
        at avmp.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):23)
        at alnx.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at alnx.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):4)
        at alnw.getHeaders(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at com.android.volley.toolbox.HttpClientStack.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):18)
        at sjr.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at bql.executeRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at com.android.volley.toolbox.BasicNetwork.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at sjs.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):16)
        at com.android.volley.NetworkDispatcher.processRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):6)
        at com.android.volley.NetworkDispatcher.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at com.android.volley.NetworkDispatcher.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
     Caused by: rkq: 29503: 
        at rqe.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):4)
        at aonp.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):3)
        at aooh.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):8)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):17)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:43:49.814 2844-4114/com.google.android.gms.persistent W/NetRec: [168] alnx.a: No server tokens extracted.
2021-05-17 17:43:49.959 2844-4114/com.google.android.gms.persistent E/Volley: [168] BasicNetwork.performRequest: Unexpected response code 400 for https://mobilenetworkscoring-pa.googleapis.com/v1/GetWifiQuality?key=AIzaSyBrlVtd67QvwS_Wz0Do4ZIdOeA6ThtVczU
2021-05-17 17:43:49.959 2844-9702/com.google.android.gms.persistent I/NetRec: [453] alql.b: Will retry failed rapid_refresh_scores_task task as standard refresh.
2021-05-17 17:43:49.961 2844-9702/com.google.android.gms.persistent W/NetRec: [453] alql.a: Unexpected exception com.android.volley.ClientError while waiting for score updates (com.android.volley.ClientError). Returning 2.
2021-05-17 17:43:49.962 2844-9702/com.google.android.gms.persistent I/NetRec: [453] NetRecChimeraGcmTaskService.a: Still entries pending update, scheduling new rapid_refresh_scores_task refresh.
2021-05-17 17:43:49.965 2844-9702/com.google.android.gms.persistent I/NetRec: [453] NetRecChimeraGcmTaskService.a: Completed rapid_refresh_scores_task score refresh task in 328 ms, returning 2
2021-05-17 17:43:49.967 2844-10056/com.google.android.gms.persistent I/NetworkScheduler.Stats: Task com.google.android.gms/com.google.android.gms.netrec.module.NetRecGcmTaskService finished executing. cause:4 result: 2 elapsed_millis: 351 uptime_millis: 351 exec_start_elapsed_seconds: 4673 [CONTEXT service_id=218 ]
2021-05-17 17:43:51.991 10508-10632/com.fsck.k9.debug W/m.fsck.k9.debu: Accessing hidden method Lcom/android/org/conscrypt/ConscryptFileDescriptorSocket;->setHostname(Ljava/lang/String;)V (greylist,core-platform-api, reflection, allowed)
2021-05-17 17:43:54.101 10508-10632/com.fsck.k9.debug W/m.fsck.k9.debu: Got a deoptimization request on un-deoptimizable method void libcore.io.Linux.connect(java.io.FileDescriptor, java.net.InetAddress, int)
2021-05-17 17:44:00.002 2244-2244/com.android.systemui D/KeyguardClockSwitch: Updating clock: 544
2021-05-17 17:44:06.222 10508-10632/com.fsck.k9.debug W/m.fsck.k9.debu: Got a deoptimization request on un-deoptimizable method void com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(long, com.android.org.conscrypt.NativeSsl, java.io.FileDescriptor, com.android.org.conscrypt.NativeCrypto$SSLHandshakeCallbacks, int)
2021-05-17 17:44:19.159 1914-1914/? E/netmgr: Failed to open QEMU pipe 'qemud:network': Invalid argument
2021-05-17 17:44:20.017 2844-9702/com.google.android.gms.persistent I/NetworkScheduler.Stats: Task com.google.android.gms/com.google.android.gms.netrec.module.NetRecGcmTaskService started execution. cause:4 exec_start_elapsed_seconds: 4703 [CONTEXT service_id=218 ]
2021-05-17 17:44:20.020 2844-9702/com.google.android.gms.persistent I/NetRec: [453] alql.a: Refreshing scores for 1 networks.
2021-05-17 17:44:20.032 2844-4278/com.google.android.gms.persistent W/GLSUser: [DeviceKeyStore] Cannot load key: Device key file not found.
2021-05-17 17:44:20.032 2844-4278/com.google.android.gms.persistent W/GLSUser: [DeviceKeyStore] Cannot load key: Device key file not found.
2021-05-17 17:44:20.034 2844-4020/com.google.android.gms.persistent E/aoob: Phenotype API error. Event # ccoz@22e8454a, EventCode: 12 [CONTEXT service_id=51 ]
    aonf: 29503
        at aooh.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):27)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):91)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):86)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:44:20.034 2844-4020/com.google.android.gms.persistent E/AsyncOperation: serviceID=51, operation=GetCommittedConfigurationOperationCall
    OperationException[Status{statusCode=unknown status code: 29503, resolution=null}]
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):93)
        at aoob.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):86)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:44:20.034 2844-4112/com.google.android.gms.persistent E/NetRec: [166] alnx.a: Could not retrieve server token for package com.google.android.apps.gcs
    java.util.concurrent.ExecutionException: rkq: 29503: 
        at avmp.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):5)
        at avmp.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):23)
        at alnx.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at alnx.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):4)
        at alnw.getHeaders(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at com.android.volley.toolbox.HttpClientStack.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):18)
        at sjr.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at bql.executeRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):1)
        at com.android.volley.toolbox.BasicNetwork.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):9)
        at sjs.performRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):16)
        at com.android.volley.NetworkDispatcher.processRequest(:com.google.android.gms@202414022@20.24.14 (040700-319035315):6)
        at com.android.volley.NetworkDispatcher.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at com.android.volley.NetworkDispatcher.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
     Caused by: rkq: 29503: 
        at rqe.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):4)
        at aonp.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):3)
        at aooh.a(:com.google.android.gms@202414022@20.24.14 (040700-319035315):8)
        at aabt.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):17)
        at bnin.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):2)
        at soy.b(:com.google.android.gms@202414022@20.24.14 (040700-319035315):12)
        at soy.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at sux.run(:com.google.android.gms@202414022@20.24.14 (040700-319035315):0)
        at java.lang.Thread.run(Thread.java:919)
2021-05-17 17:44:20.034 2844-4112/com.google.android.gms.persistent W/NetRec: [166] alnx.a: No server tokens extracted.
2021-05-17 17:44:20.180 2844-4112/com.google.android.gms.persistent E/Volley: [166] BasicNetwork.performRequest: Unexpected response code 400 for https://mobilenetworkscoring-pa.googleapis.com/v1/GetWifiQuality?key=AIzaSyBrlVtd67QvwS_Wz0Do4ZIdOeA6ThtVczU
2021-05-17 17:44:20.181 2844-9702/com.google.android.gms.persistent I/NetRec: [453] alql.b: Will retry failed rapid_refresh_scores_task task as standard refresh.
2021-05-17 17:44:20.183 2844-9702/com.google.android.gms.persistent W/NetRec: [453] alql.a: Unexpected exception com.android.volley.ClientError while waiting for score updates (com.android.volley.ClientError). Returning 2.
2021-05-17 17:44:20.186 2844-9702/com.google.android.gms.persistent I/NetRec: [453] NetRecChimeraGcmTaskService.a: Still entries pending update, scheduling new rapid_refresh_scores_task refresh.
2021-05-17 17:44:20.188 2844-9702/com.google.android.gms.persistent I/NetRec: [453] NetRecChimeraGcmTaskService.a: Completed rapid_refresh_scores_task score refresh task in 170 ms, returning 2
2021-05-17 17:44:20.191 2844-10154/com.google.android.gms.persistent I/NetworkScheduler.Stats: Task com.google.android.gms/com.google.android.gms.netrec.module.NetRecGcmTaskService finished executing. cause:4 result: 2 elapsed_millis: 194 uptime_millis: 194 exec_start_elapsed_seconds: 4703 [CONTEXT service_id=218 ]
2021-05-17 17:44:20.194 1916-1916/? E/wifi_forwarder: RemoteConnection failed to initialize: RemoteConnection failed to open pipe

Finally, the account is still created despite the ssl failure
ac dud

Thanks,

@starshipcoder
Copy link
Contributor Author

Hi Poldi

It is normal the password field disapear as in XOauth2, the passsword is set later in a trust webview

I think you need to create google credentials for testing with gmail

In this page you need to create a OAuth 2.0 Client IDs
https://console.cloud.google.com/apis/credentials

And then put the id in your local.properties

debugGmailClientId=your_id.apps.googleusercontent.com

You should see this webview if it works

device-2021-05-27-182729
device-2021-05-27-182746

Regards

@poldi171254
Copy link
Contributor

Hi starshipcoder,

This is what I have in /mail/common/build.cradle

`buildConfigField "String", "GOOGLE_CLIENT_ID", """+getDebugGmailClientId()+"""

def getDebugGmailClientId() {
Properties properties = new Properties()
if (project.rootProject.file('local.properties').exists()) {
properties.load(project.rootProject.file('local.properties').newDataInputStream())
return properties.getProperty("debugGmailClientId")
} else {
return "null"
}
}
`

This is what I have in local.properties

debugGmailClientId=884425652828-kqlgfmsfqrabrlon8951khfh41v71b2q.apps.googleusercontent.com

@poldi171254
Copy link
Contributor

I've added the id to my local.properties and am now getting this error

uri-mismatch

My client config looks like this

client id

@starshipcoder
Copy link
Contributor Author

Hi Poldi

As you are in debug, the package name should be com.fsck.k9.debug

I hope it help

Regards

@poldi171254
Copy link
Contributor

I've added the id to my local.properties and am now getting this error

uri-mismatch

My client config looks like this

client id

@poldi171254
Copy link
Contributor

Wow, works as expected.
Great job
works

@rol1
Copy link

rol1 commented Jun 18, 2021

@poldi171254: can you please briefly summarize what you did that it now works?

Thank you very much!

@poldi171254
Copy link
Contributor

Go to
https://console.cloud.google.com/apis/credentials

noProj

Create a new project. It doesn't matter what you call it.
CreateProj
Select the newly created project
SelectProj

Create consent
CreateConsent

Provide application info (you can leave all non-required fields empty). Again, it doesn't realy matter what name you choose for testing
appInfo

Save scopes (no input required on this screen) and continue
scopes

Add your test user(s)
AddTestUser
Create the credentials
createCredentials
Create OAuth client id
CreateOAuthId
Make sure the package is
com.fsck.k9.debug
ClientId

And then put the id in your local.properties

debugGmailClientId=your_id.apps.googleusercontent.com

Cheers,
Leo

@rol1
Copy link

rol1 commented Jun 19, 2021

@poldi171254 Great, thank you very much!

@WingsLikeEagles
Copy link

Ping. Just curious where this stands. Super excited and appreciate all the work being done on it!

@cketti
Copy link
Member

cketti commented Aug 21, 2021

Rebased version of this pull request is available as #5385

@cketti cketti closed this Aug 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants