// // MRMediaRemote.h // Underbar // // Created by Shadowfacts on 7/13/19. // Copyright © 2019 Shadowfacts. All rights reserved. // // Copied from https://github.com/pigigaldi/Pock/blob/852679a4882d0e9c5b3d8473eb9b9fbf7bef837f/Pock/Private/MRMediaRemote.h typedef void (^MRMediaRemoteGetNowPlayingInfoBlock)(NSDictionary *info); typedef void (^MRMediaRemoteGetNowPlayingClientBlock)(id clientObj); typedef void (^MRMediaRemoteGetNowPlayingApplicationIsPlayingBlock)(BOOL playing); extern void MRMediaRemoteRegisterForNowPlayingNotifications(dispatch_queue_t queue); extern void MRMediaRemoteGetNowPlayingClient(dispatch_queue_t queue, MRMediaRemoteGetNowPlayingClientBlock block); extern void MRMediaRemoteGetNowPlayingClients(dispatch_queue_t queue, MRMediaRemoteGetNowPlayingClientBlock block); extern void MRMediaRemoteGetNowPlayingInfo(dispatch_queue_t queue, MRMediaRemoteGetNowPlayingInfoBlock block); extern void MRMediaRemoteGetNowPlayingApplicationIsPlaying(dispatch_queue_t queue, MRMediaRemoteGetNowPlayingApplicationIsPlayingBlock block); extern NSString *MRNowPlayingClientGetBundleIdentifier(id clientObj); extern NSString *MRNowPlayingClientGetParentAppBundleIdentifier(id clientObj); extern NSString *kMRMediaRemoteNowPlayingApplicationIsPlayingDidChangeNotification; extern NSString *kMRMediaRemoteNowPlayingApplicationClientStateDidChange; extern NSString *kMRNowPlayingPlaybackQueueChangedNotification; extern NSString *kMRPlaybackQueueContentItemsChangedNotification; extern NSString *kMRMediaRemoteNowPlayingApplicationDidChangeNotification; extern NSString *kMRMediaRemoteNowPlayingInfoAlbum; extern NSString *kMRMediaRemoteNowPlayingInfoArtist; extern NSString *kMRMediaRemoteNowPlayingInfoTitle; extern NSString *kMRMediaRemoteNowPlayingInfoArtworkData; typedef enum { kMRPlay = 0, kMRPause = 1, kMRTogglePlayPause = 2, kMRNextTrack = 4, kMRPreviousTrack = 5, } MRCommand; extern Boolean MRMediaRemoteSendCommand(MRCommand command, id userInfo);