uniapp 安卓如何获取通话权限,监听通话情况

这篇具有很好参考价值的文章主要介绍了uniapp 安卓如何获取通话权限,监听通话情况。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本篇文章还是主要讲解uniapp知识,那么在uniapp中如何去实现监听通话的权限?接下来请看代码

// 可以放在App.vue当中 也可以放在页面的onload里面
if (plus.os.name == 'Android') {
	plus.android.requestPermissions(
		[	'android.permission.ANSWER_PHONE_CALLS', //手动 挂断和接听 需要这个权限
			"android.permission.MODIFY_AUDIO_SETTINGS", //手动 挂断和接听 需要这个权限
			"android.permission.CALL_PHONE", //手动 挂断和接听 需要这个权限
			"android.permission.READ_PHONE_STATE", //>监听电话状态 需要这个权限
			"android.permission.READ_CALL_LOG", //获取号码需要这个权限
			"android.permission.READ_AUDIO" // 录音权限
		],
		function(resultObj) {
			var result = 0;
			for (var i = 0; i < resultObj.granted.length; i++) {
				var grantedPermission = resultObj.granted[i];
				console.log('已获取的权限:' + grantedPermission);
				result = 1
			}
			for (var i = 0; i < resultObj.deniedPresent.length; i++) {
				var deniedPresentPermission = resultObj.deniedPresent[i];
				console.log('拒绝本次申请的权限:' + deniedPresentPermission);
				result = 0
			}
			for (var i = 0; i < resultObj.deniedAlways.length; i++) {
				var deniedAlwaysPermission = resultObj.deniedAlways[i];
				console.log('永久拒绝申请的权限:' + deniedAlwaysPermission);
				result = -1
			}
		},
		function(error) {
			console.log('申请权限错误:' + error.code + " = " + error.message);
	});
}

android通话监听,uni-app,android,uni-app,javascript

在页面中调用方法 监听通话状态文章来源地址https://www.toymoban.com/news/detail-592111.html

onLoad() {
	this.getCallStatus()
},
methods: {
	getCallStatus() {
		let that = this;
		let maintest = plus.android.runtimeMainActivity();//获取activity
		let Contexttest = plus.android.importClass("android.content.Context");// 上下文
		let telephonyManager = plus.android.importClass("android.telephony.TelephonyManager"); //通话管理
		let telManager = plus.android.runtimeMainActivity().getSystemService(Contexttest.TELEPHONY_SERVICE);
		let receiver = plus.android.implements('io.dcloud.android.content.BroadcastReceiver', {
			onReceive: function(Contexttest, intent) {
				plus.android.importClass(intent);
				let phoneStatus = telManager.getCallState();
				that.callStatus = phoneStatus; //电话状态 0->空闲状态 1->振铃状态 2->通话存在
				switch (phoneStatus) {
					case 0:
						console.log("电话挂断")
						break;
					case 1:
						console.log('振铃状态');
						break;
					case 2:
						console.log('通话存在')
						break;
				}
			}
		});
		let IntentFilter = plus.android.importClass('android.content.IntentFilter');
		let filter = new IntentFilter();
		filter.addAction(telephonyManager.ACTION_PHONE_STATE_CHANGED); // 监听电话状态
		maintest.registerReceiver(receiver, filter); // //注册监听
	}
}

到了这里,关于uniapp 安卓如何获取通话权限,监听通话情况的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp获得手机通话记录、短信等权限

    获取通话记录 permission.js中部分代码(参考插件App权限判断和提示 - DCloud 插件市场)

    2024年04月12日
    浏览(27)
  • 如何在非root安卓设备上让Termux获取root权限

    在经过root的安卓手机上,我们可以获取管理权限,可以在系统权限级别上调整和编辑应用程序,如SuperSu、 Kingroot、 Magisk等等方式。如果要root设备,那么建议使用magisk方式,毕竟它是不会轻易修改系统文件的。而如果你不想root设备,那么就可以用FakeRoot这个方法来安装sudo命

    2023年04月19日
    浏览(30)
  • 解决uniapp手机端获取用户设备是否授权,进行授权提示,获取用户相机授权(Android 权限清单整理)

    最近在上架app时遇到了一些授权询问的问题,在这里简单记录一下,主要使用的是uniapp进行开发,在官网中有说明使用uni.authorize()进行授权请求,但是该方法不支持h5和app,所以采用plus.android.requestPermissions()方法进行授权判断操作,话不多说直接上代码 以下代码进行的

    2024年02月05日
    浏览(37)
  • 在 Android 上恢复已删除的通话记录 - 安卓手机通话记录恢复技巧

    有时,Android 用户会在内存空间用完时删除他们的通话记录。他们认为那些电话通话记录将不再需要了,但突然出于某些原因他们需要恢复那些已删除的通话记录。 恢复已删除的照片、视频、音乐、短信和通话记录等数据在以前是一件很难的事情。但是现在如果你想恢复一个

    2024年02月08日
    浏览(37)
  • uniapp - [安卓|苹果]实现App端引入高德地图,详细获取当前用户手机定位、两个地点的路线规划及相关示例代码,uniapp安卓Android平台软件下使用高德地图,获取当前位置信息及规划路线

    在uniapp安卓app端 | 苹果app端开发中,详细完成APP端引入使用高德地图插件,提供可直接复制的示例,例如获取当前定位及取到当前城市位置信息,规划两个位置的路线(规划城市2个点的路线轨迹及在地图上显示)等示例。 新手跟着教程一步步来,轻松实现此功能。 首先,

    2024年02月22日
    浏览(56)
  • UniApp中获取手机通话记录的方法及源代码实现

    UniApp中获取手机通话记录的方法及源代码实现 近期有用户在UniApp开发中询问如何获取Android手机的通话记录,这里将介绍一种使用plus.android接口的方法,并提供相应的源代码示例。 UniApp是一种基于Vue.js的跨平台开发框架,可以同时开发iOS和Android应用。在UniApp中,我们可以通过

    2024年01月17日
    浏览(32)
  • uniapp 安卓端实时监听网络状态

    写在uniapp的APP.vue的onShow方法中 uni.onNetworkStatusChange(function(res) {                 if (res.isConnected) {                     uni.showModal({                         title: \\\'系统提示\\\',                         content: \\\'当前设备网络已恢复\\\',                  

    2024年02月05日
    浏览(25)
  • uniapp app安卓 键盘监听(无input)

    如图: 要实现点击asdfhjkl任意键唤起答题说明弹窗,弹窗唤起的情况下点击enter键关闭弹窗,无弹窗的情况下点击enter键直接开始挑战   事件说明链接:HTML5+ API Reference

    2024年02月12日
    浏览(31)
  • uniapp ——苹果安卓系统——手机左滑返回监听

    监听安卓及苹果系统的物理返回上一页: 目前以下方法 只支持  APP   ,不支持小程序 / H5 等平台 安卓手机的物理返回键:只需要使用官方提供的  onBackPress  生命周期钩子函数 onBackPress  写在与 methods / onLoad 同级位置 参考网址: 页面简介 | uni-app官网 苹果手机上,是无法使

    2024年02月13日
    浏览(32)
  • uniapp在安卓10+情况下移动文件的解决方案

    首先看一个简单的问题,就是uniapp如何将下载的图片保存到手机本地,直接看下面的代码 主要说明一个问题,就是安卓平台本地路径的问题, \\\'file:///storage/emulated/0/nameplate/\\\' + filename 这行代码实际上是在用户打开安卓手机文件管理器的根目录下的nameplate文件夹下下载指向imgU

    2024年02月02日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包