AVPlayer kullanarak müzik ve ses efektleri içeren bir uygulama üzerinde çalışıyorum ve simülatörün sadece etkili olduğu izlenimi veren çok garip bir hatayla karşılaşıyorum.Swift AVPlayer simülatörü üzerinde istisna fırlatma
Uygulamadaki ekranlardan birinde, arka planda çalan müzik var. Bu ekranda, AVPlayer kurulumum var ve şarkıyı başlatıyorum. Ben devam tuşuna birkaç kez vurursam Bu ince dün çalışıyordu, ama bugün simülatörü üzerinde uygulamayı çalıştırırken, bu istisna, uygulama çöktü henüz Ancak
atılır, uygulama çalışmaya devam eder. Fakat simülatörde hata ayıklamayı çok sinir bozucu hale getiriyor, çünkü bu ekranı açtığımda her seferinde bu oluyor. Bu sorun cihazda gerçekleşmiyor.Yabancı ne demek, AVPlayer ile bu uygulamada dün benzer bir sorun yaşadım. Sorunun nerede olduğunu anlayamadım, bu yüzden kodun tamamını tek bir proje parçasıyla kopyalamaya başladım, tüm şey kopyalanana kadar ve bu sorun oluşmadı. O zaman bugün, sorun yeniden başladı. Bu kodu başka bir projeye kopyalarım, simülatörde bir süre için iyi çalışır, ancak sonunda bu sorun tekrar ortaya çıkar.
AVPlayer ile simülatörde bu tür sorun yaşayan başka biri var mı? Bunu çözmenin bir yolu var mı? Herhangi bir yardım çok takdir
Düzenleme: Her ihtimale karşı burada kod AVPlayer kurulum nasıl içindir
var songPlayerItem : AVPlayerItem?
var songPlayer : AVPlayer?
func startSong()
{
let url = NSURL.fileURLWithPath(NSBundle.mainBundle().pathForResource(song!.id, ofType: "mp3")!)
songPlayerItem = AVPlayerItem(URL: url)
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(self.itemDidFinishPlaying(_:)), name: AVPlayerItemDidPlayToEndTimeNotification, object: songPlayerItem)
songPlayer = AVPlayer(playerItem: songPlayerItem!)
songPlayer?.play()
}
func itemDidFinishPlaying(notification : NSNotification)
{
print("SongFinished")
}
Xcode'da herhangi bir fırsattan yararlanarak istisna sınırlamalarınız var mı? Ve eğer yaparsanız, sadece ObjC hataları veya C++ hataları atarlar mı? – pbodsk
AllExceptions kesme noktasını döndürdüm. Bunu kapatmak sorunu çözüyor. Uygulamayı çalıştırırken uygulamada bir şey çökerse, hata ayıklamayı daha hızlı hale getirdiğinden genellikle bu ayrılma noktasını her zaman kullanırım. Ancak bu neden bu istisna sorununa neden oluyor? Bu AVPlayer ile bilinen bir sorun mu? – AdamM
Aynı problemi yaşadım ve AllExceptions'ı sadece ObjC'ye atamak benim için ayarladı. Bu şekilde, bir hataya neden olduysam ancak C++ kodunda hata varsa, hala çöküyor. Niçin istisnanın gerçekleştiğini bilmiyorum ... üzgünüm – pbodsk