Getting Black Screen on certain Android Devices using Jitsi Meet Android and our server

meet

#1

Actually we are getting black screen for certain devices like Redmi Note 4 when we join a call on our server instead of meet.jit.si. Everything works properly on meet.jit.si for same device. I have added the stacktrace as below. Kindly help to understand and resolve this issue.

02-11 17:56:15.267 20385-20681/{application_id} I/ReactNativeJS: Running application "App" with appParams: {"initialProps":{"welcomePageEnabled":false,"addPeopleEnabled":false,"externalAPIScope":"aab112e5-ff4a-4512-b278-48d50072eee9","pictureInPictureEnabled":false,"dialOutEnabled":false,"timestamp":1549887975265},"rootTag":21}. __DEV__ === false, development-level warning are OFF, performance optimizations are ON
02-11 17:56:15.276 20385-20681/{application_id} I/ReactNativeJS: '[__filename]', '<l>: ', 'redux state rehydrated as', { 'features/base/settings': 
       { avatarID: '0b6d236383b43d998910f97b28b43957',
         displayName: '',
         email: '',
         localFlipX: true,
         startAudioOnly: false,
         startWithAudioMuted: false,
         startWithVideoMuted: false },
      'features/base/known-domains': 
       [ 'beta.hipchat.me',
         'beta.meet.jit.si',
         'chaos.hipchat.me',
         'enso.me',
         'hipchat.me',
         'meet.jit.si' ],
      'features/recent-list': [],
      'features/welcome': {},
      'features/calendar-sync': {},
      'features/video-layout': {},
      'features/dropbox': {} }
02-11 17:56:15.277 20385-20385/{application_id} D/ReactNative: ReactInstanceManager.attachRootViewToInstance()
02-11 17:56:15.285 20385-20680/{application_id} D/AudioMode: Update audio route for mode: 0
02-11 17:56:15.298 20385-20681/{application_id} W/ReactNativeJS: '[JitsiMeetJS.js]', '<n>: ', 'Analytics disabled, disposing.'
02-11 17:56:15.299 20385-20681/{application_id} W/ReactNativeJS: '[modules/statistics/AnalyticsAdapter.js]', '<n>: ', 'Disposing of analytics adapter.'
02-11 17:56:15.299 20385-20681/{application_id} I/ReactNativeJS: '[modules/RTC/ScreenObtainer.js]', '<n>: ', 'Screen sharing not supported by the current browser: ', 'react-native'
02-11 17:56:15.300 20385-20681/{application_id} I/ReactNativeJS: '[modules/RTC/ScreenObtainer.js]', '<n>: ', 'Desktop sharing disabled'
02-11 17:56:15.301 20385-20681/{application_id} D/ReactNativeJS: '[modules/RTC/RTCUtils.js]', '<n>: ', 'Available devices: ', []
02-11 17:56:15.302 20385-20681/{application_id} I/ReactNativeJS: '[__filename]', '<l>: ', 'Start muted: '
02-11 17:56:15.304 20385-20681/{application_id} I/ReactNativeJS: '[__filename]', '<l>: ', 'Start audio only set to false'
02-11 17:56:15.306 20385-20681/{application_id} I/ReactNativeJS: '[__filename]', '<l>: ', 'Audio-only disabled'
02-11 17:56:15.329 20385-20681/{application_id} I/ReactNativeJS: Running application "App" with appParams: {"initialProps":{"welcomePageEnabled":false,"addPeopleEnabled":false,"externalAPIScope":"20025d23-bd7a-47b4-9403-48e67de3ec9b","pictureInPictureEnabled":false,"dialOutEnabled":false,"timestamp":1549887975277,"url":{"url":"{ourserverbaseurl}/11d5a4c72e814550e0f25f537cabfcf899","config":{"startWithVideoMuted":false,"startWithAudioMuted":false}}},"rootTag":31}. __DEV__ === false, development-level warning are OFF, performance optimizations are ON
02-11 17:56:15.336 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.339 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.339 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.339 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.339 20385-20681/{application_id} I/ReactNativeJS: '[__filename]', '<l>: ', 'redux state rehydrated as', { 'features/base/settings': 
       { avatarID: '0b6d236383b43d998910f97b28b43957',
         displayName: '',
         email: '',
         localFlipX: true,
         startAudioOnly: false,
         startWithAudioMuted: false,
         startWithVideoMuted: false },
      'features/base/known-domains': 
       [ 'beta.hipchat.me',
         'beta.meet.jit.si',
         'chaos.hipchat.me',
         'enso.me',
         'hipchat.me',
         'meet.jit.si' ],
      'features/recent-list': [],
      'features/welcome': {},
      'features/calendar-sync': {},
      'features/video-layout': {},
      'features/dropbox': {} }
