Мне кажется, я нашел обходной путь. До сих пор не было сбоев при тех же обстоятельствах, которые изложены в моем вопросе. Разница в том, что вместо того, чтобы создавать отдельное окно для видео, я помещаю видеоплеер в вид, а затем скрываю и показываю его по мере необходимости. Вот некоторый код для Titanium Appcelerator, который работает:
function Playback() {
var self = this;
this.activeMovie = null;
this.baseView = null;
this.create = function () {
self.activeMovie = Ti.Media.createVideoPlayer({
top: 0,
left: 0,
width: Ti.Platform.displayCaps.platformWidth,
height: Ti.Platform.displayCaps.platformHeight,
backgroundColor: '#111',
movieControlStyle: Ti.Media.VIDEO_CONTROL_EMBEDDED,
scalingMode: Ti.Media.VIDEO_SCALING_ASPECT_FIT
});
self.baseView = Ti.UI.createView({
top: 0,
left: 0,
width: Ti.Platform.displayCaps.platformWidth,
height: Ti.Platform.displayCaps.platformHeight
});
self.baseView.hide();
self.doneBtn = Ti.UI.createButton({
title: 'Done',
color: '#fff',
backgroundColor: 'blue',
backgroundImage: 'none',
bottom: '15%',
width: 120,
height: 40,
font: {fontSize: 16,fontWeight: 'bold',fontFamily: 'Helvetica Neue'},
borderRadius:5,
borderWidth:1,
borderColor:'#a6a6a6'
});
self.doneBtn.addEventListener('click', function () {
self.hide();
});
self.activeMovie.addEventListener('playbackState', function (e) {
//*** Hide the video window when done. Comment out if you don't want to do this.
if (e.playbackState == 0) {
self.hide();
}
});
self.baseView.add(self.activeMovie);
self.baseView.add(self.doneBtn);
};
Playback.prototype.getView = function () {
return self.baseView;
};
Playback.prototype.show = function (filename) {
self.activeMovie.url = Titanium.Filesystem.applicationDataDirectory + '/' + filename;
self.baseView.show();
self.activeMovie.play();
};
Playback.prototype.hide = function () {
self.baseView.hide();
self.activeMovie.stop();
};
this.create();
}
Чтобы использовать это, сделайте следующее:
var player = new Playback();
Titanium.UI.currentWindow.add(player.getView());
player.show("mymovie.mov");
Наслаждайтесь!