2011-07-06 28 views
26

Tôi có một ứng dụng iOS phát trực tuyến âm thanh nền bằng AVAudioSession. Nó hoạt động chính xác, nhưng tôi tò mò, có cách nào để thay đổi văn bản trên các điều khiển âm thanh màn hình khóa không? Ngay bây giờ nó chỉ đơn giản là hiển thị tên của ứng dụng của tôi, nhưng tôi muốn thay đổi nó thành tên của bài hát.Thay đổi văn bản điều khiển âm thanh nền màn hình khóa?

Ngoài ra, thanh đa tác vụ không có văn bản trong các điều khiển- có cách nào để thêm tên bản nhạc vào đó, vì ứng dụng iPod có hoạt động không?

+0

Bất kỳ ai biết cách thực hiện bằng âm thanh web? –

Trả lời

33

iOS 5 giờ hỗ trợ đặt tiêu đề bản nhạc cũng như ảnh bìa album ở cả màn hình khóa và điều khiển phát lại từ xa (các nút điều khiển bạn nhận được khi bạn nhấp đúp vào nút trang chủ và vuốt sang phải). Hãy xem qua các lớp MPNowPlayingInfoCenter. Tất nhiên, để tối đa hóa khả năng tương thích, bạn muốn kiểm tra xem MPNowPlayingInfoCenter có sẵn, bằng cách làm một cái gì đó như:

if ([MPNowPlayingInfoCenter class]) { 
    /* we're on iOS 5, so set up the now playing center */ 
    UIImage *albumArtImage = [UIImage imageNamed:@"HitchHikersGuide"]; 
    albumArt = [[MPMediaItemArtwork alloc] initWithImage:albumArtImage]; 

    NSDictionary *currentlyPlayingTrackInfo = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:@"Life, the Universe and Everything", [NSNumber numberWithInt:42], albumArt, nil] forKeys:[NSArray arrayWithObjects:MPMediaItemPropertyTitle, MPMediaItemPropertyPlaybackDuration, MPMediaItemPropertyArtwork, nil]]; 
    [MPNowPlayingInfoCenter defaultCenter].nowPlayingInfo = currentlyPlayingTrackInfo; 
} 
+8

Bạn muốn sử dụng classFromString ở đây vì điều này sẽ khiến hệ điều hành thấp hơn bị lỗi – coneybeare

+0

bất kỳ giải pháp nào cho iOS 4? Cảm ơn. –

+0

Không. Không có cách chính thức nào trong cài đặt này trong iOS 4.x. Tôi thậm chí không nghĩ rằng có một cách không chính thức để làm điều này. –

3

đây nó là nhanh chóng! (không cần phải kiểm tra iOS 5 trở lên nữa)

let albumArt = MPMediaItemArtwork(image: UIImage(named:"HitchHikersGuide")) 
    let albumDict = [MPMediaItemPropertyTitle: "Life, the Universe and Everything", MPMediaItemPropertyPlaybackDuration: 42, MPMediaItemPropertyArtwork: albumArt] 
    MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = albumDict 
Các vấn đề liên quan