Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
bf0ef973
D
Docs
项目概览
OpenHarmony
/
Docs
1 年多 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
bf0ef973
编写于
6月 19, 2023
作者:
O
openharmony_ci
提交者:
Gitee
6月 19, 2023
浏览文件
操作
浏览文件
下载
差异文件
!19232 add app account authorization api docs
Merge pull request !19232 from jidong/dev060601
上级
28357afb
6a122b50
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
366 addition
and
1 deletion
+366
-1
zh-cn/application-dev/reference/apis/js-apis-appAccount-authorizationExtensionAbility.md
.../apis/js-apis-appAccount-authorizationExtensionAbility.md
+70
-0
zh-cn/application-dev/reference/apis/js-apis-appAccount.md
zh-cn/application-dev/reference/apis/js-apis-appAccount.md
+296
-1
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-appAccount-authorizationExtensionAbility.md
0 → 100644
浏览文件 @
bf0ef973
# @ohos.account.appAccount.AuthorizationExtensionAbility (应用帐号授权扩展能力)
**AuthorizationExtensionAbility**
基于ExtensionAbility框架,提供应用帐号授权的能力。
> **说明:**
>
> 本模块首批接口从API version 10开始支持,后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 导入模块
```
ts
import
AuthorizationExtensionAbility
from
'
@ohos.account.appAccount.AuthorizationExtensionAbility
'
;
```
## AuthorizationRequest
帐号授权请求信息。
**系统接口:**
此接口为系统接口。
**系统能力:**
SystemCapability.Account.AppAccount
| 名称 | 类型 | 可读 | 可写 | 说明 |
| --------- | ------------------------------- | ---- | ---- | ------------------------------------ |
| callerUid | number | 是 | 否 | 调用方UID。 |
| parameters |
[
appAccount.AccountCapabilityRequest
](
js-apis-appAccount.md#accountcapabilityrequest10
)
| 是 | 否 | 业务参数。 |
## AuthorizationCallback
帐号授权回调方法类。
**系统接口:**
此接口为系统接口。
**系统能力:**
SystemCapability.Account.AppAccount
| 名称 | 类型 | 可读 | 可写 | 说明 |
| --------- | ------------------------------- | ---- | ---- | ------------------------------------ |
| onResult | AsyncCallback
<
[
appAccount.AccountCapabilityResponse
](
js-apis-appAccount.md#accountcapabilityresponse10
),
{
[
key:
string
]
:
object
}
>
| 是 | 否 | 表示授权结果的回调方法。 |
## AuthorizationExtensionAbility.onStartAuthorization
onStartAuthorization(request: AuthorizationRequest, callback: AuthorizationCallback): void
开始处理授权请求的回调方法。当有新的帐号授权请求到达时,框架会回调此接口。
**系统接口:**
此接口为系统接口。
**系统能力:**
SystemCapability.Account.AppAccount
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ---------------------------------------- | ---- | ----------------------- |
| request |
[
AuthorizationRequest
](
#authorizationrequest
)
| 是 | 授权请求信息。 |
| callback |
[
AuthorizationCallback
](
#authorizationcallback
)
| 是 | 授权回调对象。 |
**示例:**
```
ts
class
MyAuthorizationExtensionAbility
extends
AuthorizationExtensionAbility
{
onStartAuthorization
(
request
:
AuthorizationRequest
,
callback
:
AuthorizationCallback
)
{
console
.
log
(
'
onStartAuthorization, callerUid:
'
+
request
.
callerUid
+
'
, parameters:
'
+
request
.
parameters
);
let
response
=
{
name
:
'
xxxx
'
,
scopes
:
[
'
xxx
'
,
'
xxx
'
]
};
callback
.
onResult
(
null
,
response
);
}
};
```
zh-cn/application-dev/reference/apis/js-apis-appAccount.md
浏览文件 @
bf0ef973
...
...
@@ -4980,4 +4980,299 @@ getRemoteObject(): rpc.RemoteObject;
return
authenticator
.
getRemoteObject
();
}
}
```
\ No newline at end of file
```
## AccountCapabilityType<sup>10+</sup>
表示帐号能力类型枚举。
**系统能力:**
SystemCapability.Account.AppAccount
| 名称 | 值 | 说明 |
| ---------------- | ----- | ----------------------- |
| AUTHORIZATION | 1 | 表示授权能力类型。 |
## AccountCapabilityProvider<sup>10+</sup>
帐号能力提供者基类。
### 属性
**系统能力:**
SystemCapability.Account.AppAccount
| 名称 | 类型 | 可读 | 可写 | 说明 |
| -------- | -------- | -------- | -------- | -------- |
| capabilityType |
[
AccountCapabilityType
](
#accountcapabilitytype10
)
| 是 | 否 | 表示帐号能力类型。 |
### constructor<sup>10+</sup>
constructor(capabilityType: AccountCapabilityType)
帐号能力提供者基类构造函数。
**系统能力:**
SystemCapability.Account.AppAccount
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ------------------------------------- |
| capabilityType |
[
AccountCapabilityType
](
#accountcapabilitytype10
)
| 是 | 表示帐号能力类型。 |
**示例:**
```
ts
class
MyAuthorizationProvider
extends
account_appAccount
.
AccountCapabilityProvider
{
constructor
()
{
super
(
account_appAccount
.
AccountCapabilityType
.
AUTHORIZATION
);
}
}
try
{
let
provider
=
new
MyAuthorizationProvider
();
if
(
provider
instanceof
account_appAccount
.
AccountCapabilityProvider
)
{
console
.
log
(
"
the provider is an instance of AccountCapabilityProvider
"
);
}
}
catch
(
err
)
{
console
.
error
(
'
catch error:
'
+
JSON
.
stringify
(
err
));
}
```
## AccountCapabilityRequest<sup>10+</sup>
帐号能力请求基类。
### constructor<sup>10+</sup>
constructor(provider: AccountCapabilityProvider)
帐号能力请求基类构造函数。
**系统能力:**
SystemCapability.Account.AppAccount
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ------------------------------------- |
| provider |
[
AccountCapabilityProvider
](
#accountcapabilityprovider10
)
| 是 | 表示帐号能力的提供者。 |
**示例:**
```
ts
class
MyAuthorizationProvider
extends
account_appAccount
.
AccountCapabilityProvider
{
constructor
()
{
super
(
account_appAccount
.
AccountCapabilityType
.
AUTHORIZATION
);
}
}
class
MyAuthorizationRequest
extends
account_appAccount
.
AccountCapabilityRequest
{
constructor
()
{
let
provider
=
new
MyAuthorizationProvider
();
super
(
provider
);
}
}
try
{
let
request
=
new
MyAuthorizationRequest
();
if
(
request
instanceof
account_appAccount
.
AccountCapabilityRequest
)
{
console
.
log
(
"
the request is an instance of AccountCapabilityRequest
"
);
}
}
catch
(
err
)
{
console
.
error
(
'
catch error:
'
+
JSON
.
stringify
(
err
));
}
```
## AccountCapabilityResponse<sup>10+</sup>
帐号能力响应基类。
### 属性
**系统能力:**
SystemCapability.Account.AppAccount
| 名称 | 类型 | 可读 | 可写 | 说明 |
| -------- | -------- | -------- | -------- | -------- |
| request |
[
AccountCapabilityRequest
](
#accountcapabilityrequest10
)
| 是 | 否 | 表示此响应对应的帐号能力请求。 |
### constructor<sup>10+</sup>
constructor(request: AccountCapabilityRequest)
帐号能力响应基类构造函数。
**系统能力:**
SystemCapability.Account.AppAccount
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ------------------------------------- |
| request |
[
AccountCapabilityRequest
](
#accountcapabilityrequest10
)
| 是 | 表示此响应对应的帐号能力请求。 |
**示例:**
```
ts
class
MyAuthorizationProvider
extends
account_appAccount
.
AccountCapabilityProvider
{
constructor
()
{
super
(
account_appAccount
.
AccountCapabilityType
.
AUTHORIZATION
);
}
}
class
MyAuthorizationRequest
extends
account_appAccount
.
AccountCapabilityRequest
{
constructor
()
{
let
provider
=
new
MyAuthorizationProvider
();
super
(
provider
);
}
}
class
MyAuthorizationResponse
extends
account_appAccount
.
AccountCapabilityResponse
{
constructor
(
request
)
{
super
(
request
)
}
}
try
{
let
request
=
new
MyAuthorizationRequest
();
let
response
=
new
MyAuthorizationResponse
(
request
);
if
(
response
instanceof
account_appAccount
.
AccountCapabilityResponse
)
{
console
.
log
(
"
the response is an instance of AccountCapabilityResponse
"
);
}
}
catch
(
err
)
{
console
.
error
(
'
catch error:
'
+
JSON
.
stringify
(
err
));
}
```
## AuthorizationProviderInfo<sup>10+</sup>
表示帐号授权能力提供者信息。
**系统能力:**
SystemCapability.Account.AppAccount
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ------- | ------ | ---- | --- | ---------- |
| bundleName | string | 是 | 否 | 授权能力提供者的Bundle名。 |
| abilityName | string | 是 | 否 | 授权能力提供者的Ability名。 |
## AuthorizationProvider<sup>10+</sup>
帐号授权能力提供者类。
### constructor<sup>10+</sup>
constructor(info: AuthorizationProviderInfo)
帐号授权能力提供者类构造函数。
**系统能力:**
SystemCapability.Account.AppAccount
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ------------------------------------- |
| info |
[
AuthorizationProviderInfo
](
#authorizationproviderinfo10
)
| 是 | 表示帐号能力提供者的信息。 |
**示例:**
```
ts
class
MyAuthorizationProvider
extends
account_appAccount
.
AuthorizationProvider
{
constructor
()
{
super
({
bundleName
:
'
xxx
'
,
abilityName
:
'
xxx
'
});
}
}
try
{
let
provider
=
new
MyAuthorizationProvider
();
if
(
provider
instanceof
account_appAccount
.
AuthorizationProvider
)
{
console
.
log
(
"
the provider is an instance of AuthorizationProvider
"
);
}
}
catch
(
err
)
{
console
.
error
(
"
catch error:
"
+
JSON
.
stringify
(
err
));
}
```
## AccountCapabilityScheduler<sup>10+</sup>
帐号能力调度器类。
### executeRequest<sup>10+</sup>
executeRequest(request: AccountCapabilityRequest, callback: AsyncCallback
<
AccountCapabilityResponse, { [key: string]: object }
>
): void
执行帐号能力请求。使用callback异步回调。
**系统能力:**
SystemCapability.Account.AppAccount
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------- | ---- | ------------------------- |
| request |
[
AccountCapabilityRequest
](
#accountcapabilityrequest10
)
| 是 | 表示帐号能力请求。 |
| callback | AsyncCallback
<
[
AccountCapabilityResponse
](
#accountcapabilityresponse10
)
, { [key: string]: object }
>
| 是 | 表示请求的回调方法。当执行成功时,err为null;否则为错误对象。 |
**错误码:**
| 错误码ID | 错误信息 |
| ------- | ------- |
| 12300001 | System service exception. |
| 12300002 | Invalid request. |
**示例:**
```
ts
let
scheduler
=
new
account_appAccount
.
AccountCapabilityScheduler
();
let
provider
=
new
account_appAccount
.
AuthorizationProvider
({
bundleName
:
'
xxx
'
,
abilityName
:
'
xxx
'
});
let
request
=
new
account_appAccount
.
AccountCapabilityRequest
(
provider
);
try
{
scheduler
.
executeRequest
(
request
,
(
err
,
response
)
=>
{
if
(
err
!=
null
)
{
console
.
log
(
'
executeRequest failed, error:
'
+
JSON
.
stringify
(
err
));
}
else
{
console
.
log
(
'
executeRequest response:
'
+
JSON
.
stringify
(
response
));
}
});
}
catch
(
err
)
{
console
.
log
(
'
executeRequest exception:
'
+
JSON
.
stringify
(
err
));
}
```
### executeRequest<sup>10+</sup>
executeRequest(request: AccountCapabilityRequest): Promise
<
AccountCapabilityResponse
>
执行帐号能力请求。使用Promise异步回调。
**系统能力:**
SystemCapability.Account.AppAccount
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------- | ---- | ------------ |
| request |
[
AccountCapabilityRequest
](
#accountcapabilityrequest10
)
| 是 | 表示帐号能力请求。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | --------------------- |
| Promise
<
[AccountCapabilityResponse](#accountcapabilityresponse10)
>
| Promise对象,返回请求执行的响应结果。 |
**错误码:**
| 错误码ID | 错误信息 |
| ------- | ------- |
| 12300001 | System service exception. |
| 12300002 | Invalid request. |
**示例:**
```
ts
let
scheduler
=
new
account_appAccount
.
AccountCapabilityScheduler
();
let
provider
=
new
account_appAccount
.
AuthorizationProvider
({
bundleName
:
'
xxx
'
,
abilityName
:
'
xxx
'
});
let
request
=
new
account_appAccount
.
AccountCapabilityRequest
(
provider
);
try
{
scheduler
.
executeRequest
(
request
).
then
((
response
)
=>
{
console
.
log
(
'
executeRequest response:
'
+
JSON
.
stringify
(
response
));
}).
catch
((
err
)
=>
{
console
.
log
(
'
executeRequest failed, error:
'
+
JSON
.
stringify
(
err
));
});
}
catch
(
err
)
{
console
.
log
(
'
executeRequest exception:
'
+
JSON
.
stringify
(
err
));
}
```
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录