@@ -186,25 +186,35 @@ - (void)handleViewPlacement:(UIView *)view {
186186}
187187
188188- (void )createVideoPlayer {
189- AVURLAsset *asset = nil ;
190- AVPlayerItem *item = [AVPlayerItem playerItemWithAsset: asset];
191- [self setVideoPlayer: [[UADSAVPlayer alloc ] initWithPlayerItem: item]];
192- [self .videoView setPlayer: self .videoPlayer];
189+ if (![self videoPlayer ]) {
190+ AVURLAsset *asset = nil ;
191+ AVPlayerItem *item = [AVPlayerItem playerItemWithAsset: asset];
192+ [self setVideoPlayer: [[UADSAVPlayer alloc ] initWithPlayerItem: item]];
193+ [self .videoView setPlayer: self .videoPlayer];
194+ }
193195}
194196
195197- (void )createVideoView {
196- [self setVideoView: [[UADSVideoView alloc ] initWithFrame: [self getRect ]]];
197- [self .videoView setVideoFillMode: AVLayerVideoGravityResizeAspect];
198+ if (![self videoView ]) {
199+ [self setVideoView: [[UADSVideoView alloc ] initWithFrame: [self getRect ]]];
200+ [self .videoView setVideoFillMode: AVLayerVideoGravityResizeAspect];
201+ }
198202}
199203
200204- (void )destroyVideoView {
201- [self .videoView removeFromSuperview ];
205+ if ([self videoView ]) {
206+ [self .videoView removeFromSuperview ];
207+ }
208+
202209 self.videoView = NULL ;
203210}
204211
205212- (void )destroyVideoPlayer {
206- [self .videoPlayer stop ];
207- [self .videoPlayer stopObserving ];
213+ if ([self videoPlayer ]) {
214+ [self .videoPlayer stop ];
215+ [self .videoPlayer stopObserving ];
216+ }
217+
208218 self.videoPlayer = NULL ;
209219}
210220
0 commit comments