问题标签 [voip-android]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2064 浏览

android - VOIP 通话录音

我正在做一个在 android 中录制 VOIP 通话的项目,我没有找到任何解决方案,有很多应用程序支持手机上的 VOIP 录音。我找不到任何教程和帮助。Cube Call Recorder是提供此功能的应用程序之一,但我不知道该怎么做。我通过使用 android MediaRecorder开始录制然后启动了 whatsapp 呼叫对其进行了测试,因此其他人无法听到我的声音。通话后,我只检查了我的声音是否保存在录音中。

作为一项研究,我对一些 apk 进行了逆向工程,我发现它们在 apk 中使用了可访问性权限。

我不知道我需要了解什么我才能知道 VOIP 呼叫就像BroadcastReceiver一样来来去去。

然后,我将了解如何记录通话。

0 投票
0 回答
265 浏览

android - 刷新活动时 Android 上的 AudioRecord start() 错误。

在应用程序进入后台或刷新 callInProgressActivity 的 voip 通话期间,语音会自动从麦克风传递到扬声器。我在 AudioRecord 上收到错误状态 -38,但仅在 Google 像素手机上使用 Api 级别 27。就好像活动尝试再次使用麦克风并失败然后切换到扬声器。提前致谢!

0 投票
1 回答
174 浏览

android - 具有特定 useTargetVersion 和 minTargetVersion 的 Android ConnectionService

我是 Android 开发的新手,对 ConnectionService 很感兴趣。我看到一个文档,它提到它来自 Android API 23。如果我的项目使用 useTargetVersion=25 和 minTargetVersion=16,我还能使用 ConnectionService 吗?它可以保证它在 Android API 16 设备上运行吗?

0 投票
0 回答
109 浏览

android - 是否有可能知道 Android 中是否有活动的 VOIP 通话?

我的应用会根据工厂的不同情况在设备上播放声音。我会注意用户是否在当前通话中不使用此代码播放任何内容:

我希望能够知道用户是否在进行 VoIP 通话,以避免同时播放任何内容并尊重用户。

我不是在寻找任何 VoIP 监听器来控制传入、传出、拨号、连接或其他任何步骤的每一步。我只需要一个简单的解决方案来了解用户此时是否在设备上通话(真实通话或互联网通话)。谢谢

0 投票
1 回答
173 浏览

android - 如何为 voip 集成生成 Twilio 功能令牌?

在我的应用程序中,我想集成 Twilio 聊天、语音和视频。目前我正在开发 Twilio voip。我已使用此链接拨打电话: https ://www.ipragmatech.com/steps-make-call-android-twilio-voice/

但我的应用程序因此错误 Logcat 错误而崩溃:

我们如何获得语音的能力令牌?

0 投票
0 回答
738 浏览

android - 在 Android 的 Linphone call SDK 中接收来电时出错?

我已经在 android 应用程序中实现 VoIP 呼叫功能有一段时间了,大部分工作已经完成,但是当用户通过应用程序向另一个用户拨打电话时,大部分时间都是同一个人从它所在的地方接听电话初始化。

例如,有两个用户ABCCBA。当 ABC 呼叫 CBA 时,它是正确完成的,但是当情况相反时,即当 CBA 呼叫 ABC 时,在 Linphone 的传入方法中,它接收远程用户名为 CBA,这意味着 CBA 正在调用本身。

如何解决这个问题呢?我是否以错误的方式应用方法?

我已经完全使用了 Linphone Calling SDK for Android,甚至没有改变它的方法。

下面是接收来电的 LinphoneService 的代码。

当有任何传入呼叫时,服务中的侦听器由名称初始化,LinphoneManager.getLc().addListener它会侦听传入呼叫,其中 If 语句被提及为

现在在代码的底部有一个方法onIncomingReceived2(LinphoneCall call)。因此,当我从默认方法(即call.getRemoteAddress() )检查时,我得到的用户名与调用 Initialized 的用户名相同。

因此,当我拨打电话时,它会在同一设备上收到。如果有人能在这方面提供帮助,我将不胜感激。提前致谢。