02-11 17:56:15.348 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.349 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.349 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.349 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.355 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.355 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.355 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.355 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.364 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.365 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.365 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.365 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.374 20385-20681/{application_id} W/ReactNativeJS: '[__filename]', '<l>: ', 'Calendar access not granted.'
02-11 17:56:15.380 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.380 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.380 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.380 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.384 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.388 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.388 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.388 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.394 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.394 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.394 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.394 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.398 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.398 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.398 20385-20682/{application_id} E/ExtMediaPlayer-JNI: env->IsInstanceOf fails
02-11 17:56:15.398 20385-20682/{application_id} E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
02-11 17:56:15.406 20385-20680/{application_id} D/AudioMode: Update audio route for mode: 0
02-11 17:56:15.547 20385-20681/{application_id} E/ReactNativeJS: '[__filename]', '<l>: ', 'Failed to load config from {ourserverbaseurl}/config.js?room=11d5a4c72e814550e0f25f537cabfcf899', { [TypeError: Network request failed] line: 137, column: 2655, sourceURL: 'index.android.bundle' }
02-11 17:56:15.550 20385-20681/{application_id} I/ReactNativeJS: '[__filename]', '<l>: ', 'Extending config with: {"startWithAudioMuted":false,"startWithVideoMuted":false}'
02-11 17:56:15.556 20385-20682/{application_id} E/unknown:ReactNative: console.error: "[__filename]", "<l>: ", "Failed to load config from {ourserverbaseurl}/config.js?room=11d5a4c72e814550e0f25f537cabfcf899", {"line":137,"column":2655,"sourceURL":"index.android.bundle"}, stack:
    <unknown>@355:2405
    l@699:840
    <unknown>@752:1136
    f@113:155
    <unknown>@113:882
    y@116:657
    C@116:1021
    callImmediates@116:3216
    value@45:2873
    <unknown>@45:1264
    value@45:2565
    value@45:1234
02-11 17:56:15.556 20385-20681/{application_id} W/ReactNativeJS: '[JitsiMeetJS.js]', '<n>: ', 'Analytics disabled, disposing.'
02-11 17:56:15.557 20385-20681/{application_id} W/ReactNativeJS: '[modules/statistics/AnalyticsAdapter.js]', '<n>: ', 'Disposing of analytics adapter.'
02-11 17:56:15.557 20385-20681/{application_id} I/ReactNativeJS: '[modules/RTC/ScreenObtainer.js]', '<n>: ', 'Screen sharing not supported by the current browser: ', 'react-native'
02-11 17:56:15.558 20385-20681/{application_id} I/ReactNativeJS: '[modules/RTC/ScreenObtainer.js]', '<n>: ', 'Desktop sharing disabled'
02-11 17:56:15.559 20385-20681/{application_id} D/ReactNativeJS: '[modules/RTC/RTCUtils.js]', '<n>: ', 'Available devices: ', []
02-11 17:56:15.560 20385-20681/{application_id} I/ReactNativeJS: '[__filename]', '<l>: ', 'Start muted: '
02-11 17:56:15.562 20385-20681/{application_id} I/ReactNativeJS: '[__filename]', '<l>: ', 'Start audio only set to false'
02-11 17:56:15.564 20385-20681/{application_id} I/ReactNativeJS: '[__filename]', '<l>: ', 'Audio-only disabled'
02-11 17:56:15.574 20385-20681/{application_id} I/ReactNativeJS: '[modules/RTC/RTCUtils.js]', '<n>: ', 'Get media constraints', { audio: true, video: false }
02-11 17:56:15.576 20385-20681/{application_id} I/ReactNativeJS: '[modules/RTC/RTCUtils.js]', '<n>: ', 'Get media constraints', { audio: false,
      video: 
       { mandatory: {},
         optional: [ { facingMode: 'user' } ],
         facingMode: 'user' } }
02-11 17:56:15.578 20385-20681/{application_id} I/ReactNativeJS: '[modules/xmpp/xmpp.js]', '<n>: ', 'P2P STUN servers: ', [ { urls: 'stun:stun.l.google.com:19302' },
      { urls: 'stun:stun1.l.google.com:19302' },
      { urls: 'stun:stun2.l.google.com:19302' } ]
02-11 17:56:15.596 20385-20681/{application_id} W/ReactNativeJS: '[__filename]', '<l>: ', 'PLAY_SOUND: no sound found for id: PARTICIPANT_LEFT_SOUND'
02-11 17:56:15.597 20385-20681/{application_id} E/ReactNativeJS: TypeError: undefined is not an object (evaluating 'n.anonymousdomain')
    
    This error is located at:
        in t
        in l
        in Connect(l)
        in Connect(Connect(l))
        in RCTView
        in n
        in t
        in Connect(t)
        in RCTView
        in n
        in t
        in Connect(t)
        in o
        in u
        in h
        in n
        in RCTView
        in RCTView
        in c
