一、报错日志:
02-14 17:13:00.003 E/AndroidRuntime( 5592): FATAL EXCEPTION: main
02-14 17:13:00.003 E/AndroidRuntime( 5592): Process: com.lr.lrhyddoctor, PID: 5592
02-14 17:13:00.003 E/AndroidRuntime( 5592): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.lr.lrhyddoctor/io.rong.callkit.meeting.MeetingActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'void cn.rongcloud.rtc.api.stream.RCRTCCameraOutputStream.setVideoConfig(cn.rongcloud.rtc.api.stream.RCRTCVideoStreamConfig)' on a null object reference
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3521)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3693)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2135)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.os.Handler.dispatchMessage(Handler.java:106)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.os.Looper.loop(Looper.java:236)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.ActivityThread.main(ActivityThread.java:8059)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at java.lang.reflect.Method.invoke(Native Method)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:656)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:967)
02-14 17:13:00.003 E/AndroidRuntime( 5592): Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'void cn.rongcloud.rtc.api.stream.RCRTCCameraOutputStream.setVideoConfig(cn.rongcloud.rtc.api.stream.RCRTCVideoStreamConfig)' on a null object reference
02-14 17:13:00.003 E/AndroidRuntime( 5592): at io.rong.callkit.meeting.MeetingPresenter.config(MeetingPresenter.java:233)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at io.rong.callkit.meeting.MeetingActivity.onCreate(MeetingActivity.java:71)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.Activity.performCreate(Activity.java:8159)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.Activity.performCreate(Activity.java:8131)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1310)
02-14 17:13:00.003 E/AndroidRuntime( 5592): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3494)
二、报错代码段:
RCRTCEngine.getInstance().getDefaultVideoStream().setVideoConfig(videoConfigBuilder.build());
三、排查思路:
- 检查在 Application 中初始化融云 SDK 了么?
RongIM.init(this, APP_KEY, false);
或
RongIMClient.init(this, APP_KEY, false);
- 连接融云 Server 是否成功?即 IM 连接操作:RongIMClient.connect 。
注:config、joinRoom 等后续操作需要在 SDK 初始化、获取 token、连接融云(RongIMClient.connect)成功之后进行。
- RCRTCEngine 是否初始化?示例代码如下
RCRTCConfig.Builder configBuilder = RCRTCConfig.Builder.create();
RCRTCEngine.getInstance().init(context, configBuilder.build());
- 音视频服务是否开启?(该空指针报错一般不是这个原因,但是也可排查一下)