0 投票
2 回答
2167 浏览

android - 通过蓝牙耳机接听电话

我正在开发 VoIP-Android-App。我想在活动中通过连接的蓝牙耳机接听和拒绝来电。

到目前为止我已经尝试过:

  • 使用媒体会话接收媒体按钮点击。

    问题:如果我们启动BluetoothSCO,我们不会收到任何媒体按钮点击。如果我们不启动 BluetoothSCO,我们确实会收到媒体按钮点击,但我们无法区分长按钮和短按钮点击,因为停机时间始终为 0,键码始终为 KEYCODE_MEDIA_PLAY,ACTION_DOWN 紧随其后的是 ACTION_UP。只有当我们通过蓝牙连接时才会出现这些问题。如果我们通过有线耳机连接,我们会得到适当的键码 (KEYCODE_HEADSETHOOK),并且停机时间不是 0。

  • 使用 BroadcastReceiver 监听蓝牙 SCO 连接变化。

    通过这种方法,我可以检测到用户何时想要挂断电话,例如长按蓝牙耳机,因为这会触发 SCO 断开连接。

    问题:我们无法检测用户是否想接听来电。

  • 使用dispatchKeyEventonKeyDownonKeyUp

    问题:他们根本不会被调用。

有人对如何正确处理蓝牙耳机有任何建议或最佳做法吗?非常感谢任何帮助。提前致谢!

0 投票
0 回答
1089 浏览

android - ConnectionService PhoneAccount 在 android 中注册的问题

我正在尝试Twilio用于视频通话应用程序,一端是 web,另一端是 android。使用 Firebase 触发从 web 到 android 的推送通知。我需要将推送通知转换为 android 应用程序中的来电屏幕,为此我使用ConnectionService了 API 23 中记录的可用信息。我已注册PhoneAccount如下:

我第一次注册 PhoneAccount

仅适用于 API 26,后来我将其更改为

后来一个在 API 26 中按预期工作,但在较低版本上,它给出了一个异常

java.lang.SecurityException: 这个PhoneAccountHandle 没有为这个用户注册!

有人可以帮忙解决这个问题吗?

0 投票
1 回答
4511 浏览

android - Android Twilio 视频通话,唤醒应用程序并置于前台

我正在尝试通过 Twilio Video Call 提供原生视频通话体验。这是场景:

  1. 人 AAA 称人 BBB。
  2. 人BBB没有打开应用,在后台或前台,应用处于被杀状态,甚至手机可能被锁定。
  3. 当 AAA 打来电话时,应用程序会打开一个带有接听按钮的视频用户界面。就像在 WhatsApp、Google Duo、Skype 中一样……

我们有 FCM 并正在接收推送通知。尝试在来电时打开视频通话接听按钮,而不点击通知,就像在 Whatsapp、Google Duo 中一样...(在 Android 手机中)

我们试图让一个服务在后台运行,并在其中打开一个套接字。当传入呼叫事件被发送到套接字时,套接字将侦听传入呼叫并打开 VideoCallActivity。

这是我们最好的选择,但到目前为止还没有成功。您将如何实现此功能?

0 投票
1 回答
1642 浏览

android - 通过蓝牙耳机 VoIP 接听电话

我正在开发一个 VoIP-Android-App,该应用程序需要能够通过蓝牙耳机接受/拒绝通话。

但问题是添加到SCO的连接后

单击耳机按钮后,我会听到通常在我使用电话接听电话时发出的声音,因此我假设某些 android 系统组件会捕获此信号并且不会进一步抛出它

我已经尝试过的:

1)电话状态监听器(它总是空闲的)

2) MediaSession + 无声噪音 + 媒体按钮侦听器不适用于第一次点击,第二次+点击正确处理

3) MEDIA_BUTTON 接收器不工作

我在 SO 上发现了一个类似的问题,但没有答案如何使它工作 通过蓝牙耳机接听电话

那么无论如何我可以从蓝牙耳机服务中拦截蓝牙按钮点击吗?