Abdelmajid Idali
05/22/2023, 11:44 AM@Composable
actual fun Player(modifier: Modifier, url: String) {
_Box_(modifier = modifier) *{*
val player = _remember_ *{*
AVPlayer()
}
_UIKitView_(
modifier = Modifier._fillMaxSize_(),
factory = {
val playerView = UIView()
val playerLayer = AVPlayerLayer()
playerLayer.setPlayer(player)
playerLayer.setFrame(playerView.frame)
playerLayer.videoGravity= AVLayerVideoGravityResizeAspectFill
playerView.layer.addSublayer(playerLayer)
playerView
*}*,
)
_LaunchedEffect_(url) *{*
val asset = AVURLAsset(NSURL(string = url), null)
val playerItem = AVPlayerItem(asset = asset)
player._replaceCurrentItemWithPlayerItem_(
item = playerItem
)
player._play_()
}
_DisposableEffect_(url) *{*
onDispose *{*
player._replaceCurrentItemWithPlayerItem_(null)
}
}
}
}
Alexander Zhirkevich
05/22/2023, 1:40 PMAlexander Zhirkevich
05/22/2023, 1:47 PMAbdelmajid Idali
05/22/2023, 3:07 PM