Paquete «click»#
Cada paquete de aplicación click
debe contener al menos 3 archivos:
- archivo
manifest.json
Contiene declaraciones de aplicaciones tales como nombre, descripción, autor, kit de desarrollo de programas (sdk) objetivo y versión.
Ejemplo de archivo
manifest.json
:{ "name": "myapp.author", "title": "App Title", "version": "0.1" "description": "Description of the app", "framework": "ubuntu-sdk-16.04", "maintainer": "xxxx <xxx@xxxx>", "hooks": { "myapp": { "apparmor": "apparmor.json", "desktop": "app.desktop" } } }
- Archivo de política del perfil de «AppArmor»
Contiene la política que la aplicación necesita para funcionar correctamente. Vea Security and app isolation (seguridad y aislamiento de aplicaciones) más adelante para obtener más información sobre este archivo.
- archivo
.desktop
El archivo lanzador dirá a UT como lanzar la aplicación, que nombre e icono mostrar en la pantalla principal y otras propiedades.
Ejemplo de
app.desktop
:[Desktop Entry] Name=Application title Exec=qmlscene qml/Main.qml Icon=assets/logo.svg Terminal=false Type=Application X-Ubuntu-Touch=true
Lista no exhaustiva de propiedades:
«Name» (nombre): título que la aplicación muestra en el tablero
«Exec» (ejecutable): ruta al archivo ejecutable
«Icon» (icono): ruta al icono que mostrar
«Terminal» (terminal):
false
(falso) si no se ejecutará en una ventana de terminal«Type» (tipo): especifica el tipo de archivo lanzador. El tipo puede ser aplicación, enlace o directorio.
«X-Ubuntu-Touch»:
true
(verdadero) para hacer la aplicación visible«X-Ubuntu-XMir-Enable»:
true
(verdadero) si su aplicación está hecha para XX-Ubuntu-Supported-Orientations:
landscape
orportrait
to force your app start in landscape mode and portrait mode respectively.
Seguridad y aislamiento de las aplicaciones#
All Ubuntu apps are confined respecting AppArmor access control mechanism (see Application Confinement) , meaning they only have access to their own resources and are isolated from other apps and parts of the system. The developer must declare which policy groups are needed for the app or scope to function properly with an apparmor .json
file.
Ejemplo de archivo apparmor.json
:
{
"policy_version": 16.04,
"policy_groups": [
"networking",
"webview",
"content_exchange"
]
}
Para una lista completa de grupos de políticas disponibles, vea Grupos de políticas de «AppArmor».