MIUI 中通话录音是如何确认是拨入还是拨出?

2021-08-02 03:22:43 +08:00
 lixyz

在写一个 APP,可以把自己手机上的通话录音保存到云端

这就涉及到一个拨入和拨出的区别

通过这个方法可以获取到在 sqlite 中的数据:

                    val recordCursor = context.contentResolver.query(
                        MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
                        null,
                        "${MediaStore.Audio.Media.RELATIVE_PATH} = ?",
                        arrayOf("MIUI/sound_recorder/call_rec/"), null
                    )

但是无法区分是打出的还是打入的

有没有朋友做过相关的内容啊,是不是在别的表中存着呢?烦请指点一二,感谢感谢

10070 次点击
所在节点    Android
5 条回复
ysc3839
2021-08-02 05:35:06 +08:00
你这是获取 Android 媒体存储里面缓存的数据吧?这些数据应该是直接扫描相关文件得出的,文件本身没有对应数据,那是获取不到的。
hervey0424
2021-08-02 07:34:25 +08:00
通过通话记录应该可以知道吧
BryanYue
2021-08-02 10:07:40 +08:00
写个广播,拿 TelephonyManager.CALL_STATE_IDLE 的 state 来区分状态,通话结束后去取录音
StonyGround
2021-08-02 15:20:53 +08:00
CallLog.Calls.TYPE 了解一下
lixyz
2021-08-09 18:31:35 +08:00
@StonyGround CallLog.Calls.TYPE 确实可以区分来电去电,但是没有字段是对应录音文件的啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/793058

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX