எழுதக்கூடிய கோப்பகங்கள்

பயன்பாட்டு சிறைவாசம் என்பது உபுண்டு டச் பாதுகாப்பு கருத்தின் ஒரு பகுதியாகும். Apparmor கொள்கைகளின்படி மட்டுமே பயன்பாடுகளுக்கு இடையில் தரவைப் பரிமாறிக்கொள்ள முடியும், முக்கியமாக உள்ளடக்கமையம். இந்த வழிகாட்டியில் விளக்கப்பட்டுள்ள மூன்று பயன்பாட்டு குறிப்பிட்ட கோப்பகங்களில் ஒன்றில் அமைந்துள்ள கோப்புகளை மட்டுமே பயன்பாடுகள் படித்து எழுத முடியும்.

நிலையான பாதைகள்

கீழே விளக்கப்பட்டுள்ள பயன்பாட்டு கோப்பகங்களுக்கான எழுதும் அணுகலைத் தவிர, பயன்பாடு /home/phablet/.cache/upstart/application-click-<fullappname>_<appname>_<பதிப்பு>.log இல் அமைந்துள்ள பயன்பாட்டு பதிவு கோப்பில் பிழைத்திருத்த செய்திகளை எழுதலாம். பதிவு கோப்பில் செய்திகளைச் சேர்க்க, Qt பிழைத்திருத்த செயல்பாடுகளைப் பயன்படுத்தவும்.

கட்டமைப்பு

பாதை: /home/phablet/.config/ <fullappname>/

உள்ளமைவு கோப்புகளை சேமிக்க இது இடம். எடுத்துக்காட்டாக, இசை பயன்பாடு அதன் உள்ளமைவை /home/phablet/.config/com.ubuntu.music/com.ubuntu.music.conf க்கு சேமிக்கிறது.

கேச்

பாதை: /home/phablet/.cache/ <fullappname>/

பிற்கால பயன்பாட்டிற்கான தரவை கேச் செய்வதற்கான இடம் இது. கேச் உள்ளடக்க மையத்தால் பயன்படுத்தப்படுகிறது. எடுத்துக்காட்டாக இசை பயன்பாட்டுடன் பகிரப்பட்ட கோப்புகளை /home/pablet/.cache/com.ubuntu.music/hubincomming/ இல் காணலாம்.

Note

கேச் கோப்பகத்தில் உள்ள தரவு தற்காலிகமாக கருதப்பட வேண்டும், மேலும் இந்த அடைவு அழிக்கப்பட்டால் பயன்பாடு பொதுவாக செயல்பட வேண்டும் - கருவியில் சில இடங்களை மீட்டெடுக்க கேச் அழித்தல் பொதுவாக செய்யப்படுகிறது. பயனர் கணக்கு தகவலை இங்கே சேமிக்க வேண்டாம் :)

பயன்பாட்டு தரவு

பாதை: /home/phablet/.local/share/ <fullappname>/

உங்கள் பயன்பாடு எந்த தரவையும் சேமிக்கிறது. எடுத்துக்காட்டாக, இசை பயன்பாடு அதன் தரவு தளங்களை /home/pablet/.local/share/com.ubuntu.music/தரவுத்தளங்கள்/ என சேமிக்கிறது.

சி ++ இல் நிலையான பாதைகளைப் பயன்படுத்துதல்

கியுடி தலைப்பு QStandardPaths பயன்பாட்டின் எழுதக்கூடிய இடங்களை C ++ இல் வழங்குகிறது:

#include <QStandardPaths>
...
QString configPath = QStandardPaths::writableLocation(QStandardPaths::AppConfigLocation);
QString cachePath = QStandardPaths::writableLocation(QStandardPaths::CacheLocation);
QString appDataPath = QStandardPaths::writableLocation(QStandardPaths::AppDataLocation);
...

QStandardPaths சரங்களின் மதிப்பு QT பயன்பாட்டு பெயர், ஆகியவற்றால் தீர்மானிக்கப்படுவதால், இது சொடுக்கு செய்யக்கூடிய பயன்பாட்டு பெயராக இருக்க வேண்டும்.

Warning

அமைப்பு பெயர் இந்த செயல்பாடுகளால் திரும்பிய பாதைகளையும் மாற்றும்-நீங்கள் இதைச் செய்ய வேண்டுமானால், அதை சொடுக்கு செய்யக்கூடிய பயன்பாட்டு பெயருக்கும் அமைக்கவும், இல்லையெனில் பாதைகள் கருவியில் வேலை செய்யாது.

QML இல் நிலையான பாதைகளைப் பயன்படுத்துதல்

கியுடி தொகுதி Qt.labs.platform QML இல் பயன்பாட்டின் எழுதக்கூடிய இருப்பிடங்களை வழங்குகிறது:

import Qt.labs.platform 1.0
...
Label
{
    text: StandardPaths.writableLocation(StandardPaths.AppConfigLocation)
}
Label
{
    text: StandardPaths.writableLocation(StandardPaths.CacheLocation)
}
Label
{
    text: StandardPaths.writableLocation(StandardPaths.AppDataLocation)
}
...

Qstandardpaths பாதைகளை ('/பேப்லெட்/வீடு/...') தருகிறது என்பதைக் கவனியுங்கள், மேலும் QML நிலையானபாதைகள் முகவரிகளைத் தருகிறது ('file:///phablet/home/...'). பயன்பாடு QML மற்றும் C ++ க்கு இடையில் இருப்பிட சரங்களை பகிர்ந்து கொண்டால் இது சிறப்பாக கருதப்பட வேண்டும்.