Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
6d7cf85c
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看板
未验证
提交
6d7cf85c
编写于
3月 25, 2022
作者:
Q
ql
提交者:
Gitee
3月 25, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update zh-cn/application-dev/ability/fa-pageability.md.
Signed-off-by:
N
ql
<
qianli16@huawei.com
>
上级
bbc6c2c0
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
69 addition
and
11 deletion
+69
-11
zh-cn/application-dev/ability/fa-pageability.md
zh-cn/application-dev/ability/fa-pageability.md
+69
-11
未找到文件。
zh-cn/application-dev/ability/fa-pageability.md
浏览文件 @
6d7cf85c
...
...
@@ -113,26 +113,84 @@ featureAbility.startAbility({
},
);
```
### 启动远程PageAbility
### 启动远程PageAbility
(当前仅对系统应用开放)
*
导入模块
```
import featureAbility from '@ohos.ability.featureAbility'
import deviceManager from '@ohos.distributedHardware.deviceManager';
```
*
示例
```
javascript
var
promise
=
await
featureAbility
.
startAbility
({
want
:
{
deviceId
:
this
.
deviceId
,
bundleName
:
"
com.example.test
"
,
abilityName
:
"
com.example.test.MainAbility
"
,
},
```
ts
function
onStartRemoteAbility
()
{
console
.
info
(
'
onStartRemoteAbility begin
'
);
var
params
;
var
wantValue
=
{
bundleName
:
'
ohos.samples.etsDemo
'
,
abilityName
:
'
ohos.samples.etsDemo.RemoteAbility
'
,
deviceId
:
getRemoteDeviceId
(),
parameters
:
params
};
console
.
info
(
'
onStartRemoteAbility want=
'
+
JSON
.
stringify
(
wantValue
));
featureAbility
.
startAbility
({
want
:
wantValue
}).
then
((
data
)
=>
{
console
.
info
(
'
onStartRemoteAbility finished,
'
+
JSON
.
stringify
(
data
));
});
console
.
info
(
'
onStartRemoteAbility end
'
);
}
```
从DeviceManager获取deviceId,具体示例代码如下:
```
ts
function
getRemoteDeviceId
()
{
if
(
typeof
dmClass
===
'
object
'
&&
dmClass
!=
null
)
{
var
list
=
dmClass
.
getTrustedDeviceListSync
();
if
(
typeof
(
list
)
==
'
undefined
'
||
typeof
(
list
.
length
)
==
'
undefined
'
)
{
console
.
log
(
"
MainAbility onButtonClick getRemoteDeviceId err: list is null
"
);
return
;
}
console
.
log
(
"
MainAbility onButtonClick getRemoteDeviceId success:
"
+
list
[
0
].
deviceId
);
return
list
[
0
].
deviceId
;
}
else
{
console
.
log
(
"
MainAbility onButtonClick getRemoteDeviceId err: dmClass is null
"
);
}
}
```
在跨设备场景下,需要向用户申请数据同步的权限。具体示例代码如下:
```
ts
async
function
RequestPermission
()
{
console
.
info
(
'
[dmsDemo] RequestPermission begin
'
);
let
array
:
Array
<
string
>
=
[
"
ohos.permission.DISTRIBUTED_DATASYNC
"
];
var
bundleFlag
=
0
;
var
tokenID
=
undefined
;
var
userID
=
100
;
var
appInfo
=
await
bundle
.
getApplicationInfo
(
'
ohos.samples.etsDemo
'
,
bundleFlag
,
userID
);
tokenID
=
appInfo
.
accessTokenId
;
var
atManager
=
abilityAccessCtrl
.
createAtManager
();
let
requestPermissions
:
Array
<
string
>
=
[];
for
(
let
i
=
0
;
i
<
array
.
length
;
i
++
)
{
var
result
=
await
atManager
.
verifyAccessToken
(
tokenID
,
array
[
i
]);
console
.
info
(
"
[dmsDemo] verifyAccessToken result:
"
+
JSON
.
stringify
(
result
));
if
(
result
==
abilityAccessCtrl
.
GrantStatus
.
PERMISSION_GRANTED
)
{
}
else
{
requestPermissions
.
push
(
array
[
i
]);
}
}
console
.
info
(
"
[dmsDemo] requestPermissions:
"
+
JSON
.
stringify
(
requestPermissions
));
if
(
requestPermissions
.
length
==
0
||
requestPermissions
==
[])
{
return
;
}
let
context
=
featureAbility
.
getContext
();
context
.
requestPermissionsFromUser
(
requestPermissions
,
1
,
(
data
)
=>
{
console
.
info
(
"
[dmsDemo] data:
"
+
JSON
.
stringify
(
data
));
console
.
info
(
"
[dmsDemo] data requestCode:
"
+
data
.
requestCode
);
console
.
info
(
"
[dmsDemo] data permissions:
"
+
data
.
permissions
);
console
.
info
(
"
[dmsDemo] data authResults:
"
+
data
.
authResults
);
});
console
.
info
(
'
[dmsDemo] RequestPermission end
'
);
}
);
```
### 生命周期接口说明
**表2**
生命周期回调函数介绍
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录