2012-02-06 107 views
0

我試圖找出obj-c/cocoa touch特別是AVPlayer。我可以建立和發揮AVQueuePlayer沒有任何問題。AVQueuePlayer狀態訪問錯誤

NSMutableArray *items = [[NSMutableArray alloc] init]; 
[items addObject: [self buildPlayerItem:@"http://<some url>first.mp3"]]; 
[items addObject: [self buildPlayerItem:@"http://<some url>second.mp3"]]; 

self.queuePlayer = [[AVQueuePlayer alloc] initWithItems:items]; 

我可以調用播放,暫停,advanceToNextItemcurrentItemself.queuePlayer,但[self.queuePlayer status]方法或試圖訪問self.queuePlayer.status財產的任何調用導致應用程序拋出EXC_BAD_ACCESS錯誤。我遇到了同樣的問題,試圖獲取queuePlayer的currentItem的狀態。

我的理解是,這個錯誤表明我想已經被釋放的對象上訪問屬性,但

1)我使用ARC 2)它似乎是不可能self.queuePlayer不是招」牛逼被釋放,因爲我可以調用它的發揮,和 3)狀態self.queuePlayer的屬性,而不是我自己的一個類的屬性,所以大概的東西在AVQueuePlayer實現管理的狀態變量。

回答

0

事實證明,AVPlayer的狀態屬性是一個整數......我以爲這是一個NSString或更復雜的東西。所以問題不是引用一個釋放的對象,而是用%@打印一個int。