6

ile Çalışmıyor Kontroller Ben de MPMusicPlayerController kullanarak müzik çalan Uygulamama Spotify player eklendi. Spotify'dan müzik çalındığında ve ekran kilitlendiğinde, kullanıcı bu düğmelere kilitli ekranda bastığında, uzaktan kumanda olayları oynatma/duraklatma ve FFW/RWD için alınmaz.Kilit Ekranı iPod Spotify müzik çalar

müzik MPMusicPlayerController dan oynuyor, ben şu koduna göre uzaktan kumanda olaylarını alabilir duyuyorum:

-(void) ViewDidLoad { 
    ... 
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents]; 
    [self becomeFirstResponder]; 
    ... 
} 

ve

- (BOOL) canBecomeFirstResponder 
{ 
    return YES; 
} 

- (void) remoteControlReceivedWithEvent: (UIEvent*) event 
{ 
    // see [event subtype] for details 
    if (event.type == UIEventTypeRemoteControl) { 
     // We may be receiving an event from the lockscreen 
     switch (event.subtype) { 
      case UIEventSubtypeRemoteControlTogglePlayPause: 
      case UIEventSubtypeRemoteControlPlay: 
      case UIEventSubtypeRemoteControlPause: 
       // User pressed play or pause from lockscreen 
       [self playOrPauseMusic:nil]; 
       break; 

      case UIEventSubtypeRemoteControlNextTrack: 
       // User pressed FFW from lockscreen 
       [self fastForwardMusic:nil]; 
       break; 

      case UIEventSubtypeRemoteControlPreviousTrack: 
       // User pressed rewind from lockscreen 
       [self rewindMusic:nil]; 
       break; 

      default: 
       break; 
     } 
    } 
} 

iPod kontrolleri yaparken görünür haldedir

Uygulama arka plana girer, duraklattığımda cevap vermezler. Bunun yerine, duraklattığımda iPod denetimleri kayboluyor. Spotify gibi ses akışı kilit ekranından arka planda çalarken oynatma/duraklatma ve FFW/RWD'nin algılanmasını sağlamak için hangi eklere ihtiyaç duyulur?

cevap

0

ilgili ayrıntılı araştırma yapılmış buldum benim app arka plan girer ve uzaktan kumanda olayları alındığında, iPod denetimler kaybolur olmadığında aşağıdaki kodu eklerseniz.

// Set up info center to display album artwork within ipod controls (needed for spotify) 
MPMediaItemArtwork *ipodControlArtwork = [[MPMediaItemArtwork alloc]initWithImage:artworkImage]; 
[MPNowPlayingInfoCenter defaultCenter].nowPlayingInfo = [NSDictionary dictionaryWithObjectsAndKeys:nowPlayingTitle, MPMediaItemPropertyTitle, 
                 nowPlayingArtist, MPMediaItemPropertyArtist, ipodControlArtwork, MPMediaItemPropertyArtwork, [NSNumber numberWithDouble:0.0], MPNowPlayingInfoPropertyPlaybackRate, nil]; 
2

Ben geçmişte bu koştum inanıyoruz. Ben Hatırlarsınız doğru (benim ses denetleyicisi yaşadığı de budur) uygulama temsilcinize

- (BOOL) canBecomeFirstResponder { return YES; } 

-(void)remoteControlReceivedWithEvent:(UIEvent *) event { ... } 

eklenen yanı sıra. UliyewControllers'ın UIEventTypeRemoteControl bildirimlerini yakalamak istediğimde hayatta olmadığı sorunu yaşıyordum.

Eğer yardımcı olur deneyin ve görün ver.

+0

Bunun bana yardımcı olacak emin değilim. Bu yöntemleri appDelegate'ime eklerseniz, aramazlar. Sesli oynatıcımın appDelegate içinde olmadığı için çağrı yapılmadığından şüpheleniyorum. Ama bu bana düşünce için yiyecek veriyor. Belki de önerinizle ilgili bir şey var. Denemeye devam edeceğim. – JeffB6688

+0

Ayrıca, ses oynatıcımın appDelegate üzerinden de referans alınabileceğini garanti ediyorum. Bu şekilde denetleyiciyi hangi bakışta gördüğünüze ya da bakış açınıza bakmanıza gerek kalmadan sorunsuzca kontrol edebilirsiniz. Bu benim çektiğim yaklaşımdı. İyi şanslar. – Caleb

İlgili konular