Treballar en el subsistema de comptes en línia

El subsistema de Comptes en línia consta dels següents components:

  • La IU dels comptes: proporciona a l’usuari els components que s’enfronten i les classes base per a tota la funció Comptes en línia. Més en detall, trobareu aquests subdirectoris:

    • click-hooks: els programes s’executen quan s’instal·la o elimina una aplicació Click que fa ús de la funcionalitat de comptes en línia

    • client: la biblioteca que les aplicacions del client poden utilitzar per a sol·licitar accés a un compte

    • online-accounts-services: el servei principal, implementant la lògica per a processar les sol·licituds del client; no té IU (interfície d’usuari), però és capaç d’adjuntar la IU online-accounts-ui a sobre de la IU d’una aplicació

    • online-accounts-ui: la interfície d’usuari que apareix quan les aplicacions interactuen amb els comptes en línia (per exemple, el diàleg que apareix quan una aplicació sol·licita accés a un compte)

    • plugins: les classes base i els elements QML que els connectors de compte poden utilitzar en la seva implementació

    • system-settings-plugin: la interfície d’usuari per al plafó Comptes a l’aplicació Configuració del sistema

  • Els connectors de comptes defineixen els proveïdors de comptes disponibles i implementen la interfície d’usuari i la lògica per crear els comptes

  • Un conjunt de components del Projecte AccountsSSO: mentre el desenvolupament passa en els projectes ascendents, les bifurcacions d’UBports afegeixen el paquet Debian. Aquests projectes són:

  • El servei account-polld, que s’executa en segon pla i comprova cada 5 minuts per a l’activitat del compte nou (l’interval es decideix pel servei Ubuntu Push)

  • El account-polld-plugins-go, un repositori de connectors per al servei account-polld. Els connectors d’aquest repositori estan escrits a Go, però els connectors es poden escriure en qualsevol idioma i poden residir en diferents repositoris

Depuració de la vostra aplicació web

Problemes de creació de comptes

Pot passar que la creació del compte falli, ja sigui per problemes de comunicació amb el servidor remot, o per algun error en el propi connector del compte (això pot passar fàcilment mentre es desenvolupa un connector nou). Per a depurar aquestes situacions, podeu obrir un terminal (és més fàcil si es fa des d’un intèrpret d’ordres remot – podeu guanyar un intèrpret d’ordres al dispositiu utilitzant Accés a la consola via adb o Accés a la consola via adb) i iniciar el online-accounts-service en mode de depuració:

pkill online-accounts-service
OAU_LOGGING_LEVEL=2 OAU_DAEMON_TIMEOUT=9999 online-accounts-service

Si creieu que el problema pot ser causat per alguns errors en la fase d’autenticació, també podeu habilitar l’enregistrament extensiu de signond d’aquesta manera:

pkill signond
export SSO_LOGGING_OUTPUT="stdout"    # signond logs to the syslog by default
SSO_LOGGING_LEVEL=2 SSO_DAEMON_TIMEOUT=9999 signond

En aquest punt, repetiu l’operació que estava fallant, i obtindreu tota la sortida de depuració impresa a la consola.