음악이 재생되고 있는지 감지합니까?
-
20-09-2019 - |
문제
내 앱에는 음악 (iPodmusic)이 포함되며, Uiswitch가 Play/Pause를 전환합니다. 내 목표는 음악이 재생되는지 감지 할 수 있으므로 음악이 재생 될 때 플레이/일시 정지 스위치가 '재생'이라고 말할 수 있고 그렇지 않으면 '일시 중지'할 수 있습니다.
해결책
if ([[MPMusicPlayerController iPodMusicPlayer] playbackState] == MPMusicPlaybackStatePlaying) ...
다른 팁
음악이 자신의 앱에서 나온 경우 Avaudioplayer 's playing
재산.
음악이 iPod에서 온 경우 확인하십시오 mpmusicplayercontroller 's nowPlayingItem
또는 playbackState
재산.
MPMusicPlayerController는 OS 3.0 이상에서만 사용할 수 있습니다. 2.0을 실행하고 있다면 운이 좋지 않습니다. 다음은 3.0 이상을 실행 중인지 확인하는 코드 스 니펫이 있습니다.
bool playerDetectedAndPlaying = false;
NSString *reqSysVer = @"3.0";
NSString *currSysVer = [[UIDevice currentDevice] systemVersion];
if ([currSysVer compare:reqSysVer options:NSNumericSearch] != NSOrderedAscending){
Class MusicPlayerController = NSClassFromString(@"MPMusicPlayerController");
if (MusicPlayerController){
id myMusicPlayerController = [[MusicPlayerController alloc]init];
id MusicPlayer = [[myMusicPlayerController class] iPodMusicPlayer ];
if ( [ MusicPlayer playbackState ] == MPMusicPlaybackStatePlaying ) {
playerDetectedAndPlaying = true;
}
}
}
3.0 SDK에 대해 컴파일해야하지만 배포 대상을 2.0으로 설정하면이 코드는 여전히 이전 장치에서 실행됩니다.
iTunes 사운드가 켜져 있으면 Itunes Music Player에서 사운드가 꺼져 있으면 NO가됩니다. 따라서 Depault Musicplayer Sound가 쉽게 확인할 수 있습니다. 미디어 플레이어 프레임 워크를 추가해야합니다. 제대로 작동합니다 .... thx ... :)
if ([[MPMusicPlayerController iPodMusicPlayer] playbackState] == MPMusicPlaybackStatePlaying)
{
NSLog(@"yes itune Player Sound is on");
}
else
{
NSLog(@"NO itune Player Sound is not on");
}
제휴하지 않습니다 StackOverflow