无长时任务的应用退到后台主动断开socket连接,包含TCP和UDP连接。
约束
应用如果不主动断开socket连接,系统会强制断开TCP连接,应用在前台后需要主动重新创建连接。
示例
HTTP数据请求
import { UIAbility } from '@kit.AbilityKit';
import { http } from '@kit.NetworkKit';
export default class EntryAbility extends UIAbility {
// ...
onForeground(): void {
//在前台时按业务所需创建http请求
let httpRequest = http.createHttp();
// ...
}
onBackground(): void {
//退到后台释放http请求
httpRequest.destroy();
}
}
Socket连接
import { UIAbility } from '@kit.AbilityKit';
import { socket } from '@kit.NetworkKit';
import { BusinessError } from '@kit.BasicServicesKit';
export default class EntryAbility extends UIAbility {
// ...
tcp: socket.TCPSocket = socket.constructTCPSocketInstance();
onForeground(): void {
//在前台时按业务所需创建socket连接并发送业务数据
this.tcp.bind(ipAddress, (err: BusinessError) => {})
t