02-11 17:56:15.599 20385-20681/{application_id} W/ReactNativeJS: '[__filename]', '<l>: ', 'Calendar access not granted.'
02-11 17:56:15.600 20385-20681/{application_id} W/ReactNativeJS: '[__filename]', '<l>: ', 'Calendar access not granted.'
02-11 17:56:15.613 20385-20682/{application_id} E/unknown:ReactNative: TypeError: undefined is not an object (evaluating 'n.anonymousdomain')
    
    This error is located at:
        in t
        in l
        in Connect(l)
        in Connect(Connect(l))
        in RCTView
        in n
        in t
        in Connect(t)
        in RCTView
        in n
        in t
        in Connect(t)
        in o
        in u
        in h
        in n
        in RCTView
        in RCTView
        in c, stack:
    value@748:166532
    connect@748:231130
    <unknown>@903:612
    <unknown>@1328:160
    <unknown>@1074:635
    <unknown>@1311:213
    <unknown>@1303:190
    <unknown>@1300:170
    <unknown>@1278:979
    <unknown>@1245:1264
    <unknown>@1235:1285
    <unknown>@1175:619
    <unknown>@1179:191
    <unknown>@1163:465
    <unknown>@1143:881
    <unknown>@1125:1154
    <unknown>@1108:276
    <unknown>@1087:612
    <unknown>@1067:174
    <unknown>@1060:982
    <unknown>@1053:1239
    <unknown>@1039:889
    <unknown>@1035:237
    <unknown>@1014:2223
    <unknown>@1015:1480
    <unknown>@1008:630
    <unknown>@995:1839
    <unknown>@972:1880
    <unknown>@966:1632
    <unknown>@933:1140
    <unknown>@901:4590
    <unknown>@896:1425
    <unknown>@878:224
    <unknown>@753:914
    <unknown>@867:1342
    <unknown>@871:930
    <unknown>@862:704
    <unknown>@759:323
    <unknown>@852:686
    <unknown>@843:1514
    <unknown>@849:549
    <unknown>@840:1628
    <unknown>@831:2843
    <unknown>@827:243
    <unknown>@701:357
    _onConnect@1078:3482
    value@1078:1015
    Zn@95:34838
    vr@95:43024
    Zr@95:61562
    ei@95:62034
    Oi@95:69041
    Di@95:68384
    Ni@95:67323
    ai@95:66060
    enqueueSetState@95:32994
    setState@29:2231
    <unknown>@764:2040
    c@113:205
    b@113:1623
    _@113:488
    value@764:2017
    <unknown>@1074:446
    f@113:155
    <unknown>@113:882
    y@116:657
    C@116:1021
    callImmediates@116:3216
    value@45:2873
    <unknown>@45:1264
    value@45:2565
    value@45:1234
