Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
qq_46974960
unidocs-zh
提交
15b201f0
unidocs-zh
项目概览
qq_46974960
/
unidocs-zh
与 Fork 源项目一致
Fork自
DCloud / unidocs-zh
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
15b201f0
编写于
10月 30, 2023
作者:
lizhongyi_
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update uts-plugin.md
上级
cddb81b8
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
89 addition
and
0 deletion
+89
-0
docs/plugin/uts-component.md
docs/plugin/uts-component.md
+3
-0
docs/plugin/uts-plugin.md
docs/plugin/uts-plugin.md
+86
-0
未找到文件。
docs/plugin/uts-component.md
浏览文件 @
15b201f0
...
...
@@ -1509,6 +1509,9 @@ UTS容器组件的使用与Vue等常见的前端容器组件一致。唯一要
<
/style>
```
## 应用程序生命周期函数监听
UTS 组件同样支持对应用程序生命周期函数的监听,方式和 UTS 插件中的完全一致。具体使用方法
[
详见
](
https://uniapp.dcloud.net.cn/plugin/uts-plugin.html#hooksClass
)
## 快速体验
...
...
docs/plugin/uts-plugin.md
浏览文件 @
15b201f0
...
...
@@ -629,6 +629,92 @@ export default function getBatteryLevel():number {
至此,我们已经完成一个 iOS 平台上获取电量的原生能力封装。
### 应用程序生命周期函数监听@hooksClass
在插件开发过程中,有时我们需要监听 APP 的生命周期函数来完成一些业务逻辑,比如在应用启动时初始化三方 SDK, 在收到推送消息时做消息的处理,在被 url scheme 唤醒时调用指定功能等等。
在 UTS 插件里,可以通过下面的方式来完成对应用程序生命周期函数的监听。
> 特别注意:
> 此功能在 HBuilderX 3.95+ 版本支持,HBuilderX 3.95 之前的版本不支持。
#### iOS 平台
在 iOS 平台可以通过自定义 class 遵循
`UTSiOSHookProxy`
协议的方式来实现对应用程序生命周期函数的监听。
> 注意:
> 该自定义 class 需要 export, 否则不会参与编译。
> 该自定义 class 会自动完成注册, 无需开发者进行额外注册。
> `UTSiOSHookProxy` 协议中所有的 api 均是可选实现的,可以选择自己关心的 api 进行实现。
> `UTSiOSHookProxy` 协议的定义[详见](https://uniapp.dcloud.net.cn/uts/UTSiOSHookProxy.html)
示例代码:
```
ts
export
class
MyPluginClass
implements
UTSiOSHookProxy
{
// uts 插件创建时的回调。
onCreate
()
{
}
// 应用正常启动时 (不包括已在后台转到前台的情况)的回调函数。
applicationDidFinishLaunchingWithOptions
(
application
:
UIApplication
|
null
,
launchOptions
:
Map
<
UIApplication
.
LaunchOptionsKey
,
any
>
|
null
=
null
):
boolean
{
console
.
log
(
"
applicationDidFinishLaunchingWithOptions
"
)
return
false
}
// 远程通知注册成功时的回调函数。
didRegisterForRemoteNotifications
(
deviceToken
:
Data
|
null
)
{
}
// 远程通知注册失败时的回调函数。
didFailToRegisterForRemoteNotifications
(
error
:
NSError
|
null
)
{
}
// 应用收到远程通知时的回调函数。
didReceiveRemoteNotification
(
userInfo
:
Map
<
AnyHashable
,
any
>
|
null
)
{
}
// 应用收到本地通知时的回调函数。
didReceiveLocalNotification
(
notification
:
UILocalNotification
|
null
)
{
}
// 通过 url scheme 方式唤起 app 时的回调函数。(iOS9 之前的系统回调此方法,iOS9 之后的系统请使用 applicationOpenURLOptions)
applicationHandleOpenURL
(
application
:
UIApplication
|
null
,
url
:
URL
|
null
)
:
boolean
{
return
true
}
// 通过 url scheme 方式唤起 app 时的回调函数。
applicationOpenURLOptions
(
app
:
UIApplication
|
null
,
url
:
URL
,
options
:
Map
<
UIApplication
.
OpenURLOptionsKey
,
any
>
|
null
=
null
)
:
boolean
{
return
true
}
// 当应用从活动状态主动变为非活动状态的时的回调函数。
applicationWillResignActive
(
application
:
UIApplication
|
null
)
{
console
.
log
(
"
applicationWillResignActive
"
)
}
// 应用完全激活时的回调函数。
applicationDidBecomeActive
(
application
:
UIApplication
|
null
)
{
}
// 应用程序进入后台时的回调函数。
applicationDidEnterBackground
(
application
:
UIApplication
|
null
)
{
console
.
log
(
"
did enter background
"
)
}
// 当应用在后台状态,将要进入到前台运行时的回调函数。
applicationWillEnterForeground
(
application
:
UIApplication
|
null
)
{
console
.
log
(
"
applicationWillEnterForeground
"
)
}
// 应用程序的 main 函数。
applicationMain
(
argc
:
Int32
,
argv
:
UnsafeMutablePointer
<
UnsafeMutablePointer
<
CChar
>
|
null
>
)
{
console
.
log
(
"
applicationMain
"
)
}
// 当应用程序接收到与用户活动相关的数据时调用此方法,例如,当用户使用 Universal Link 唤起应用时。
applicationContinueUserActivityRestorationHandler
(
application
:
UIApplication
|
null
,
userActivity
:
NSUserActivity
|
null
,
restorationHandler
:
((
res
:
[
any
]
|
null
)
=>
void
)
|
null
=
null
)
:
boolean
{
return
true
}
}
```
### `uts`与`uni-app`环境数据交互说明
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录