- 同一家长连续3个通话一接通就挂断abortVoip?
"groupId": "wxf830863afde621ebWmpfVoip9061363241100455383" "openId": "o9OP85UKKRh333E677b0mTYNIYQw" 被叫家长号码:13831133017 异常接通挂断通话时间:2024-05-20 09:40:29 "groupId": "wxf830863afde621ebWmpfVoip1084474001502177462" "openId": "o9OP85UKKRh333E677b0mTYNIYQw" 被叫家长号码:13831133017 异常接通挂断通话时间:2024-05-20 09:40:53 "groupId": "wxf830863afde621ebWmpfVoip531208403849747141" "openId": "o9OP85UKKRh333E677b0mTYNIYQw" 被叫家长号码:13831133017 异常接通挂断通话时间:2024-05-20 09:43:34
05-20 - 学生打电话给家长,家长接听后显示“接听异常,通话结束”,日志事件是abortvoip?
学生最近打电话给家长一直没办法接听,家长端提示“接听异常,通话结束”,查看日志,结束通话事件为abortvoip,status为unknown,请协助排查是什么原因导致? 设备SN:3002407000045 openId:o9OP85UHKh9FXWpzFnepIqnWpX-8 roomId:wxf830863afde621ebWmpfVoip18409803949132307495 通话时间:2024-10-17 12:14:18 家长微信已上传2024-10-17日志 [图片]
10-18 - 4G网络下,wmpf激活时一直报10013,使用wifi和以太网就正常了?
如题,在使用wmpf-cli 1.2.0,voip 1.3.1版本的情况下,设备使用4G网络激活时,得到这样的提示: TaskErrorException(taskError=TaskError{errType=2, errCode=10013, errMsg=request timeout}) at com.taisau.tencentvoip.WmpfApi$activateDevice$1$result$1.onCallback(WmpfApi.kt:98) at com.taisau.tencentvoip.WmpfApi$activateDevice$1$result$1.onCallback(WmpfApi.kt:84) at com.tencent.mm.ipcinvoker.IPCInvoker$IPCInvokeCallbackWrapper.onCallback(IPCInvoker.java:246) at com.tencent.mm.ipcinvoker.aidl.AIDL_IPCInvokeCallback$Stub.onTransact(AIDL_IPCInvokeCallback.java:68) at android.os.Binder.execTransact(Binder.java:731) 疑问:使用相关库对网络有什么要求吗?
06-04 - 调用硬件注册报错50093?hostAppId如何切换绑定设备类型?
请求地址:https://api.weixin.qq.com/wxa/business/runtime/adddevice?access_token=YOUR_ACCESS_TOKEN 请求参数:{"product_id": 3116,"device_id_list": ["5M62338025357585"], "model_name": "HT_FLY_LEANING"} 返回错误:{ "errcode": 50093, "errmsg": "hostappid error hint: [.fFfOgKfO-jvVIiA] rid: 6732c4da-08b860b3-75f31698"} 核对了参数没有错,检查微信终端合作平台的信息发现,当前使用的hostAppid并没有绑定model_name为HT_FLY_LEANING的设备类型,是这个原因导致失败? 相关截图如下: [图片] [图片] [图片]
11-12 - 设备,等待通话中?
[图片] [图片] 设备经常出现卡在等待通话中的界面,报错"getWiMvPFDeviceToken:faitcert fall: /data/user/0/com.tencent,wmpf/files,cert.pem (No such file or directory) 但手动清除小程序框架的缓存数据,再次调用就不报错了,但一段时间使用后会再次出现以上问题, registerMiniProgramDevice 返回注册成功
11-09 - WMPF设备端发起视频通话,通话接通,点设备通话界面...在弹窗中点设置在进入设置界面后crash?
设备端日志: http://pkgnocdn.yscdn.top:5781/package/bpapk/tools/xlog.zip 以下是崩溃前的日志片段: 14:11:43.354 Adreno I PFP: 0x005ff087, ME: 0x005ff063 14:11:43.356 BaseActivity D on create option menu, menuCache size:%d 14:11:43.356 BaseActivity W error, mActionBar is null or cache size:%d 14:11:43.357 MicroMsg.P...wnListView D mThis.getLeft()=%s, mThis.getTop()=%s, mThis.getRight()=%s, mThis.getBottom()=%s 14:11:43.367 com.tencent.wmpf I android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::hasWideColorDisplay retrieved: 0 14:11:43.369 OpenGLRenderer I Initialized EGL, version 1.4 14:11:43.370 OpenGLRenderer D Swap behavior 2 14:11:43.850 MicroMsg.W...nceAdapter D find content view error 14:11:43.867 Luggage.Th...otDelegate I [, , 13864]:====== ks3@84899043 state=CREATED delay=1999ms 14:11:43.935 libEGL E validate_display:92 error 3008 (EGL_BAD_DISPLAY) 14:11:43.936 OpenGLRenderer W Failed to make current on surface 0x6fe7ed15c0, error=EGL_BAD_DISPLAY 14:11:43.937 libEGL E validate_display:92 error 3008 (EGL_BAD_DISPLAY) 14:11:43.938 OpenGLRenderer A Failed to make current on surface 0x0, error=EGL_BAD_DISPLAY 14:11:43.938 NativeCrash V Entered signal handler. 14:11:43.939 NativeCrash V SP: 0x6ffabf4bd0 14:11:43.940 NativeCrash V Allocated child stack at 0x70983e8000 14:11:43.951 NativeCrash V Allocated child stack at 0x6ffb078000 14:11:43.955 zygote64 I Do full code cache collection, code=121KB, data=87KB 14:11:43.956 zygote64 I After code cache collection, code=119KB, data=65KB 14:11:44.214 NativeCrash V Call crash dump callback. 14:11:44.397 MicroMsg.A...rrentQueue I [, , 14013]:dispatch name[operateWXData], callbackId[100], appId[wx36a9f85f2dc5d3d4] component[101300963], queueLength:0, inFlightTasksCount:0 14:11:44.397 Luggage.WX...teWXDataLU I [, , 14013]:AuthInvoke appId:wx36a9f85f2dc5d3d4, data:{"api_name":"GetNativeVoipRoomInfo","data":{"group_id":"wxf830863afde621ebWmpfVoip1310376793694920176","plugin_version":"2.4.0","request_time":1730959904},"operate_directly":true,"plugin_appid":"wxf830863afde621eb"} 14:11:44.403 Vending.Pipeline I [, , 14048]:pausing, just return. 14:11:44.454 NativeCrashDump I type=1400 audit(0.0:4663): avc: denied { call } for scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:hal_memtrack_default:s0 tclass=binder permissive=1 14:11:44.511 WMPF.Invok...ntProvider I [, , 11898]:insert: handleCallbackInvokeChannel success 14:11:44.735 NativeCrash V Signal handler restored. 14:11:44.735 NativeCrash V Signal handler mutex released. --------- beginning of crash 14:11:44.735 NativeCrash V Resend signal 6, code: -6 14:11:44.736 libc A Fatal signal 6 (SIGABRT), code -6 in tid 13934 (RenderThread), pid 13864 (.wmpf:container) 14:11:44.843 Vending.Pipeline I [, , 14048]:last one resolved, dequeue next. 14:11:49.659 MicroMsg.O...ceAudioMgr I [, , 14166]:amyfwang,error,deltaTime:4721
11-07 - 家长反馈接电话一接就断开?
问题描述 家长反馈接电话,一接就断 设备sn 3002334000420 拨号时间 2024-09-20 15:08:48、2024-09-20 09:38:40 日志贴图 如下图 openid o8m9h5K1U4C8fm8DHAMf2XUghS64 家长手机微信日志是否已上传 已上传 WMPF 版本号 1.2.0 小程序 appId wx09cadc85337dee3b [图片]
09-20 - 家长不响铃提示?
安卓WMPF 版本号: v1.2.0 VoIP 插件版本号:last 小程序 appId: wx40d89a83830ac8b8 sn: cb9ad33d 发生时间: 2024-09-09 13:19:20 唤起小程序 2024-09-09 13:20:25 收到endvoip时间 家长反馈,收不到响铃提示, 只有在挂断的时候 收到一条未接提示. 我们已经让家长按照通话提醒异常排查流程做了排查 还是不行. 打开微信锁屏放在旁边就是没有响铃提示. 这个要怎么处理 或者 怎么定位原因呢
09-09 - wmpf在打电话过程中,触发anr错误,导致画面卡死?
今天9点27分在通过过程中出现死机,一直卡在通话界面 Line 554938: 04-28 09:27:21.996 1291 1496 E ActivityManager: ANR in com.tencent.wmpf:container (com.tencent.wmpf/.app.WMPFContainerActivity) 04-28 09:27:21.996 1291 1496 E ActivityManager: ANR in com.tencent.wmpf:container (com.tencent.wmpf/.app.WMPFContainerActivity) 04-28 09:27:25.407 1291 1497 I ActivityManager: Killing 7036:com.tencent.wmpf:container/u0a17 (adj 0): user request after error 04-28 09:27:25.407 1291 1497 I am_kill : [0,7036,com.tencent.wmpf:container,0,user request after error] 日志已在群里提供
04-28 - 手机显示已授权,设备提示未绑定,删除小程序重复授权后过两天又提示未绑定;以前可正常通话家长也出现过?
13728125868、openid:o9OP85fqXWVLG6W9EKsJUQ-hLaug、SN:300235000448、groupid:gOhVJPbxwDRHG3J6Vod6JbA 13780886548、openid:o9OP85YSj24DWowDDNey19-321pc、SN:3002334000768、groupdid:gis_40Un1imkf5ZqDYOgF_A
04-15 - 家长反馈一接听就自动挂断了?
家长反馈一接听就自动挂断了,查日志发现多次通话都是出现 joinFailListener "{\"message\":\"init failed: -2 errCode=2003\",\"errMsg\":\"init failed: -2\",\"errCode\":2003,\"cause\":{\"errMsg\":\"joinVoIPChat:fail -10086, -3, init failed: -2, -1\",\"errCode\":-1000}}" roomID: wxf830863afde621ebWmpfVoip10892080715282130804 时间:2024-04-01 14:27:23 roomID: wxf830863afde621ebWmpfVoip9689726856651041994 时间:2024-03-27 21:37:17 麻烦帮查下什么原因!
04-01 - 一直无法正常通话?
groupId=wxf830863afde621ebWmpfVoip1451799081574819284,SN:3002332000149 ,时间:2024-04-10 13:47:32 家长反馈无法通话,微信是最新版本,请帮忙核实原因 通话ContentProvider endVoip WMPFSourceData(groupId=wxf830863afde621ebWmpfVoip1451799081574819284, eventName=endVoip, eventTime=2024-04-10T05:47:32.018Z, data=WMPFData(keepTime=0, callerName=, roomType=video, isCaller=true, listenerName=小乖, status=null, error=null), type=null, status=null, origin=null, errCode=null, isSuccess=null) 通话ContentProvider abortVoip WMPFSourceData(groupId=wxf830863afde621ebWmpfVoip1451799081574819284, eventName=abortVoip, eventTime=2024-04-10T05:47:32.016Z, data=WMPFData(keepTime=0, callerName=null, roomType=null, isCaller=null, listenerName=null, status=unknown, error=ErrorData(errMsg=room status is abort)), type=null, status=null, origin=null, errCode=null, isSuccess=null)
04-10 - Voip获取CallerTicket报EMMC IO,怎么解决?
[图片]
2023-06-08 - VOIP已授权但无推送?
OPENID:ofdcz5eM1pu3uGoT4qB0bd6EVkmI 通话时间:2024-03-14 20:36:18 用户已上传日志 ---------------------------- 今日测试复现通话时间:2024-03-26 20:24:39 用户删除小程序重新授权后就正常,正常通话的时间:2024-03-26 20:45:30
03-26 - 微信人脸识别插件wxfacepay,校园话机模式走license套餐
集成软件需要wxfacepay刷脸插件版本需要2.3.8及以上 硬件设备需要完成微信刷脸设备小程序设备认证,必须选择使用 WMPF认证设备等系列操作 使用插件initByCaller通话时传入businessType=3,并传入voipToken,其他参数不变
03-22 - voip initByCaller设备端拨打微信报错voipToken 错误 errCode=13?
wmpf版本2.2,之前一切正常,昨天开始突然无法拨打,调试后发现报错如下图[图片],清除小程序框架数据,重新安装都不行,奇怪的是其他设备都可以拨打,同一个小程序,同一个app同一个设备 Xlog地址:https://mp-5a4fbcf8-691c-49f5-9417-5422408672ca.cdn.bspapp.com/filelog/xlog.7z
02-28 - 视频话机发起通话加入房间成功,家长接不起来,日志显示forceFromApp?
WMPF:2.2 主叫:300235000127 被叫:13769626842 通话时间:2024-03-18 15:17:23 学生姓名:农佳福 家长已上传手机日志
03-18 - 视频话机发起通话加入房间成功,家长接不起来?
WMPF:2.2 主叫:3002315000931 被叫:13629486042 通话时间:2024-03-18 12:16:01 2024-03-18 12:36:20 学生姓名:森宇鹏 家长手机已上传日志
03-18 - 应用运行过程中,wmpf忽然弹框显示崩溃?
wmpf版本:2.1 时间2024.0310.21:58 [图片] xlog已在群里提供
03-13 - Voip视频通话无法接通,接听后自动挂断,最近反馈较多?
主叫:3002334000298 被叫:13824960962、13411340803、13421211647、15218155928、13119874980 时间:2024-03-01 18:36:24, 2024-03-0118:33:11, 2024-03-01 18:30:12, 2024-03-01 18:29:33, 2024-03-0118:15:21 (5个时间按顺序对应上面五个被叫) xlog已在群里提供
03-02 - 微信电话异常,如何分析具体原因?
微信电话打不了的问题一直有反馈,从log中分析,每天都有几百笔异常,如何才能锁定具体问题?是网络原因?还是机器原因?还wmpf有不完善的地方? 进入房间这么难吗? [图片] [图片]
03-06 - 50%通话报错joinFailCaller?
(安卓)WMPF 版本号: v1.2.0 VoIP 插件版本号: v2.3.8小程序 appId: wxf39c7c83360e07ab问题现状:学校整体接通率不到20%,其中50%的通话记录报错joinFailCaller(安卓终端拨打后,一直显示「连接中」,无法加入房间,然后突然中断),尝试重启WMPF后依旧如此。问题背景:(1)安排测试过单台设备网速300kb/s;(2)使用以太网和物联网卡都报错joinFailCaller;(3)同一网段,更换10.1寸竖屏公话机接通率正常,使用21.5寸电话班牌就频繁报错joinFailCaller,2款设备为同一厂家,相同芯片配置设备。通话信息如下[图片]
03-05 - 小程序wmpf占用很多内存怎么优化?
我们拨打电话的时候wmpf占了700多M,问下这个怎么解决
02-06 - 小程序音视频通话(For硬件)近期重要更新(2023.12.27)
一、安卓 WMPF 发布 v2.2.0 版本 更新日志 新增:getMiniProgramDeviceInfo 获取小程序注册设备的信息。新增:registerPushMsgEventListener 更稳定的推送消息监听接口。新增:WMPFCloseButtonActionType 支持枚举值 TYPE_BAN。新增:WMPFClientProvider 封装小程序和移动应用通信接口。新增:WMPFMusicApi 系列新的背景音频 API。新增:registerDeviceActivationOutdatedEventListener 监听设备激活状态过期事件。新增:WMPF cli 支持 自动激活设备。修复:Invoke Channel 某些情况下消息丢失问题。修复:安卓应用 targeting Android 11 无法调用接口的问题。修复:网络异常恢复后,音视频通话加入房间失败的问题。修复:关闭小程序时偶现导致 WMPF 自杀问题。修复:增强框架稳定性。 下载地址: 参见:安卓小程序硬件框架发布 安卓 WMPF 发布已迁移到官网,github release 后续不再继续更新。 二、VoIP 插件已更新到 v2.3.9 更新日志 新增:发起通话时支持使用 timeLimit 参数设置最大通话时长。新增:发起通话时新增返回 chargeType 表示当次通话使用时长还是 License 计费。新增:setVoipEndPagePath 支持设置页面跳转的方式。新增:视频通话支持用户点击屏幕隐藏按钮。新增:微信客户端视频通话支持用户切换扬声器和听筒。新增:支持控制视频通话时使用 setUIConfig 设置主窗口默认显示本端还是对端。优化:设备端如果设置了跳转页面,通话结束后不显示通话详情。优化:优化通话稳定性。插件文档已重新整理并迁移到小程序文档官网,可在文档中查看插件更新日志。 三、其他更新 产品策略优化:2023.12.14 起,iOS 用户使用 Windows/Mac 微信客户端,并设置了「手机通知已关」时,如果微信不在前台时,可以弹出通话提醒。该功能自动生效,不需要用户或开发者手动更新。(目前只支持在手机端接听,不支持在 Windows/Mac 微信客户端接听 ) 微信团队 2023年12月27日
2023-12-27 - ios用户反馈手机接收小程序通话无反应?
WMPF: v2.1.0 VoIP插件:v2.3.3 小程序AppId: wx0427ef12d5b5ee23 ios用户反馈接收小程序通话微信客户端毫无反应,偶尔有响铃,10月27日和10月30日在学校拨打测试 微信:cmjzxy, 手机微信日志已上传 [图片][图片]
2023-10-31 - wmpf2.0.0铃声和听筒体验能跟wmpf1.2.0一致么?
下面说的是设备侧 wmpf1.2.0 ,铃声外放,通话后声音听筒出 wmpf2.0.0,setUIConfig设置handfree true后,铃声和通话都是外放;false后,铃声和通话都是听筒出 诉求:wmpf2.0 铃声和听筒体验能跟wmpf1.2一致么,谢谢! ------------------------------------------ 插件升级2.3.4,wmpf2.1后 setUIConfig设置handfree false后,语言拨号第1次无铃声之后有铃声,视频拨号听筒外放都无铃声 诉求:wmpf2.1 铃声和听筒体验能跟wmpf1.2一致么,谢谢!
2023-11-14 - 设备拨打到手机微信端, 手机端无任何操作, 自动挂断, 设备端提示对方已拒绝?
(安卓)WMPF 版本号:v1.1.0VoIP 插件版本号:最新设备SN: AS-XC6A5CFD85C884小程序 appId: wx5968b15859ae2b35时间: 2023/09/15 15:02微信号: VXIAO-016手机微信端已上传日志时间 2023/09/15 14:58-15:02 设备拨打到手机微信端, 手机端无任何操作, 自动挂断, 设备端提示对方已拒绝?, 同一台设备打给其他的微信手机端正常, 麻烦查一下日志
2023-09-15 - 用户发起通话前断网,之后恢复网络,设备端拨打电话后一直拨打即挂断?
设备端发起通话前或发起通话时短暂断网,设备拨打电话后一拨即断,手机端用户接收通话通知,接听即断 WMPF 版本号:v1.2.0 VoIP 插件版本号: v2.3.0 小程序 appId: wx0427ef12d5b5ee23 接听方微信用户openIdoiMq55TqCNz-itlIR0ir9GJJqwlU 通话异常时信息joinFailCaller:joinVoIPChat:fail: -10086, -1, Already in room or joining, -1 设备xlog日志:https://https://test.edu1010.cn/app-files/vphone/phoneLog/865060069874400xlog20230908.zip 手机端微信日志已上传 [图片]
2023-09-08 - 学生拨打电话,家长一接听就挂断?
sn:f4976852 openID:oOZxI4wmbdC_UAPA-2ICYs4QsIKM 时间:2023-09-05 12:40:24 、2023-09-05 18:08:34
2023-09-06 - 断网造成下次拨号异常?
1、有9台机器用4G卡,欠费断网超过10小时,缴费后网络自动续上。发现拨号都失败了,只能重启才解决问题。 由于机器在学校,看不到当时小程序屏幕发生了什么。 2、其中3002252000124出现的时间是2023-09-12 12:22:48到2023-09-12 12:48:59。 3、没有产生通话记录,所以拿不到openId。 其他机器分别sn是: 3002252000439 3002252000029 3002252000031 3002252000124 3002252000030 3002252000297 3002335000006 3002252000324 3002335000005
2023-09-12 - voip通话的网络要求的标准是多少呢?
学校方面要求咱们出个标准:百兆、二百兆、千兆、各能带起几台机器、或是网络其他要求什么标准?学校本来是提供网络的,都自认为自己学校的网络还很好,目前来看提供网络的学校无线不行、带宽低的不行 这个标准需要怎么样测算?
2023-09-11 - 适配隐私保护协议接口
1、相关api说明 适配过程中主要是用到了以下几个接口 1. wx.onNeedPrivacyAuthorization:用于监听隐私接口需要用户授权事件,只有当隐私协议需要用户授权时才会由平台触发此事件,然后开发者需要弹窗显示隐私协议说明。如果用户拒绝授权,则隐私接口调用失败,在下次调用到隐私接口时还会继续弹。 2. wx.requirePrivacyAuthorize:用于模拟隐私接口调用,并触发隐私弹窗逻辑,也就是会触发wx.onNeedPrivacyAuthorization,但如果用户之前已经同意过隐私授权,会立即返回success回调,不会触发 wx.onNeedPrivacyAuthorization 。这个api的使用场景目前我是用在获取用户昵称时,在下一篇文章会进行说明。 3. wx.openPrivacyContract:用于打开隐私协议页面。 其他api大家可以根据具体情况选择使用。 2、弹窗思路 其实就是写一个自定义组件,然后在有调用到隐私接口的页面引入,利用自定义组件的attached方法,把各个页面的隐私弹窗组件的显示、隐藏方法保存到自定义组件的全局变量中,当用户点击隐私协议弹窗的同意、拒绝按钮时调用resolve方法,将对应的参数通知给平台。 3、注意点 隐私接口在隐私保护指引中有声明才能调用基础库版本2.32.3及以上开始支持2023.9.15号之前,在 app.json 中配置 __usePrivacyCheck__: true 后,会启用隐私相关功能,如果不配置或者配置为 false 则不会启用。2023.9.15号之后,不论 app.json 中是否有配置 __usePrivacyCheck__,隐私相关功能都会启用wx.onNeedPrivacyAuthorization 是覆盖式注册监听,若重复注册监听,则只有最后一次注册会生效同意授权后如果想取消授权,在开发工具上 清缓存->清除模拟器缓存->清除授权数据,在手机上删除小程序即可隐私弹窗的z-index要设置成最大,避免被其他遮罩挡住导致无法点击,另外如果有调到官方的api例如wx.showLoading,也要注意是否设置了mask,避免在loading的时候弹出隐私弹窗,导致弹窗无法点击,而loading又要等弹窗关闭才会消失的尴尬情况4、代码如下 4.1、app.json "usingComponents": { //全局自定义组件 "privacyPopup": "/components/privacy/privacyPopup" }, //开启隐私相关功能 "__usePrivacyCheck__": true 4.2、自定义组件privacyPopup 4.2.1、privacyPopup.wxml <view class="container" wx:if="{{show}}"> <view class="cover {{showCoverAnimation?'cover-fade-in':''}}" catch:touchmove="return"></view> <view class="privacy-box {{showBoxAnimation?'slade-in':''}} {{device.isPhoneX? 'phx_68':''}}" catch:touchmove="return"> <view class="title flex-start-horizontal"> <view class="logo" wx:if="{{privacyConfig.icon}}"> <image class="icon" src="{{privacyConfig.icon}}"></image> </view> <view class="mini-name">{{privacyConfig.name || '小程序'}}</view> </view> <view class="tips"> <view class="privacy-content"> <view class="start">{{privacyConfig.content.start}}</view> <view class="link" bindtap="openPrivacyContract"> {{privacyConfig.content.mid}} </view> <view class="end">{{privacyConfig.content.end}}</view> </view> </view> <view class="buttons flex-center"> <button class="cancel reset-btn" bindtap="disagree">拒绝</button> <button class="save reset-btn" id="agree-btn" open-type="agreePrivacyAuthorization" bindagreeprivacyauthorization="agree">同意</button> </view> </view> </view> 4.2.2、privacyPopup.wxss @import "/app.wxss"; .cover{ background-color: #111; opacity: 0; position: fixed; left: 0; top: 0; right: 0; bottom: 0; z-index: 50000; transition: opacity .3s; } .privacy-box{ position: fixed; left: 0rpx; right: 0rpx; bottom: 0rpx; z-index: 51000; background-color: #fff; box-sizing: border-box; padding-top: 60rpx; padding-left: 50rpx; padding-right: 50rpx; border-radius: 30rpx 30rpx 0 0; transform: translateY(100%); transition: transform .3s, bottom .3s; } .cover-fade-in{ opacity: 0.7; } .slade-in{ transform: translateY(0); bottom: 0rpx; } .privacy-box .title{ font-size: 32rpx; font-weight: 500; text-align: center; margin-bottom: 40rpx; color: #161616; } .privacy-box .title .icon{ width: 46rpx; height: 46rpx; margin-right: 8rpx; vertical-align: bottom; border-radius: 50%; } .privacy-box .title .mini-name{ /*margin-bottom: 2rpx;*/ } .privacy-box .tips{ margin-bottom: 20rpx; } .privacy-box .tips .privacy-content{ color: #606266; font-size: 30rpx; margin-bottom: 20rpx; line-height: 1.6; } .privacy-box .tips .privacy-content .start, .privacy-box .tips .privacy-content .link, .privacy-box .tips .privacy-content .end { display: inline; } .privacy-box .tips .privacy-content .link{ color: #1890FF; } .privacy-box .buttons{ margin-bottom: 40rpx; margin-top: 50rpx; text-align: center; font-size: 34rpx; font-weight: 550; } .privacy-box .buttons .save{ width: 220rpx !important; height: 90rpx; line-height: 90rpx; border-radius: 14rpx; color: #fff; /*background:#fff linear-gradient(90deg,rgba(246, 120, 121,.9) 10%, rgb(246, 120, 121));*/ background-color: #07c160; margin-left: -50rpx; } .privacy-box .buttons .cancel{ width: 220rpx !important; height: 90rpx; line-height: 90rpx; border-radius: 14rpx; color: #07c160; background-color: #F2F2F2; } 4.2.3、privacyPopup.js //获取应用实例 const tabbar = require("../../utils/tabbar.js"); const app = getApp(); //用来保存各个页面注册的隐私协议回调事件 let privacyHooks = {}; if (wx.onNeedPrivacyAuthorization) { console.warn("当前基础库支持api wx.onNeedPrivacyAuthorization"); wx.onNeedPrivacyAuthorization(resolve => { console.warn("需要隐私协议弹窗:", resolve); const pages = getCurrentPages(); const route = pages[pages.length - 1].route; const hook = privacyHooks[route]; if (hook) { hook.resolve = resolve; hook.show(resolve); } else { console.error("当前页面没有注册隐藏协议弹窗回调:", route); } }) } else { console.warn("当前基础库不支持api wx.onNeedPrivacyAuthorization"); } Component({ data: { show: false, showCoverAnimation: false,//显示类别选择窗口动画 showBoxAnimation: false,//显示类别选择窗口动画 }, lifetimes: { //在组件实例进入页面节点树时执行 attached: function () { console.warn("privacyPopup attached"); const pages = getCurrentPages(); privacyHooks[pages[pages.length - 1].route] = { show: resolve => { this.show(resolve); }, close: () => { this.hide(); } } }, //在组件实例被从页面节点树移除时执行 detached: function () { console.warn("privacyPopup detached"); } }, methods: { /** * 同意隐私协议 * @param e */ agree(e) { Object.values(privacyHooks).forEach(hook => { hook.close(); hook.resolve && hook.resolve({ event: "agree", buttonId: "agree-btn" }); }); }, /** * 不同意隐私协议 * @param e */ disagree(e) { Object.values(privacyHooks).forEach(hook => { hook.close(); hook.resolve && hook.resolve({ event: "disagree" }); }); }, /** * 显示隐私协议授权弹窗 */ show(resolve) { app.fillConfig(this, ["privacyConfig"], data => { console.log("显示隐私协议弹窗"); const device = app.getSystemInfo(); this.setData({ show: true, device, }, () => { this.setData({ showCoverAnimation: true, showBoxAnimation: true }); //自定义隐私弹窗曝光告知平台 resolve({event: "exposureAuthorization"}); }); tabbar.hideTabByPrivacy(this); }); }, /** * 关闭隐私协议授权弹窗 */ hide() { console.log("隐藏隐私协议弹窗"); this.setData({ showCoverAnimation: false, showBoxAnimation: false }, () => { const that = this; setTimeout(function () { that.setData({ show: false }) }, 300) }) tabbar.showTabByPrivacy(this); }, /** * 打开隐私协议 */ openPrivacyContract() { wx.openPrivacyContract({ success: res => { console.log("openPrivacyContract success") }, fail: res => { console.error("openPrivacyContract fail", res) } }) } } }) 5、弹窗效果 [图片]
2023-09-13 - 一张图带你理解《隐私保护协议》
这是那个引起开发同学摔盆砸碗的公告 原文地址 [代码]为规范开发者的用户个人信息处理行为,保障用户的合法权益,自2023年9月15日起,对于涉及处理用户个人信息的小程序开发者,微信要求,仅当开发者主动向平台同步用户已阅读并同意了小程序的隐私保护指引等信息处理规则后,方可调用微信提供的隐私接口。 [代码] 这是开发同学需要特别关注的事项: 在 2023年9月15号之前,在 app.json 中配置 usePrivacyCheck: true 后,会启用隐私相关功能,如果不配置或者配置为 false 则不会启用。 在 2023年9月15号之后,不论 app.json 中是否有配置 usePrivacyCheck,隐私相关功能都会启用。 撒疼 这里省略一万句脏话 撒疼,看完公告,只感受到了:时间紧,任务重;具体咋搞?不知道,看不懂,一脸懵逼 图在最下面,中间有很多废话,如果看官猴急,可以直接翻到最下面 必须要看的 2 篇文章; 官方的,都是官方的,统统都是官方提供的 不知道怎么填写隐私协议,看这里:用户隐私保护指引设置 想查看隐私接口与对应的处理的信息关系,点这里:小程序用户隐私保护指引内容介绍 必须要知道的 4 个Api; wx.getPrivacySetting 查询隐私授权情况官方链接 wx.onNeedPrivacyAuthorization 监听隐私接口需要用户授权事件。 官方链接 wx.openPrivacyContract 跳转至隐私协议页面 官方链接 wx.requirePrivacyAuthorize 模拟隐私接口调用,并触发隐私弹窗逻辑 官方链接 # wx.getPrivacySetting(Object object) [代码]// # 查询隐私授权情况 # wx.getPrivacySetting({ success: res => { console.log(res) // 返回参数示例 // { // errMsg: "getPrivacySetting:ok" // needAuthorization: true // 是否需要用户授权隐私协议(如果用户之前授权过则会返回false,如果用户还没授权过则返回true,如果用户之前授权过、但后来小程序又新增了隐私收集类型也会返回true) // privacyContractName: "《xxUAT小程序隐私保护指引》" //隐私授权协议的名称 // } } }) [代码] # wx.onNeedPrivacyAuthorization [代码]// # 监听隐私接口需要用户授权事件 # /** * - 监听隐私接口需要用户授权事件 * - 当需要用户进行隐私授权时会触发 * - 触发该事件时,开发者需要弹出隐私协议说明,并在用户同意或拒绝授权后调用回调接口 resolve 进行上报 */ wx.onNeedPrivacyAuthorization(resolve => { // 需要用户同意隐私授权时 // 弹出开发者自定义的隐私授权弹窗 this.setData({ showPrivacy: true }) this.resolvePrivacyAuthorization = resolve }) [代码] # wx.openPrivacyContract [代码]// # 跳转至隐私协议页面 # wx.openPrivacyContract({ success: (res) => { // 打开成功 console.log("openPrivacyContract - success", res) // 返回参数示例 // { // errMsg: "openPrivacyContract:ok" // } }, fail: () => {}, // 打开失败 }) [代码] # wx.requirePrivacyAuthorize [代码]// # 模拟隐私接口调用,并触发隐私弹窗逻辑 # wx.requirePrivacyAuthorize({ success: () => { // 用户同意授权 // 继续小程序逻辑 }, fail: () => { // 用户拒绝授权 }, }) [代码] 一看就明白的流程图 可以查看大图,更清晰哦; [图片] 一看就会,一做就废 代码写好了,工具上就是不展示协议? 升级开发者工具,基础库版本调整到 3.0.1 如果想要代码,私信我 说话温柔点,大叔手把手教你 下一篇来提取公共方法,看官莫急
2023-08-23 - 麻烦查询open_id是否授权设备组?
家长小程序授权了如下设备组,设备端拨打电话报errCode9(硬件设备模式:openId 未绑定设备),麻烦帮忙查下如下open_id是否和设备组有授权? 家长open_id:oipWy5N8JiyDTQ0ZLno_ukPVcuMw 设备组id:gGxniAknNwKT5-dU2_8_kFw model_id:w6H7ytnCY3weA1mv35YiyQ
2023-09-03 - 服务通知里关闭小程序音视频通话后自动拒绝?
在服务通知里将小程序音视频通话拒收后,设备端拨打,手机端点击接听就挂断。测试了10次,只有1次接听成功了。虽然关闭了通知但还是能接受到通知[图片]
2023-08-25 - wx.requestDeviceVoIP组授权后,设备端怎么加入这个组?
现在wx.requestDeviceVoIP(Object object)这个接口,如果多个设备请求用户授权,应该是用isGroup:true,授权设备组这种方式吧?授权时没有传入设备编号,只有组ID, 授权成功后,设备端初始化时,怎么加入这个组ID呢,现在LINUX设备初始化wx_init这个函数,没有GroupID这个参数
2023-08-15 - 升级到sdk2.0后设备通话是外放,话筒没声音,1.0sdk正常,哪里问题呢?
升级到sdk2.0后设备通话是外放,话筒没声音,1.0sdk正常(通话是话筒出声音)。
2023-08-15 - wmpf2.0升级后,小程序手机端voip视频通话画面拉伸?wmpf1.2.0版无这个问题。
InitGlobalConfig设置为系统摄像头 1.20 版本 [图片] 2.0.0 版本 [图片]
2023-08-15 - 为什么正常使用一段时间后,设备出现未订阅的问题?需从设备组移除再添加才能正常使用。
现象:客户多次反馈拨打电话时,设备提示”未绑定设备“,需要把设备从设备组移出,重新放入设备组才可以。 每次出现,只要把设备从设备组移除,再添加到设备组就没问题了。 主叫SN:3002242000186 被叫号码:18800119275 时间:20230713 十点左右 问题:请定位为什么设备加入设备组后,并已订阅正常使用。使用一段时间后会突然出现未订阅的问题。 [图片]
2023-07-13 - 设备组已经授权,通话返回错误码9问题?
设备组 gwKcIMoUjdF0BcEDF1Gkofg 下有设备 70a468a5 openid : oxfUN5aka6JbbScD3iOABx7PQDD4 也已经授权 [图片] 用设备70a468a5 创建房间时候一直返回 错误码 9
2023-07-31 - VoIP拨打过程中断网,等待网络恢复后再次进行通话均不会成功?
复现步骤:拨打过程中设备断网,手动点击挂断按钮结束通话,网络恢复后再次拨打拉起小程序,此时小程序会直接回调endVoip事件,出现问题的"groupId":"wxf830863afde621ebWmpfVoip11370001083815757030"
2023-06-16 - voip通话中,公话机端网络异常挂断后,手机端还在通话中?
voip通话中,公话机端网络异常挂断后,手机端还在通话中,问题必现
2023-06-16 - voip通话ios/HarmonyOs系统只能打开微信时才能有强提醒?部分人员无法接收强提醒?
ios/HarmonyOs系统:手机息屏时,设备拨打手机唤起不了;清除微信后台运行,设备拨打手机唤醒不了;微信后台运行,设备拨打手机唤醒不了; sn:865060065979138,从昨天下午开始到现在,没有接收到强提醒通知; [图片]
2023-06-15 - 物联网卡可以正常使用微信和QQ客户端,但使用物联网卡拨打微信voip报voiptoken错误?
使用物联网卡拨打voip电话时,提示获取voiptoken错误,帮忙看下图片错误提示,是不是因为物联网卡服务商没有放行微信所有的域名白名单和IP白名单?还是其它原因? [图片]
2023-06-12 - voip插件 如何解决挂断时 拨打方和接听方的keepTime 不一致的问题?
拨打方的keepTime [图片] 接听方的keepTime [图片] 每次都会相差1-3秒的时间
2023-06-08 - 已安装的亲情电话终端,拨打电话时报错,请问是什么问题?
registerVoipDevice err:{"errcode":9800004,"errmsg":"device 4FgL_giGmySFKNw79C6OEQ\/aed8c257fbed is not confirmed"} [图片]
2023-06-09 - 客户投诉总是接听失败(VOIP通话)?
分析原因是接听方先进入房间,发起方后进入房间,导致接听失败。有什么方法让接听方晚接收到通话邀请或者其他解决方法
2023-05-24 - voip通话,两台设备给同一个openid 打电话,第二台设备拨打出去不会提示占线吗?
如题,第一台设备与手机已经正常进入通话,此时第二台设备拨打,手机上仍能收到通话弹窗提示
2023-05-30 - 小程序通话时接听方和设备端数据都是镜像的,有配置修改吗?
当前通过voip进行通话时,设备端和手机端显示的数据都是镜像的,查看initGlobalConfig函数配置里 没有去配置是否镜像的,有什么方法修改嘛
2023-06-05