Eu só posso responder à segunda parte da questão (sobre o arquivo .application), porque não estou familiarizado com os serviços oferecidos pela conta U1.
Você está correto, pois precisa de um arquivo .application
e, na verdade, também precisa de um arquivo .service
. Felizmente, é possível enviá-los também com aplicativos confinados enviados em um pacote de cliques. Seu arquivo manifest.json
deve conter algo ao longo destas linhas:
{
...
"name": "com.example.package",
"hooks": {
"my-app": {
"account-application": "my-app.application",
"account-service": "my-app.service",
"apparmor": "my-app.json",
"desktop": "my-app.desktop"
}
},
...
}
Quando o pacote de cliques é instalado, os arquivos .application
e .service
são processados e instalados em ~/.local/share/accounts/
e seus nomes (e, portanto, IDs) são alterados para <package-name>_<application-name>.{service,application}
, o que no exemplo acima resultaria em com.example.package_my-app.{service,application}
.
Apenas para completar, estou mostrando um exemplo de como esses arquivos podem ser:
my-app.application
<?xml version="1.0" encoding="UTF-8" ?>
<application>
<service-types>
<service-type id="com.example.package_my-app">
<description>Login into XXX using your U1 account</description>
</service-type>
</services-types>
</application>
e
my-app.service
<?xml version="1.0" encoding="UTF-8"?>
<service>
<type>com.example.package_my-app</type>
<name>U1 for XXX</name>
<provider>ubuntuone</provider>
</service>