更新记录

0.0.1(2024-08-25)

  • init

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 4.25,Android:支持,iOS:不确定,HarmonyNext:不确定 × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

lime-call-logs

  • lime-call-logs 安卓端获取通话记录,搜索通话录音,监听通话状态的UTS API, 兼容uniappx
  • 目前只在小米华为上测试,由于隐私限制越来越严格,不一定能搜到录音文件。

安装

插件市场导入,自定义基座后使用,请试用后再谨慎购买或也可以购买源码版本自行修改。

代码演示

获取通话记录

import { queryCallLogs, CallLogsOptions } from '@/uni_modules/lime-call-logs'

queryCallLogs({
    // number: '指定号码',
    // name: '指定名称',
    // date: '指定时间戳 Date.now',
    limit: 10, //搜索多少条,不填则全部返回
    success(res) {
        // Map[]
        // id,number,date,duration,cachedName
        console.log('res', res)
    }
} as CallLogsOptions)

监听通话状态

import { onPhoneCallState, offPhoneCallState } from '@/uni_modules/lime-call-logs'

// 开始监听
onPhoneCallState((res) => {
    console.log('res', res)
    const state = res.get('state')
    if(state == 0) {
        console.log('电话挂断')
    } else if(state == 1) {
        console.log('电话响铃')
    } else if(state == 2) {
        console.log('通话中')
    } else {
        console.log('无权限')
    }
})

// 取消监听
offPhoneCallState()

判断是否开启通话录音

import { isOpenRecord } from '@/uni_modules/lime-call-logs'
// 仅做了小米,华为,oppo ,vivo,其他手机需要你自行添加,添加的方法就是使用PhoneUtils.getSettingsKeyValue()获取返回的value再给phoneSettingsMap加上相应的key,value.
// true 为 开启 false 为未开启
console.log(isOpenRecord())

跳转到通话自动录音页面

import { openRecordSetting } from '@/uni_modules/lime-call-logs'
// 也仅做了小米,华为,oppo ,vivo
openRecordSetting()

搜索录音文件

import { searchRecorderFile, SearchRecorderFileOptions } from '@/uni_modules/lime-call-logs'
// 现在的高版本安卓很难搜索到,所以可忽略吧这功能。
searchRecorderFile({
    time: 10000,//搜索最近10000毫秒内的录音文件
    success(res:string) {
        console.log('找到音频')
    },
    fail(err) {
        console.log('未找到')
    }
} as SearchRecorderFileOptions)

隐私、权限声明

1. 本插件需要申请的系统权限列表:

<!-- 通话记录 --> <uses-permission android:name="android.permission.READ_CALL_LOG" /> <!-- 通话状态 --> <uses-permission android:name="android.permission.READ_PHONE_STATE"/> <!-- 读取外部存储权限 --> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> <!-- 写入外部存储权限 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <!-- 录音权限 --> <uses-permission android:name="android.permission.RECORD_AUDIO"/> <application android:requestLegacyExternalStorage="true"> <meta-data android:name="ScopedStorage" android:value="true" /> </application>

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问