AVAudioSession.InterruptionNotification 属性

定义

中断的通知常量

[Foundation.Advice("Use AVAudioSession.Notifications.ObserveInterruption helper method instead.")]
[Foundation.Field("AVAudioSessionInterruptionNotification", "AVFoundation")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 6, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public static Foundation.NSString InterruptionNotification { [ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 6, 0, ObjCRuntime.PlatformArchitecture.All, null)] get; }
member this.InterruptionNotification : Foundation.NSString

属性值

NSString 常量应用作 NSNotificationCenter 的令牌。

属性

注解

此常量可用于注册 NSNotificationCenter 此通知的侦听器。 这是 NSString 而不是字符串,因为这些值可以用作某些本机库中的标记,而不是纯粹用于其实际字符串内容。 回调的“notification”参数包含特定于通知类型的额外信息。

若要订阅此通知,开发人员可以使用便捷 AVAudioSession.Notifications的 .ObserveInterruption 方法,该方法提供对通知参数的强类型访问。

以下示例演示如何使用强类型 Notifications 类,以从通知中的可用属性中排除猜测:

//
// Lambda style
//

// listening
notification = AVAudioSession.Notifications.ObserveInterruption ((sender, args) => {
    /* Access strongly typed args */
    Console.WriteLine ("Notification: {0}", args.Notification);

    Console.WriteLine ("InterruptionType", args.InterruptionType);
    Console.WriteLine ("Option", args.Option);
    Console.WriteLine ("WasSuspended", args.WasSuspended);
});

// To stop listening:
notification.Dispose ();

//
// Method style
//
NSObject notification;
void Callback (object sender, AVFoundation.AVAudioSessionInterruptionEventArgs args)
{
    // Access strongly typed args
    Console.WriteLine ("Notification: {0}", args.Notification);

    Console.WriteLine ("InterruptionType", args.InterruptionType);
    Console.WriteLine ("Option", args.Option);
    Console.WriteLine ("WasSuspended", args.WasSuspended);
}

void Setup ()
{
    notification = AVAudioSession.Notifications.ObserveInterruption (Callback);
}

void Teardown ()
{
    notification.Dispose ();
}

以下示例演示如何将通知与 DefaultCenter API 配合使用:

// Lambda style
NSNotificationCenter.DefaultCenter.AddObserver (
        AVAudioSession.InterruptionNotification, (notification) => {Console.WriteLine ("Received the notification AVAudioSession", notification); }


// Method style
void Callback (NSNotification notification)
{
    Console.WriteLine ("Received a notification AVAudioSession", notification);
}

void Setup ()
{
    NSNotificationCenter.DefaultCenter.AddObserver (AVAudioSession.InterruptionNotification, Callback);
}

适用于