提交 051b6087 编写于 作者: 杜庆泉's avatar 杜庆泉

Update uts-for-android.md

上级 c44379fb
......@@ -675,6 +675,36 @@ UTSAndroid.offAppActivityRequestPermissionsResult(() => {
UTSAndroid.getUniActivity()!.getWindow().getDecorView();
```
### 4.3 UTS插件开发中Activity生命周期注意事项
即使在android原生开发中,应用的生命周期管理也是十分重要的。 [android生命周期](https://developer.android.com/guide/components/activities/activity-lifecycle?hl=zh_cn)
UTS环境中对原生的生命周期进行了封装和简化,用户不需要关心 除了activity 以外的更多原生细节。
只需要了解本章节中列出的 activity相关生命周期即可。即 在UTS环境中 开发者可以认为 activity 的生命周期 就是应用的生命周期。
其中最为常见的场景,要数`onAppActivityDestroy`中释放系统资源了:
举个例子,以Hello UTS [!用户截屏插件](https://ext.dcloud.net.cn/plugin?id=9897)为例。
在注册监听回调时,添加了下列代码。
```
UTSAndroid.onAppActivityDestroy(function(){
screenOB?.stopWatching()
screenOB = null
})
```
这段代码的意思是当宿主activity被销毁时,主动回收屏幕监听的FileObserver
这是因为除了正常的用户注册/注册 之外,还存在一种情况:用户没有反注册,便关闭了应用。 此时FileObserver 并没有被反注册回收。就会导致应用关闭后继续持有上一个uni-app js引擎实例的引用,从而导致下一次启动时出现引擎回调找不到的情况。
开发者在开发UTS插件时,如果遇到了类似使用系统组件的情况,也需要特别关注资源释放情况。
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册