uniapp 安卓保活套装(通用保活、常驻通知、电池优化、自启管理等) Ba-KeepAliveSuit

Ba-KeepAliveSuit是一个针对Android系统的插件,提供通用保活功能,支持定位、推送、WebSocket等场景。它包括忽略电池优化、自启管理和常驻通知等特性,适用于解决应用在后台被杀的问题。用户可通过引入组件并调用相应方法来实现各种保活策略。
摘要由CSDN通过智能技术生成

简介(下载地址

Ba-KeepAliveSuit 是一款android原生保活套装插件,支持市面上大部分机型,Android4.4到Android13.0 (**注意:**不保证支持所有机型和场景,建议先试用)。

可解决定位、推送、websocket、定时任务、蓝牙、聊天等保活问题。

Ba-KeepAliveSuit在Ba-KeepAlive的基础上,新增了忽略电池优化、自启管理、常驻通知等等。

使用方法

script 中引入组件

	const keepAlive = uni.requireNativePlugin('Ba-KeepAliveSuit')

script 中调用

		methods: {
			onKeep() { //通用保活
				keepAlive.onKeep({
						//channelId: "Ba-KeepAlive",
						//channelName: "Ba-KeepAlive",
						title: "测试",
						content: "常驻通知描述",
					},
					(res) => {
						console.log(res);
						uni.showToast({
							title: res.msg,
							icon: "none",
							duration: 3000
						})
					});
			},
			onAutoStart() { //去设置自启动、后台运行
				keepAlive.onAutoStart(
					(res) => {
						console.log(res);
						uni.showToast({
							title: res.msg,
							icon: "none",
							duration: 3000
						})
					});
			},
			requestIgnoreBattery() { //申请加入电池优化白名单
				keepAlive.requestIgnoreBattery(
					res => {
						console.log(res);
						uni.showToast({
							title: res.msg,
							icon: "none",
							duration: 3000
						})
					});
			},
			isIgnoringBattery() { //是否加入电池优化白名单
				keepAlive.isIgnoringBattery(
					res => {
						console.log(res);
						// if (res.data) {
						// 	this.msgList.unshift(JSON.stringify(res.data))
						// 	this.msgList.unshift(dateUtil.now())
						// }
						uni.showToast({
							title: res.msg,
							icon: "none",
							duration: 3000
						})
					});
			},
			onShowNotify() { //常驻通知保活
				keepAlive.onShowNotify({
						//channelId: "Ba-KeepAlive",
						//channelName: "Ba-KeepAlive",
						//ID:99
						//title: "测试",
						//content: "常驻通知描述",
					},
					(res) => {
						console.log(res);
						uni.showToast({
							title: res.msg,
							icon: "none",
							duration: 3000
						})
					});
			},
			onCancelNotify() { //取消常驻通知保活
				keepAlive.onCancelNotify({
						//channelId: "Ba-KeepAlive",
						//channelName: "Ba-KeepAlive",
						//ID:99
						//title: "测试",
						//content: "常驻通知描述",
					},
					(res) => {
						console.log(res);
						uni.showToast({
							title: res.msg,
							icon: "none",
							duration: 3000
						})
					});
			},
		}

UI 图标设置

注意:更改后需要重新制作基座才能生效,建议提前配置。

  • 通知小图标:默认通知图标是Android的图标,如果需要使用自己的,在项目的 “nativeplugins\Ba-KeepAliveSuit\android\res\mipmap-xxhdpi” 目录下(没有就新建),添加 “ba_keepalive_icon.png” 图片文件即可。

方法清单

名称说明
onKeep开启通用保活
onAutoStart去设置自启动、后台运行
requestIgnoreBattery申请加入电池优化白名单
isIgnoringBattery是否加入电池优化白名单
onShowNotify常驻通知保活
onCancelNotify取消常驻通知保活
																				|

onKeep 方法参数

开启通用保活

属性名类型必填默认值说明
titleString建议‘Ba-KeepAlive’通知栏标题,建议用户修改,非必传
contentString建议‘Ba-KeepAlive is running’通知栏内容,建议用户修改,非必传
isRogueBooleanfalsefalse是否开启流氓模式,相对耗电

onShowNotify 方法参数

常驻通知保活

属性名类型必填默认值说明
channelIdStringfalse‘Ba-KeepAlive’渠道Id,建议用户修改,非必传
channelNameStringfalse‘Ba-KeepAlive’渠道名,用于设置里通知渠道展示,建议用户修改,非必传
IDStringfalse99通知id
titleString建议‘Ba-KeepAlive’通知栏标题,建议用户修改,非必传
contentString建议‘Ba-KeepAlive is running’通知栏内容,建议用户修改,非必传

onCancelNotify 方法参数

取消常驻通知保活

属性名类型默认值说明
channelIDString“1”渠道Id
channelNameString“默认”渠道名称
IDNumber99通知id

系列插件

图片选择插件 Ba-MediaPicker文档

图片编辑插件 Ba-ImageEditor文档

文件选择插件 Ba-FilePicker文档

应用消息通知插件(多种样式,新增支持常驻通知模式) Ba-Notify文档

自定义通知(耳机电量)插件 Ba-NotifyEarphone文档

应用未读角标插件 Ba-Shortcut-Badge文档

应用开机自启插件 Ba-Autoboot文档

扫码原生插件(毫秒级、支持多码)Ba-Scanner-G文档

扫码原生插件 - 新(可任意自定义界面版本;支持连续扫码;支持设置扫码格式)Ba-Scanner文档

动态修改状态栏、导航栏背景色、字体颜色插件 Ba-AppBar文档

原生sqlite本地数据库管理 Ba-Sqlite文档

安卓保活插件(采用多种主流技术) Ba-KeepAlive文档

安卓保活套装(通用、常驻通知、电池优化、自启管理、后台运行等)文档

安卓快捷方式(桌面长按app图标) Ba-Shortcut文档

自定义图片水印(任意位置) Ba-Watermark文档

最接近微信的图片压缩插件 Ba-ImageCompressor文档

视频压缩、视频剪辑插件 Ba-VideoCompressor文档

动态切换应用图标、名称(如新年、国庆等) Ba-ChangeIcon文档

原生Toast弹窗提示(穿透所有界面、穿透原生;自定义颜色、图标 ) Ba-Toast文档

图片涂鸦、画笔 Ba-ImagePaint文档

pdf阅读(手势缩放、显示页数) Ba-Pdf文档

声音提示、震动提示、语音播报 Ba-Beep文档

websocket原生服务(自动重连、心跳检测) Ba-Websocket文档

短信监听(验证码) Ba-Sms文档

智能安装(自动升级) Ba-SmartUpgrade文档

监听系统广播、自定义广播 Ba-Broadcast文档

监听通知栏消息(支持白名单、黑名单、过滤) Ba-NotifyListener文档

全局置灰、哀悼置灰(可动态、同时支持nvue、vue) Ba-Gray文档

获取设备唯一标识(OAID、AAID、IMEI等) Ba-IdCode文档

实时定位(系统、后台运行、支持息屏)插件 Ba-Location文档

实时定位(高德、后台运行、支持息屏、坐标转换、距离计算) Ba-LocationAMap文档

窗口小工具、桌面小部件、微件 Ba-AppWidget文档

窗口小工具、桌面小部件、微件(日历、时间) Ba-AwCalendarS文档

画中画悬浮窗(视频) Ba-VideoPip文档

悬浮窗(在其他应用上层显示) Ba-FloatWindow文档

悬浮窗(应用内、无需授权) Ba-FloatWindow2文档

悬浮窗(悬浮球、动态菜单、在其他应用上层显示) Ba-FloatBall文档

添加到“用其他应用打开”中,用于文件传递、分享等 Ba-ShareReceive文档

获取地图数据(高德、地理编码、反地理编码) Ba-AMapData文档

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android常驻通知(Notification)是指在用户状态栏中一直显示的通知图标和文本内容,不会因为用户操作或应用进程被销毁而消失。常驻通知通常用于实时监测、后台服务、音乐播放等需要持续提醒用户的场景。 常驻通知的实现步骤如下: 1. 首先,需要创建一个Notification对象,包括通知图标、标题、内容等信息。 2. 然后,创建一个PendingIntent,用于定义用户点击通知后的操作,比如打开应用的某个Activity或执行某个Service。 3. 创建一个NotificationChannel(通知渠道),用于定义通知的重要程度,包括声音、震动等设置。 4. 将Notification对象与PendingIntent关联,并将其设置为常驻通知的优先级。 5. 最后,调用NotificationManager的notify方法,将通知显示在用户的状态栏上。 需要注意的是,常驻通知存在一些使用限制和最佳实践: 1. 用户可以通过设置中的通知管理来关闭或打开特定应用的常驻通知。 2. 常驻通知不适合用于广告或频繁推送的内容,以免打扰用户。 3. 为了避免误导用户,常驻通知的图标和文本内容应与应用的实际情况相符。 4. 如果需要更新通知的内容或操作,可以使用NotificationManager的notify方法进行更新,并保持通知的id不变。 总之,常驻通知是Android提供的一个重要功能,可以实现持续提醒用户和后台监测的需求。但应用开发者需要注意使用场景和用户体验,遵循Android的最佳实践,以确保用户对常驻通知的接受和理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值