Kakao i ConnectLive Q&A 게시판

Android SDK 충돌문의

안녕하세요,

RemonConference 이용하여 테스트중에 이슈가 발생되어 문의 드립니다.
Facebook SDK는 별도로 사용하고 있지 않지만
Lcom/facebook/flipper/core/FlipperPlugin 클래스를 찾지 못하여 Error 가 발생합니다.

sdk ver. 2.9.11

에러로그
Rejecting re-init on previously-failed class java.lang.Class<com.remotemonster.sdk.flipper.CLiveFlipperPlugin>: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/facebook/flipper/core/FlipperPlugin;
at void com.remotemonster.sdk.flipper.CLiveFlipper.initialize(android.content.Context) (CLiveFlipper.kt:39)
at void com.remotemonster.sdk.RemonClient.initRemon(com.remotemonster.sdk.Config) (RemonClient.java:138)
at void com.remotemonster.sdk.RemonParticipant.connect() (RemonParticipant.java:158)
at com.remotemonster.sdk.RemonConference$RemonConferenceCallbacks com.remotemonster.sdk.RemonConference.create(java.lang.String, com.remotemonster.sdk.Config, com.remotemonster.sdk.RemonConference$OnEventCallback) (RemonConference.java:111)
at com.remotemonster.sdk.RemonConference$RemonConferenceCallbacks com.jake.kakaortsp.ui.stream.CastManager.getConferenceCallback(java.lang.String, org.webrtc.SurfaceViewRenderer, kotlin.jvm.functions.Function1) (CastManager.kt:60)
at void com.jake.kakaortsp.ui.activity.manage.VideoActivity.initConference() (VideoActivity.kt:74)
at void com.jake.kakaortsp.ui.activity.manage.VideoActivity.onCreate(android.os.Bundle) (VideoActivity.kt:70)
at void android.app.Activity.performCreate(android.os.Bundle, android.os.PersistableBundle) (Activity.java:7327)
at void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:7318)
at void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1271)
at android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:3094)
at android.app.Activity android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.app.servertransaction.PendingTransactionActions, android.content.Intent) (ActivityThread.java:3257)
at void android.app.servertransaction.LaunchActivityItem.execute(android.app.ClientTransactionHandler, android.os.IBinder, android.app.servertransaction.PendingTransactionActions) (LaunchActivityItem.java:78)
at void android.app.servertransaction.TransactionExecutor.executeCallbacks(android.app.servertransaction.ClientTransaction) (TransactionExecutor.java:108)
at void android.app.servertransaction.TransactionExecutor.execute(android.app.servertransaction.ClientTransaction) (TransactionExecutor.java:68)
at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1948)
at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
at void android.os.Looper.loop() (Looper.java:214)
at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:7050)
at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:494)
at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:965)

해당 이슈는 RemonConference create할때 발생합니다.

답변 부탁드립니다.
감사합니다.

안녕하세요 :slight_smile:
신규 업데이트된 SDK 2.9.13 버전으로 다시 테스트 부탁드립니다
저희 관련 docs 도 신규 업데이트 되었습니다.

링크 첨부합니다

— 다운로드 링크 —
https://icl.jfrog.io/ui/native/kakaoenterprise/com/kakaoenterprise/kakao-i-connect-live/2.9.13

— docs —

네, 일단 SDK 업데이후 테스트 진행시에 문제가 또 있어 확인부탁드립니다.

기존에 정상작통하고 컨퍼런스 콜 테스트까지 마친 코드입니다.
지금 이슈는 방을 생성하는 생성자는 onRoomCreated, onUserLeft 2개의 콜백만 동작합니다.
생성된 방에 접근하는 유저는
D/RemonParticipant: onRoomEvent: type=leave,channel=jake123456:PEc9bdfd39d3724bacb73a0e1705b2af06
D/RemonConference: onRoomEvent: type=leave,channel=jake123456:PEc9bdfd39d3724bacb73a0e1705b2af06

2개의 로그만 출력됩니다.

그리고
(line 48): GetPlayoutUnderrunCount: Not supported on this platform 이라는 에러코드가 계속 출력됩니다.

결국은 join시에 callback 안내려와서 발생하는 문제같습니다.
혹시 조언을 주실부분이 있는지 확인부탁드리겠습니다.

감사합니다.

아래는 코드 첨부드립니다.

var config = Config()
config.context = context
config.serviceId = SERVICE_ID
config.key = SECRET_KEY
config.localView = localView
config.remoteView = null

    conference = RemonConference()
    try {
        conferenceCallback = conference?.create(ROOM_ID, config) {
            it.config.localView = localView
            it.config.videoWidth
        }?.error {
            println("ConferenceLog ==> ${it.remonErrorLog}")
        }
    } catch (e: Exception) {
        e.printStackTrace()
    }

    conferenceCallback?.on("onRoomCreated") {
        println("ConferenceLog => onRoomCreated")

    }?.on("onUserJoined") {
        println("ConferenceLog => onUserJoined")
        if (it.id == "jake1234:PE865a9b94c601403c85284219095332e8") {
            it.config.remoteView = remoteView
            it.config.localView = null
        }

    }?.on("onComplete") {
        println("ConferenceLog => onUserStreamConnected")
    }?.on("onUserStreamConnected") {
        println("ConferenceLog => onUserLeaved")
    }?.close {
        println("ConferenceLog => close")
    }?.error {
        println("ConferenceLog =>  :${it.errorCode}, remonErrorLog:${it.remonErrorLog}")
    }

위에 질문은
config에 비디오 해상도 조절했더니 연결됬네요…

혹시 해상도 조절하지 않았을때 생기는 이슈가 있는걸까요?

config 의 Default 해상도는 width 640, height 480 으로 설정되어 있습니다.
기존에 config의 설정값과 수정했을 경우 수정값 알려주시면 감사드리겠습니다. :pray:t2:

안녕하세요,

기존에 동작하지 않던 부분이

config.videoWidth = 640
config.videoHeight = 480
config.videoCodec = “VP8”
config.simulcast = true

해당 config 옵션 처리후에 정상동작하였습니다.
다시 위에 옵션 삭제 후 동작하면 join시에 ConferenceCallback이 동작하지 않습니다.

아래 해당 로그만 동작합니다.
D/RemonParticipant: onRoomEvent: type=leave,channel=jake123456:PEc9bdfd39d3724bacb73a0e1705b2af06
D/RemonConference: onRoomEvent: type=leave,channel=jake123456:PEc9bdfd39d3724bacb73a0e1705b2af06

해당 상황은 재현 + 확인이 필요한 사안같습니다.

지속적으로 문제가 발생하시는 경우라면
[email protected]
쪽으로 문의 주시면 감사드리겠습니다 :blush: