2016-04-04 4 views
10

Ich arbeite an einer App (die keine Musik-App ist), aber irgendwann kann es Audio innerhalb einer UIWebView (aus einer HTML-5-Datei) spielen, die automatische Wiedergabe aktiviert.So entfernen Sie den App-Namen aus dem Control Center - Musik?

Das Problem ist, dass mein App-Name im Control Center des iPhone im Abschnitt "Musik" angezeigt wird. Wenn ich auf meinen App-Namen tippe, wird meine App geöffnet. Ich möchte dieses Verhalten jedoch nicht.

Ich habe versucht Einstellung [MPNowPlayingInfoCenter defaultCenter].nowPlayingInfo = nil; innerhalb AppDelegate s, wenn App in den Hintergrund geht oder kommt in den Vordergrund oder sogar Fall zu beenden. Aber es zeigt immer noch den App-Namen? Irgendeine Ahnung? Gibt es etwas, das ich vermisse?

Oh und ja, dies kann jemandem helfen, das genaue Problem zu kennen, in einem View-Controller, wo ich ein Audio innerhalb UIWebView spiele, habe ich folgenden Code geschrieben, um das aktuelle Lied in meiner iPhone Musik (oder jedem anderen) zu spielen App

- (void) viewWillAppear:(BOOL)animated { 
    [super viewWillAppear:animated]; 

    MPMusicPlayerController *mp = [MPMusicPlayerController systemMusicPlayer]; 
    if(mp.playbackState == MPMoviePlaybackStatePlaying) { 
     isSystemMediaPlayerPlaying = YES; 
    } 
} 

- (void) viewWillDisappear:(BOOL)animated { 
    [super viewWillDisappear:animated]; 

    if(isSystemMediaPlayerPlaying) { 
     MPMusicPlayerController *mp = [MPMusicPlayerController systemMusicPlayer]; 
     [mp play]; 
     isSystemMediaPlayerPlaying = NO; 
    } 
} 

Eine Notiz ist isSystemMediaPlayerPlaying ein BOOL Typ.

Screenshot:

enter image description here

P. S. Anstelle von "You Tube" können Sie "My App Name" berücksichtigen.

+0

Gibt es spezielle Anforderungen an den Benutzer 'systemMusicPlayer'? – HardikDG

+1

Duplizieren? http://StackOverflow.com/q/30711138/2415822 – JAL

+1

@JAL, danke für die Links, aber es funktioniert nicht. Ich habe das versucht. – Hemang

Antwort

3

Rufen Sie den SystemMusicPlayer nicht in Ihrer App auf. Wenn bei der Eingabe der App Musik abgespielt wird, wird die App nach dem Beenden der App von selbst fortgesetzt. Verwerfen Sie einfach den obigen Code.

3

Haben Sie

versucht
[[UIApplication sharedApplication] endReceivingRemoteControlEvents]; 
2

Versuchen Sie, die defaultCenter der nowPlayingInfo Wörterbuch Einrichtung ohne Titel ein Medien-Objekt angezeigt werden direkt nach den Inhalt in Ihrem UIWebView geladen.

MPNowPlayingInfoCenter *infoCenter = [MPNowPlayingInfoCenter defaultCenter]; 

NSDictionary *nowPlayingInfo = @{ 
           MPMediaItemPropertyTitle : @"", 
           MPMediaItemPropertyArtist : @"" 
           }; 

[infoCenter setNowPlayingInfo:[NSDictionary dictionaryWithDictionary:nowPlayingInfo]]; 

Wenn Hintergrund-Audio verwenden, geben Sie, dass Ihre App nicht Fernbedienung Ereignisse erhalten soll.

[[UIApplication sharedApplication] endReceivingRemoteControlEvents]; 
Verwandte Themen