@@ -34,6 +34,7 @@ class RNJWPlayerView : UIView, JWPlayerDelegate, JWPlayerStateDelegate, JWAdDele
34
34
var settingConfig : Bool = false
35
35
var pendingConfig : Bool = false
36
36
var currentConfig : [ String : Any ] !
37
+ var playerFailed = false
37
38
var castController : JWCastController !
38
39
var isCasting : Bool = false
39
40
var availableDevices : [ AnyObject ] !
@@ -221,6 +222,12 @@ class RNJWPlayerView : UIView, JWPlayerDelegate, JWPlayerStateDelegate, JWAdDele
221
222
}
222
223
223
224
@objc func setConfig( _ config: [ String : Any ] ) {
225
+ if ( playerFailed) {
226
+ playerFailed = false
227
+ setNewConfig ( config: config)
228
+ return
229
+ }
230
+
224
231
// Create mutable copies of the dictionaries
225
232
var configCopy = config
226
233
var currentConfigCopy = currentConfig
@@ -319,7 +326,9 @@ class RNJWPlayerView : UIView, JWPlayerDelegate, JWPlayerStateDelegate, JWAdDele
319
326
}
320
327
321
328
@objc func setControls( _ controls: Bool ) {
322
- self . toggleUIGroup ( view: playerViewController. view, name: " JWPlayerKit.InterfaceView " , ofSubview: nil , show: controls)
329
+ if let playerViewControllerView = playerViewController? . view {
330
+ self . toggleUIGroup ( view: playerViewControllerView, name: " JWPlayerKit.InterfaceView " , ofSubview: nil , show: controls)
331
+ }
323
332
}
324
333
325
334
// MARK: - RNJWPlayer styling
@@ -922,10 +931,12 @@ class RNJWPlayerView : UIView, JWPlayerDelegate, JWPlayerStateDelegate, JWAdDele
922
931
923
932
func jwplayer( _ player: JWPlayer , failedWithError code: UInt , message: String ) {
924
933
self . onPlayerError ? ( [ " error " : message] )
934
+ playerFailed = true
925
935
}
926
936
927
937
func jwplayer( _ player: JWPlayer , failedWithSetupError code: UInt , message: String ) {
928
938
self . onSetupPlayerError ? ( [ " error " : message] )
939
+ playerFailed = true
929
940
}
930
941
931
942
func jwplayer( _ player: JWPlayer , encounteredWarning code: UInt , message: String ) {
0 commit comments