ແພັກເກັດ Click

ທຸກໆແພັກເກັດແອັບພລິເຄຊັນ click ຕ້ອງປະກອບມີຢ່າງໜ້ອຍ 3 ໄຟລ໌:

ໄຟລ໌ manifest.json

ປະກອບດ້ວຍຂໍ້ມູນການປະກາດແອັບພລິເຄຊັນ ເຊັ່ນ: ຊື່ແອັບ, ຄຳອະທິບາຍ, ຜູ້ສ້າງ, ເປົ້າໝາຍ framework sdk, ແລະ ເວີຊັນ.

Example manifest.json file:

{
    "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"
        }
    }
}
ໄຟລ໌ນະໂຍບາຍໂປຣໄຟລ໌ AppArmor

ລະບຸນະໂຍບາຍທີ່ແອັບຈຳເປັນຕ້ອງໃຊ້ເພື່ອໃຫ້ເຮັດວຽກໄດ້ຢ່າງຖືກຕ້ອງ. ເບິ່ງ ຄວາມປອດໄພ ແລະ ການແຍກແອັບ ດ້ານລຸ່ມສຳລັບຂໍ້ມູນເພີ່ມເຕີມ.

ໄຟລ໌ .desktop

ໄຟລ໌ launcher ຈະບອກ UT ວິທີການເປີດແອັບ, ຊື່ ແລະ ໄອຄອນທີ່ຈະສະແດງໃນໜ້າຈໍຫຼັກ ແລະ ຄຸນສົມບັດອື່ນໆ.

Example of app.desktop:

[Desktop Entry]
Name=Application title
Exec=qmlscene qml/Main.qml
Icon=assets/logo.svg
Terminal=false
Type=Application
X-Ubuntu-Touch=true

ລາຍຊື່ຄຸນສົມບັດເບື້ອງຕົ້ນ:

  • Name: ຊື່ແອັບພລິເຄຊັນຕາມທີ່ສະແດງໃນ dash

  • Exec: ເສັ້ນທາງ (Path) ໄປຫາໄຟລ໌ທີ່ໃຊ້ລັນໂປຣແກຣມ

  • Icon: ເສັ້ນທາງໄປຫາໄອຄອນທີ່ຈະສະແດງ

  • Terminal: false ຖ້າຈະບໍ່ໃຫ້ລັນໃນໜ້າຈໍເທີມິນໍ

  • Type: ລະບຸປະເພດຂອງໄຟລ໌ launcher. ປະເພດສາມາດເປັນ ແອັບພລິເຄຊັນ (Application), ລິ້ງ (Link) ຫຼື ໄດເຣັກທໍຣີ (Directory).

  • X-Ubuntu-Touch: true ເພື່ອເຮັດໃຫ້ເຫັນແອັບໄດ້

  • X-Ubuntu-XMir-Enable: true ຖ້າແອັບຂອງທ່ານຖືກສ້າງມາສຳລັບ X

  • X-Ubuntu-Supported-Orientations: landscape (ລວງນອນ) ຫຼື portrait (ລວງຕັ້ງ) ເພື່ອບັງຄັບໃຫ້ແອັບເລີ່ມຕົ້ນໃນໂໝດນັ້ນໆ.

ຄວາມປອດໄພ ແລະ ການແຍກແອັບ

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.

Example apparmor.json file:

{
    "policy_version": 16.04,
    "policy_groups": [
        "networking",
        "webview",
        "content_exchange"
    ]

}

ສຳລັບລາຍຊື່ກຸ່ມນະໂຍບາຍທັງໝົດທີ່ມີ, ເບິ່ງ ກຸ່ມນະໂຍບາຍ AppArmor.