02-11 17:56:15.618 20385-20678/{application_id} D/com.oney.WebRTCModule.WebRTCModule: mandatory constraints are not a map
02-11 17:56:15.618 20385-20678/{application_id} D/com.oney.WebRTCModule.WebRTCModule: optional constraints are not an array
02-11 17:56:15.618 20385-20678/{application_id} D/com.oney.WebRTCModule.WebRTCModule: getUserMedia(audio): mandatory: [], optional: []
02-11 17:56:15.619 20385-20678/{application_id} D/com.oney.WebRTCModule.WebRTCModule: MediaStream id: 52970955-26a2-4647-8048-6afb359df953
02-11 17:56:15.620 20385-20678/{application_id} D/com.oney.WebRTCModule.WebRTCModule: getUserMedia(video): { NativeMap: {"facingMode":"user","optional":[{"facingMode":"user"}],"mandatory":{"minFrameRate":30,"minHeight":720,"minWidth":1280}} }
02-11 17:56:15.621 20385-20681/{application_id} I/ReactNativeJS: '[modules/RTC/RTCUtils.js]', '<n>: ', 'onUserMediaSuccess'
02-11 17:56:15.621 20385-20678/{application_id} I/org.webrtc.Logging: Camera1Enumerator: Index: 0. Camera 0, Facing back, Orientation 90
02-11 17:56:15.622 20385-20681/{application_id} D/ReactNativeJS: '[modules/RTC/JitsiLocalTrack.js]', '<n>: ', 'Setting new MSID: 52970955-26a2-4647-8048-6afb359df953 da3d931f-09b2-4abe-b938-23293d7ea6ea on LocalTrack[undefined,audio]'
02-11 17:56:15.624 20385-20678/{application_id} I/org.webrtc.Logging: Camera1Enumerator: Index: 1. Camera 1, Facing front, Orientation 270
02-11 17:56:15.624 20385-20678/{application_id} I/org.webrtc.Logging: Camera1Enumerator: getCameraIndex: Camera 0, Facing back, Orientation 90
02-11 17:56:15.625 20385-20678/{application_id} I/org.webrtc.Logging: Camera1Enumerator: getCameraIndex: Camera 1, Facing front, Orientation 270
02-11 17:56:15.627 20385-20678/{application_id} I/org.webrtc.Logging: Camera1Enumerator: Index: 0. Camera 0, Facing back, Orientation 90
02-11 17:56:15.628 20385-20678/{application_id} I/org.webrtc.Logging: Camera1Enumerator: Index: 1. Camera 1, Facing front, Orientation 270
02-11 17:56:15.628 20385-20678/{application_id} D/VideoCaptureController: Create camera Camera 1, Facing front, Orientation 270 succeeded
02-11 17:56:15.629 20385-21178/{application_id} I/org.webrtc.Logging: EglBase14: SDK version: 23. isEGL14Supported: true
02-11 17:56:15.637 20385-20678/{application_id} I/org.webrtc.Logging: CameraCapturer: startCapture: 1280x720@30
02-11 17:56:15.638 20385-21178/{application_id} I/org.webrtc.Logging: Camera1Enumerator: getCameraIndex: Camera 1, Facing front, Orientation 270
02-11 17:56:15.639 20385-20678/{application_id} D/com.oney.WebRTCModule.WebRTCModule: MediaStream id: 35c91ea8-d60c-45ac-9b57-47848a2b5da2
02-11 17:56:15.640 20385-21178/{application_id} I/org.webrtc.Logging: Camera1Session: Open camera 1
02-11 17:56:15.641 20385-21178/{application_id} D/com.oney.WebRTCModule.WebRTCModule: CameraEventsHandler.onCameraOpening: cameraName=Camera 1, Facing front, Orientation 270
02-11 17:56:15.642 20385-20681/{application_id} I/ReactNativeJS: '[modules/RTC/RTCUtils.js]', '<n>: ', 'onUserMediaSuccess'
02-11 17:56:15.642 20385-20750/{application_id} E/Camera: Error 2
02-11 17:56:15.642 20385-20750/{application_id} E/org.webrtc.Logging: Camera1Session: Camera error: 2
02-11 17:56:15.642 20385-20750/{application_id} I/org.webrtc.Logging: Camera1Session: Stop internal
02-11 17:56:15.642 20385-20750/{application_id} I/org.webrtc.Logging: SurfaceTextureHelper: stopListening()
02-11 17:56:15.643 20385-20681/{application_id} D/ReactNativeJS: '[modules/RTC/JitsiLocalTrack.js]', '<n>: ', 'Setting new MSID: 35c91ea8-d60c-45ac-9b57-47848a2b5da2 d1af4cec-dc66-4546-a1be-11c769a2a4b3 on LocalTrack[undefined,video]'
02-11 17:56:15.704 20385-20750/{application_id} D/com.oney.WebRTCModule.WebRTCModule: CameraEventsHandler.onFirstFrameAvailable
02-11 17:56:15.705 20385-20750/{application_id} I/org.webrtc.Logging: Camera1Session: Stop done
02-11 17:56:15.705 20385-20750/{application_id} D/com.oney.WebRTCModule.WebRTCModule: CameraEventsHandler.onCameraDisconnected
02-11 17:56:15.705 20385-20750/{application_id} I/org.webrtc.Logging: CameraCapturer: Stop capture
02-11 17:56:15.705 20385-20750/{application_id} I/org.webrtc.Logging: CameraCapturer: Stop capture: Nulling session
02-11 17:56:15.705 20385-20750/{application_id} I/org.webrtc.Logging: CameraCapturer: Stop capture done
02-11 17:56:15.705 20385-20750/{application_id} I/org.webrtc.Logging: Camera1Session: Stop camera1 session on camera 1
02-11 17:56:15.838 20385-21178/{application_id} I/org.webrtc.Logging: Camera1Session: Available fps ranges: [[15.0:15.0], [24.0:24.0], [7.0:30.0], [30.0:30.0]]
02-11 17:56:15.842 20385-21178/{application_id} I/org.webrtc.Logging: Camera1Session: Create new camera1 session on camera 1
02-11 17:56:15.842 20385-21178/{application_id} I/org.webrtc.Logging: Camera1Session: Start capturing
02-11 17:56:15.924 20385-21178/{application_id} I/org.webrtc.Logging: CameraCapturer: Create session done. Switch state: IDLE

#2

I see it fails to load the config. Did you try opening the page of your deployment in the browser on that phone do you get a warning about the certificate? Does the certificate on your webserver includes the whole chain of certs?


#3

@damencho Thank you for the prompt reply. On Phone browser, page was opening without any warning. But Yes, it seemed intermediate certificate issue on webserver. This has been fixed.