Quickblox android - 呼叫活动开始前的音频呼叫崩溃

时间:2015-06-24 06:36:25

标签: java-native-interface quickblox

呼叫活动开始前的音频呼叫崩溃。

06-24 10:28:11.336: D/RTCClient(30532): Create new session
06-24 10:28:11.336: D/dalvikvm(30532): Trying to load lib /data/app-lib/packagename-3/libjingle_peerconnection_so.so 0x42a22eb0
06-24 10:28:11.341: D/dalvikvm(30532): Added shared lib /data/app-lib/packagename-3/libjingle_peerconnection_so.so 0x42a22eb0
06-24 10:28:11.341: D/EglBase(30532): SDK version: 19
06-24 10:28:11.346: D/WEBRTCN(30532): SetRenderAndroidVM
06-24 10:28:11.346: E/rtc(30532): #
06-24 10:28:11.346: E/rtc(30532): # Fatal error in ../../talk/app/webrtc/java/jni/jni_helpers.cc, line 267
06-24 10:28:11.346: E/rtc(30532): # Check failed: ret
06-24 10:28:11.346: E/rtc(30532): # 
06-24 10:28:11.346: E/rtc(30532): #
06-24 10:28:11.346: D/dalvikvm(30532): [SWE] ### S.LSI JIT optimization list BEGIN ###
06-24 10:28:11.346: D/dalvikvm(30532): [SWE] ### S.LSI JIT optimization list END ###
06-24 10:28:11.346: A/libc(30532): Fatal signal 6 (SIGABRT) at 0x00007744 (code=-6), thread 30532 (packagename)

行发生错误
QBRTCSession newSessionWithOpponents = QBRTCClient.getInstance().createNewSessionWithOpponents(opponents, qbConferenceType);
方法

中的

public void addConversationFragmentStartCall(List<Integer> opponents,
            QBRTCTypes.QBConferenceType qbConferenceType,
            Map<String, String> userInfo) {

        // init session for new call
        try {


            QBRTCSession newSessionWithOpponents = QBRTCClient.getInstance().createNewSessionWithOpponents(opponents, qbConferenceType);
            Log.d("Crash", "addConversationFragmentStartCall. Set session " + newSessionWithOpponents);
            setCurrentSession(newSessionWithOpponents);

            ConversationFragment fragment = new ConversationFragment();
            Bundle bundle = new Bundle();
            bundle.putIntegerArrayList(ApplicationSingleton.OPPONENTS,
                    new ArrayList<Integer>(opponents));
            bundle.putInt(ApplicationSingleton.CONFERENCE_TYPE, qbConferenceType.getValue());
            bundle.putInt(START_CONVERSATION_REASON, StartConversetionReason.OUTCOME_CALL_MADE.ordinal());
            bundle.putString(CALLER_NAME, DataHolder.getUserNameByID(opponents.get(0)));

            for (String key : userInfo.keySet()) {
                bundle.putString("UserInfo:" + key, userInfo.get(key));
                Toast.makeText(this, userInfo.get(key), Toast.LENGTH_SHORT).show();

            }



            fragment.setArguments(bundle);
            getFragmentManager().beginTransaction().replace(R.id.fragment_container, fragment, CONVERSATION_CALL_FRAGMENT).commit();

        } catch (IllegalStateException e) {
            Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
        }
    }

1 个答案:

答案 0 :(得分:2)

我的错误。应用程序中使用的创建会话方法很旧。最新的jar识别创建会话方法但视频调用webRTC样本没有。通过实现新的会话样式,音频呼叫成功运行。谢谢。