# uni.exit(options?)

退出当前应用

# 参数

名称 类型 必填 默认值 描述
options ExitOptions | null - uni.exit参数定义
名称 类型 必备 默认值 描述
success (res: ExitSuccess) => void | null - uni.exit成功回调函数定义
fail (res: IExitError) => void | null - uni.exit失败回调函数定义
complete (res: any) => void | null - uni.exit完成回调函数定义
# ExitSuccess 的属性值
名称 类型 必备 默认值 描述
errMsg string - -
# IExitError 的属性值
名称 类型 必备 默认值 描述
errCode 12001 | 12002 - 错误码
- 12001: 系统不支持
- 12002: 未知错误
errSubject string - 统一错误主题(模块)名称
data any | null - 错误信息中包含的数据
cause Error | null - 源错误信息,可以包含多个错误,详见SourceError
errMsg string - -

# exit 兼容性

Android iOS web
3.9.0 x x

本API仅Android App生效。

Android平台的应用退出分热退出和冷退出。

  • 冷退出是彻底杀掉
  • 热退出是关闭可见的activity,后台进程不退出(比如push)

基本上主流Android App都是热退出。本API也是热退出。

热退出,即通知了os:这个App用户不用了,在os需要时可以回收。如果在os回收之前,用户又启动这个App,会感觉启动速度更快一些。

# 参见

相关 Bug

# 示例

hello uni-app x

<template>
   <view>
   	<button @tap="exitAppClick">退出应用</button>
   </view>
</template>

<script>
   export default {
   	methods: {
   		exitAppClick:function(){
   			uni.exit({
   				success:function(res){
   					console.log(res)
   				}
   			})
   		}
   	}
   }
</script>

<style>

</style>

# 通用类型

# GeneralCallbackResult

名称 类型 必备 默认值 描述
errMsg string - 错误信息

# 切换应用到后台

有的Android App,点back后不询问用户,直接隐藏到了后台。这种做法占用手机的资源一些,但确实也有一些App是这么做的。

Android的activity提供了将应用切换到后台的方法:

// #ifdef APP-ANDROID
	UTSAndroid.getUniActivity()?.moveTaskToBack(true)
// #endif