#[repr(C)]pub struct ArkWeb_CookieManagerAPI {
pub size: usize,
pub fetchCookieSync: Option<unsafe extern "C" fn(url: *const c_char, incognito: bool, includeHttpOnly: bool, cookieValue: *mut *mut c_char) -> ArkWeb_ErrorCode>,
pub configCookieSync: Option<unsafe extern "C" fn(url: *const c_char, cookieValue: *const c_char, incognito: bool, includeHttpOnly: bool) -> ArkWeb_ErrorCode>,
pub existCookies: Option<unsafe extern "C" fn(incognito: bool) -> bool>,
pub clearAllCookiesSync: Option<unsafe extern "C" fn(incognito: bool)>,
pub clearSessionCookiesSync: Option<unsafe extern "C" fn()>,
}api-11 and api-12 only.Expand description
Defines the native CookieManager API for ArkWeb. Before invoking an API, you are advised to use ARKWEB_MEMBER_MISSING to check whether the function structure has a corresponding function pointer to avoid crash caused by mismatch between the SDK and the device ROM.
Available since API-level: 12
Fields§
§size: usizeThe ArkWeb_CookieManagerAPI struct size.
fetchCookieSync: Option<unsafe extern "C" fn(url: *const c_char, incognito: bool, includeHttpOnly: bool, cookieValue: *mut *mut c_char) -> ArkWeb_ErrorCode>Obtains the cookie value corresponding to a specified URL.
§Arguments
-
url- URL to which the cookie to be obtained belongs. A complete URL is recommended. -
incognito- True indicates that the memory cookies of the webview in privacy mode are obtained, and false indicates that cookies in non-privacy mode are obtained. -
includeHttpOnly- If true HTTP-only cookies will also be included in the cookieValue. -
cookieValue- Get the cookie value corresponding to the URL.
§Returns
- Fetch cookie result code.
[
ARKWEB_SUCCESS] fetch cookie success. [ARKWEB_INVALID_URL] invalid url. [ARKWEB_INVALID_PARAM] cookieValue is nullptr.
configCookieSync: Option<unsafe extern "C" fn(url: *const c_char, cookieValue: *const c_char, incognito: bool, includeHttpOnly: bool) -> ArkWeb_ErrorCode>Sets the cookie value for a specified URL.
§Arguments
-
url- Specifies the URL to which the cookie belongs. A complete URL is recommended. -
cookieValue- The value of the cookie to be set. -
incognito- True indicates that cookies of the corresponding URL are set in privacy mode, and false indicates that cookies of the corresponding URL are set in non-privacy mode. -
includeHttpOnly- If true, HTTP-only cookies can also be overwritten.
§Returns
- Config cookie result code.
[
ARKWEB_SUCCESS] config cookie success. [ARKWEB_INVALID_URL] invalid url. [ARKWEB_INVALID_COOKIE_VALUE] invalid cookie value.
existCookies: Option<unsafe extern "C" fn(incognito: bool) -> bool>Check whether cookies exist.
§Arguments
incognito- True indicates whether cookies exist in privacy mode, and false indicates whether cookies exist in non-privacy mode.
§Returns
- True indicates that the cookie exists, and false indicates that the cookie does not exist.
clearAllCookiesSync: Option<unsafe extern "C" fn(incognito: bool)>Clear all cookies.
§Arguments
incognito- True indicates that all memory cookies of the webview are cleared in privacy mode, and false indicates that persistent cookies in non-privacy mode are cleared.
clearSessionCookiesSync: Option<unsafe extern "C" fn()>Clear all session cookies.