java - Android.net.rtp - AudioStream.join() - java.lang.NullPointerException

标签 java android nullpointerexception voip rtp

我遇到了 java.lang.NullPointerException,但无法解决问题。

我必须使用 Android.net.rtp 进行简单的 VoIP 传输。

我编写了以下代码:

private static final AudioCodec myAudioCodec_COSTANTE = AudioCodec.PCMU ; 
private static final int myAudioGroupTX_COSTANTE = AudioGroup.MODE_NORMAL ; 
private static final int myAudioGroupRX_COSTANTE = AudioGroup.MODE_NORMAL ;
private static final int myRtpStreamTX_COSTANTE = RtpStream.MODE_SEND_ONLY ;
private static final int myRtpStreamRX_COSTANTE = RtpStream.MODE_RECEIVE_ONLY ; 
private static final int myAudioManagerTX_COSTANTE = AudioManager.MODE_IN_COMMUNICATION;
private static final int myAudioManagerRX_COSTANTE = AudioManager.MODE_IN_COMMUNICATION; 


myAudioStream = new AudioStream(localClientIP);
myAudioGroup = new AudioGroup();
myAudioGroup.setMode(myAudioGroupTX_COSTANTE);
myAudioStream.join(null); 
myAudioStream.setCodec(myAudioCodec_COSTANTE);
myAudioStream.setMode(myRtpStreamTX_COSTANTE);

Log.w(tag, "FAU dentro startGroupVoIP_TX(); myAudioGroup: " + myAudioGroup);  //My Debug
Log.w(tag, "FAU dentro startGroupVoIP_TX(); myAudioStream: " + myAudioStream);  //My Debug

myAudioStream.join(myAudioGroup); //Row 124

我收到以下错误(android studio logcat):

06-16 14:58:52.855    6690-6726/com.fpricoco.iptetraclient W/Voip_Manager﹕ FAU dentro startGroupVoIP_TX(); myAudioGroup: android.net.rtp.AudioGroup@4240d718
06-16 14:58:52.855    6690-6726/com.fpricoco.iptetraclient W/Voip_Manager﹕ FAU dentro startGroupVoIP_TX(); myAudioStream: android.net.rtp.AudioStream@4240d3f0
06-16 14:58:52.865    6690-6726/com.fpricoco.iptetraclient D/Voip_Manager﹕ Eccezione sul try del nuovo Thread di startGroupVoIP_TX(); exception: java.lang.NullPointerException
    java.lang.IllegalStateException: java.lang.NullPointerException
            at android.net.rtp.AudioGroup.add(AudioGroup.java:156)
            at android.net.rtp.AudioStream.join(AudioStream.java:97)
            at com.fpricoco.iptetraclient.VoIP.Voip_Manager$1.run(Voip_Manager.java:124)
            at java.lang.Thread.run(Thread.java:856)
     Caused by: java.lang.NullPointerException
            at android.net.rtp.AudioGroup.add(AudioGroup.java:149)
            at android.net.rtp.AudioStream.join(AudioStream.java:97)
            at com.fpricoco.iptetraclient.VoIP.Voip_Manager$1.run(Voip_Manager.java:124)
            at java.lang.Thread.run(Thread.java:856)

如您所见,我在代码的最后一行(第 124 行)收到了错误。 此外,在 logcat 的前 2 行中,您可以看到我的调试显示 2 个对象“myAudioGroup”和“myAudioStream”不为 NULL。 有人可以帮忙吗?我几天来一直在解决这个错误,但没有成功...... 先感谢您 福斯托

最佳答案

首先,您必须在调用 myAudioStream.join(myAudioGroup); 之前先调用 myAudioStream.associate (InetAddress remoteAddress, int remotePort)

关于java - Android.net.rtp - AudioStream.join() - java.lang.NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30868875/

相关文章:

java - Snakeyaml 命名约定

Java notifyAll 没有立即醒来

java - Java 中的 for 循环在获取下一个输入之前运行 3 次

java - GAE 和套接字数据

android - 为什么 LocationManager 初始化后为空?我正在尝试删除更新()

java - 安卓。未分配值

android - android中的 float 窗口

android - 与模拟器和 Web 相比,真实 Android 设备中的 Retrofit 响应时间更慢

java - 当出现null时如何用Stream过滤Map?

java - Android 从另一个 fragment 设置 Textview