Qt for HarmonyOS/qtohosextras doc/FileShare Namespace: Difference between revisions
Created page with "<!-- Source: qtohosextras-fileshare.html --> <span id="fileshare-namespace"></span> = FileShare Namespace = <span class="small-subtitle">(QtOhosExtras::FileShare)<br /> </span> The FileShare to expose file permission API. More... <div class="table"> {| class="wikitable alignedsummary" |- | class="memItemLeft rightAlign topAlign"| Header: |..." |
No edit summary |
||
| Line 13: | Line 13: | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| Header: | | class="memItemLeft rightAlign topAlign"| Header: | ||
| class="memItemRight bottomAlign"| <span class="preprocessor">#include </span> | | class="memItemRight bottomAlign"| <span class="preprocessor">#include <FileShare></span> | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| qmake: | | class="memItemLeft rightAlign topAlign"| qmake: | ||
| Line 83: | Line 83: | ||
{| class="wikitable alignedsummary" | {| class="wikitable alignedsummary" | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| QSharedPointer | | class="memItemLeft rightAlign topAlign"| QSharedPointer<QtOhosExtras::FileShare::ActionResult> | ||
| class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#activatePermission|activatePermission]]'''(const QList & | | class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#activatePermission|activatePermission]]'''(const QList<QtOhosExtras::FileShare::PathPolicy> &''policies'') | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| QSharedPointer | | class="memItemLeft rightAlign topAlign"| QSharedPointer<QtOhosExtras::FileShare::CheckResult> | ||
| class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#checkPersistent|checkPersistent]]'''(const QList & | | class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#checkPersistent|checkPersistent]]'''(const QList<QtOhosExtras::FileShare::PathPolicy> &''policies'') | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| QSharedPointer | | class="memItemLeft rightAlign topAlign"| QSharedPointer<QtOhosExtras::FileShare::ActionResult> | ||
| class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#deactivatePermission|deactivatePermission]]'''(const QList & | | class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#deactivatePermission|deactivatePermission]]'''(const QList<QtOhosExtras::FileShare::PathPolicy> &''policies'') | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| QSharedPointer | | class="memItemLeft rightAlign topAlign"| QSharedPointer<QtOhosExtras::FileShare::ActionResult> | ||
| class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#persistPermission|persistPermission]]'''(const QList & | | class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#persistPermission|persistPermission]]'''(const QList<QtOhosExtras::FileShare::PathPolicy> &''policies'') | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| const QMetaObject * | | class="memItemLeft rightAlign topAlign"| const QMetaObject * | ||
| Line 101: | Line 101: | ||
| class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#qt_getEnumName|qt_getEnumName]]'''(''QtOhosExtras::FileShare::OperationMode'') | | class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#qt_getEnumName|qt_getEnumName]]'''(''QtOhosExtras::FileShare::OperationMode'') | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| QSharedPointer | | class="memItemLeft rightAlign topAlign"| QSharedPointer<QtOhosExtras::FileShare::ActionResult> | ||
| class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#revokePermission|revokePermission]]'''(const QList & | | class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#revokePermission|revokePermission]]'''(const QList<QtOhosExtras::FileShare::PathPolicy> &''policies'') | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| QFlags | | class="memItemLeft rightAlign topAlign"| QFlags<OperationModes::enum_type> | ||
| class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#operator-7c|operator|]]'''(OperationModes::enum_type ''f1'', OperationModes::enum_type ''f2'') | | class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#operator-7c|operator|]]'''(OperationModes::enum_type ''f1'', OperationModes::enum_type ''f2'') | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| QFlags | | class="memItemLeft rightAlign topAlign"| QFlags<OperationModes::enum_type> | ||
| class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#operator-7c-1|operator|]]'''(OperationModes::enum_type ''f1'', QFlags ''f2'') | | class="memItemRight bottomAlign"| '''[[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#operator-7c-1|operator|]]'''(OperationModes::enum_type ''f1'', QFlags<OperationModes::enum_type> ''f2'') | ||
|- | |- | ||
| class="memItemLeft rightAlign topAlign"| QIncompatibleFlag | | class="memItemLeft rightAlign topAlign"| QIncompatibleFlag | ||
| Line 172: | Line 172: | ||
== Type Documentation == | == Type Documentation == | ||
enum FileShare::<span class="name">OperationMode</span><br />flags FileShare::<span class="name">OperationModes</span> | |||
flags FileShare::<span class="name">OperationModes</span> | |||
Defines permissions on path. See [https://developer.huawei.com/consumer/en/doc/harmonyos-references-V5/file_share-V5#fileshare_operationmode FileShare_OperationMode]. The flags can be combined using bitwise operations. | Defines permissions on path. See [https://developer.huawei.com/consumer/en/doc/harmonyos-references-V5/file_share-V5#fileshare_operationmode FileShare_OperationMode]. The flags can be combined using bitwise operations. | ||
| Line 187: | Line 185: | ||
|- | |- | ||
| class="topAlign"| <code>QtOhosExtras::FileShare::Read</code> | | class="topAlign"| <code>QtOhosExtras::FileShare::Read</code> | ||
| class="topAlign tblval"| <code>1 | | class="topAlign tblval"| <code>1 << 0</code> | ||
| class="topAlign"| Read on path | | class="topAlign"| Read on path | ||
|- | |- | ||
| class="topAlign"| <code>QtOhosExtras::FileShare::Write</code> | | class="topAlign"| <code>QtOhosExtras::FileShare::Write</code> | ||
| class="topAlign tblval"| <code>1 | | class="topAlign tblval"| <code>1 << 1</code> | ||
| class="topAlign"| Write on path | | class="topAlign"| Write on path | ||
|} | |} | ||
| Line 199: | Line 197: | ||
This enum was introduced or modified in Qt 5.12.12. | This enum was introduced or modified in Qt 5.12.12. | ||
The OperationModes type is a typedef for [[../qtcore/qflags.html|QFlags]]. It stores an OR combination of OperationMode values. | The OperationModes type is a typedef for [[../qtcore/qflags.html|QFlags]] <OperationMode>. It stores an OR combination of OperationMode values. | ||
'''See also''' [[Qt_for_HarmonyOS/qtohosextras_doc/PathPolicy_Class|PathPolicy]]. | '''See also''' [[Qt_for_HarmonyOS/qtohosextras_doc/PathPolicy_Class|PathPolicy]]. | ||
<span | == '''enum FileShare'''::<span class="name">PathPolicyError</span> == | ||
<span id="PathPolicyError-enum"></span>Defines permission policy error codes. See [https://developer.huawei.com/consumer/en/doc/harmonyos-references-V5/file_share-V5#fileshare_policyerrorcode FileShare_PolicyErrorCode]. | |||
Defines permission policy error codes. See [https://developer.huawei.com/consumer/en/doc/harmonyos-references-V5/file_share-V5#fileshare_policyerrorcode FileShare_PolicyErrorCode]. | |||
<div class="table"> | <div class="table"> | ||
| Line 249: | Line 245: | ||
<span id="function-documentation"></span> | <span id="function-documentation"></span> | ||
== Function Documentation == | == Function Documentation == | ||
<span id="activatePermission"></span> | <span id="activatePermission"></span> | ||
=== activatePermission === | === activatePermission === | ||
<syntaxhighlight lang="cpp"> | <syntaxhighlight lang="cpp"> | ||
QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::activatePermission(const QList<QtOhosExtras::FileShare::PathPolicy> & | QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::activatePermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| Line 269: | Line 264: | ||
<syntaxhighlight lang="cpp"> | <syntaxhighlight lang="cpp"> | ||
QSharedPointer<QtOhosExtras::FileShare::CheckResult> FileShare::checkPersistent(const QList<QtOhosExtras::FileShare::PathPolicy> & | QSharedPointer<QtOhosExtras::FileShare::CheckResult> FileShare::checkPersistent(const QList<QtOhosExtras::FileShare::PathPolicy> &policies) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| Line 284: | Line 279: | ||
<syntaxhighlight lang="cpp"> | <syntaxhighlight lang="cpp"> | ||
QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::deactivatePermission(const QList<QtOhosExtras::FileShare::PathPolicy> & | QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::deactivatePermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| Line 299: | Line 294: | ||
<syntaxhighlight lang="cpp"> | <syntaxhighlight lang="cpp"> | ||
QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::persistPermission(const QList<QtOhosExtras::FileShare::PathPolicy> & | QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::persistPermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| Line 310: | Line 305: | ||
'''See also''' [[Qt_for_HarmonyOS/qtohosextras_doc/ActionResult_Class|ActionResult]], [[Qt_for_HarmonyOS/qtohosextras_doc/PathPolicy_Class|PathPolicy]], [[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#revokePermission|revokePermission]](), and [[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#activatePermission|activatePermission]](). | '''See also''' [[Qt_for_HarmonyOS/qtohosextras_doc/ActionResult_Class|ActionResult]], [[Qt_for_HarmonyOS/qtohosextras_doc/PathPolicy_Class|PathPolicy]], [[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#revokePermission|revokePermission]](), and [[Qt_for_HarmonyOS/qtohosextras_doc/FileShare_Namespace#activatePermission|activatePermission]](). | ||
<span id="qt_getEnumMetaObject"></span> | <span id="qt_getEnumMetaObject"></span><syntaxhighlight> | ||
const QMetaObject *FileShare::qt_getEnumMetaObject(QtOhosExtras::FileShare::OperationMode) | |||
</syntaxhighlight><span id="qt_getEnumName"></span><syntaxhighlight> | |||
const char *FileShare::qt_getEnumName(QtOhosExtras::FileShare::OperationMode) | |||
</syntaxhighlight><span id="qt_getEnumName"></span><span id="revokePermission"></span> | |||
<span id="revokePermission"></span> | |||
=== revokePermission === | === revokePermission === | ||
<syntaxhighlight lang="cpp"> | <syntaxhighlight lang="cpp"> | ||
QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::revokePermission(const QList<QtOhosExtras::FileShare::PathPolicy> & | QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::revokePermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| Line 335: | Line 328: | ||
<syntaxhighlight lang="cpp"> | <syntaxhighlight lang="cpp"> | ||
QFlags<OperationModes::enum_type> FileShare::operator|(OperationModes::enum_type | QFlags<OperationModes::enum_type> FileShare::operator|(OperationModes::enum_type f1, OperationModes::enum_type f2) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| Line 342: | Line 335: | ||
<syntaxhighlight lang="cpp"> | <syntaxhighlight lang="cpp"> | ||
QFlags<OperationModes::enum_type> FileShare::operator|(OperationModes::enum_type | QFlags<OperationModes::enum_type> FileShare::operator|(OperationModes::enum_type f1, QFlags<OperationModes::enum_type> f2) | ||
</syntaxhighlight><syntaxhighlight> | |||
QIncompatibleFlag FileShare::operator|(OperationModes::enum_type f1, int f2) | |||
</syntaxhighlight> | </syntaxhighlight> | ||
</div> | </div> | ||
Revision as of 07:32, 28 January 2026
The FileShare to expose file permission API. More...
| Header: | #include <FileShare> |
| qmake: | QT += ohosextras |
| Since: | Qt 5.12.12 |
Classes
| class | ActionResult |
| class | CheckResult |
| class | PathPolicy |
| class | PathPolicyCheckResult |
| class | PathPolicyErrorInfo |
Types
| enum | OperationMode { Read, Write } |
| flags | OperationModes |
| enum | PathPolicyError { Unknown, PersistenceForbidden, InvalidMode, InvalidPath, PermissionNotPersisted } |
Functions
| QSharedPointer<QtOhosExtras::FileShare::ActionResult> | activatePermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies) |
| QSharedPointer<QtOhosExtras::FileShare::CheckResult> | checkPersistent(const QList<QtOhosExtras::FileShare::PathPolicy> &policies) |
| QSharedPointer<QtOhosExtras::FileShare::ActionResult> | deactivatePermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies) |
| QSharedPointer<QtOhosExtras::FileShare::ActionResult> | persistPermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies) |
| const QMetaObject * | qt_getEnumMetaObject(QtOhosExtras::FileShare::OperationMode) |
| const char * | qt_getEnumName(QtOhosExtras::FileShare::OperationMode) |
| QSharedPointer<QtOhosExtras::FileShare::ActionResult> | revokePermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies) |
| QFlags<OperationModes::enum_type> | operator|(OperationModes::enum_type f1, OperationModes::enum_type f2) |
| QFlags<OperationModes::enum_type> | operator|(OperationModes::enum_type f1, QFlags<OperationModes::enum_type> f2) |
| QIncompatibleFlag | operator|(OperationModes::enum_type f1, int f2) |
Detailed Description
The FileShare to expose file permission API.
This API uses file system paths, which differ from the URIs used internally by HarmonyOS. For example, the path/data/storage/el1/bundle/entry/resources/resfile/test.txtfile://com.your.example/data/storage/el1/bundle/entry/resources/resfile/test.txtcom.your.exampleTo learn more about file paths and URIs in HarmonyOS, see sandbox documentation.
Warning: This API relies on the underlying OHOS implementation. The following functions: persistPermission(), revokePermission(), activatePermission(), deactivatePermission(), and checkPersistent() may be unavailable on some devices. Additionally, there may be limitations on the maximum number of policies, and certain permissions may need to be explicitly granted to the application.
For more details and limitations, refer to the API documentation.
Classes
class ActionResult
The ActionResult class encapsulates the result of all file requested access permission actions. More...
class CheckResult
The CheckResult class encapsulates the result of all requested file access permission checks. More...
class PathPolicy
The PathPolicy struct encapsulates information required to request file access permissions for a specified path. More...
class PathPolicyCheckResult
The PathPolicyCheckResult struct contains the result of a file permission check request for a specified path, indicating whether access is granted or denied. More...
class PathPolicyErrorInfo
The PathPolicyErrorInfo struct contains the result of a file access permission request for a specified path. More...
Type Documentation
enum FileShare::OperationMode
flags FileShare::OperationModes
Defines permissions on path. See FileShare_OperationMode. The flags can be combined using bitwise operations.
| Constant | Value | Description |
|---|---|---|
QtOhosExtras::FileShare::Read |
1 << 0 |
Read on path |
QtOhosExtras::FileShare::Write |
1 << 1 |
Write on path |
This enum was introduced or modified in Qt 5.12.12.
The OperationModes type is a typedef for QFlags <OperationMode>. It stores an OR combination of OperationMode values.
See also PathPolicy.
Defines permission policy error codes. See FileShare_PolicyErrorCode.
| Constant | Value | Description |
|---|---|---|
QtOhosExtras::FileShare::Unknown |
0 |
Error type is unknown or not recognized |
QtOhosExtras::FileShare::PersistenceForbidden |
1 |
The permission on the path cannot be persisted |
QtOhosExtras::FileShare::InvalidMode |
2 |
Invalid operation mode |
QtOhosExtras::FileShare::InvalidPath |
3 |
Invalid path |
QtOhosExtras::FileShare::PermissionNotPersisted |
4 |
The permission is not persisted |
This enum was introduced or modified in Qt 5.12.12.
See also PathPolicyErrorInfo.
Function Documentation
activatePermission
QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::activatePermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies)Activates file or folder permissions from policies. The success of the action can be determined from ActionResult.
This function calls OH_FileShare_ActivatePermission. Each time an application is started, its persistent permissions have not been loaded to the memory. Use this function to make a persistent permission active after the application is started. If the activation fails because the permission has not been persisted, use persistPermission() first.
To deactivate an active permission, use deactivatePermission().
See also ActionResult, PathPolicy, persistPermission(), and deactivatePermission().
checkPersistent
QSharedPointer<QtOhosExtras::FileShare::CheckResult> FileShare::checkPersistent(const QList<QtOhosExtras::FileShare::PathPolicy> &policies)true
falseThis function calls OH_FileShare_CheckPersistentPermission.
To persist permission, use persistPermission().
See also CheckResult, PathPolicy, and persistPermission().
deactivatePermission
QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::deactivatePermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies)Deactivates file or folder permissions from policies. The success of the action can be determined from ActionResult.
This function calls OH_FileShare_DeactivatePermission.
To activate permission, use activatePermission().
See also ActionResult, PathPolicy, and activatePermission().
persistPermission
QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::persistPermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies)Persists file or folder permissions from policies. The success of the action can be determined from ActionResult.
This function calls OH_FileShare_PersistPermission. persistPermission() stores persistence data in the system database. After persistPermission() call, permissions are not yet active. Use activatePermission() to activate permissions. persistPermission() must be called at least once before activatePermission().
To revoke a persistent permission, use revokePermission().
See also ActionResult, PathPolicy, revokePermission(), and activatePermission().
const QMetaObject *FileShare::qt_getEnumMetaObject(QtOhosExtras::FileShare::OperationMode)const char *FileShare::qt_getEnumName(QtOhosExtras::FileShare::OperationMode)revokePermission
QSharedPointer<QtOhosExtras::FileShare::ActionResult> FileShare::revokePermission(const QList<QtOhosExtras::FileShare::PathPolicy> &policies)Revokes file or folder permissions from policies. The success of the action can be determined from ActionResult.
This function calls OH_FileShare_RevokePermission.
To persist permission, use persistPermission().
See also ActionResult, PathPolicy, and persistPermission().
Function
QFlags<OperationModes::enum_type> FileShare::operator|(OperationModes::enum_type f1, OperationModes::enum_type f2)
Function
QFlags<OperationModes::enum_type> FileShare::operator|(OperationModes::enum_type f1, QFlags<OperationModes::enum_type> f2)QIncompatibleFlag FileShare::operator|(OperationModes::enum_type f1, int f2)