导出 (0) 打印
全部展开
信息
您所需的主题如下所示。但此主题未包含在此库中。

如何在 Windows Phone 8 中振动手机

2014/6/18

适用于:Windows Phone 8 和 Windows Phone Silverlight 8.1 | Windows Phone OS 7.1

Windows Phone 设备包含一个振动控制器。您的应用最多能振动手机 5 秒以通知用户重要的事件。本主题介绍如何振动手机。

请适度地使用振动功能。不要依赖振动功能发出重要的通知,因为用户可以禁用振动。

为了有效地测试使用振动控制器的应用,您需要在物理设备上测试它。模拟器无法模拟振动,而且不提供任何有关振动正在发生的可视反馈。

在后台运行的应用无法振动手机。如果当应用正在后台运行时,您的代码尝试使用振动,则不会有任何反应,但是也不会引发异常。如果您想在应用正运行于后台运行时振动手机,那么您需要实现 Toast 通知。有关更多信息,请参见 Windows Phone 8 的 Toast

本主题包括以下部分。

您必须为启动振动的方法的 duration 参数指定有效值。如果您为振动持续时间指定的值小于 0 或大于 5 秒,将引发 ArgumentException

您可以通过调用 VibrateController 类的 Start(TimeSpan) 方法,使用 .NET API 振动手机。

  1. 导入 Microsoft.Devices 命名空间。

    using Microsoft.Devices;
    
  2. 使用 VibrateController 类的静态 Default 属性获取对振动控制器的引用。

    VibrateController testVibrateController = VibrateController.Default;
    
  3. 通过调用 VibrateController 类的 Start(TimeSpan) 方法启动振动。将持续时间指定为 TimeSpan 值。

    testVibrateController.Start(TimeSpan.FromSeconds(3));
    
  4. 如果需要,通过调用 VibrateController 类的 Stop() 方法停止振动。

    testVibrateController.Stop();
    

您可以通过调用 VibrationDevice 类的 Vibrate 方法,使用 Windows Phone 运行时 API 振动手机。

  1. 导入 Windows.Phone.Devices.Notification 命名空间。

    using Windows.Phone.Devices.Notification;
    
  2. 通过调用 VibrationDevice 类的静态 GetDefault 方法获取对振动控制器的引用。

    VibrationDevice testVibrationDevice = VibrationDevice.GetDefault();
    
  3. 通过调用 VibrationDevice 类的 Vibrate 方法启动振动。将持续时间指定为 TimeSpan 值。

    testVibrationDevice.Vibrate(TimeSpan.FromSeconds(3));
    
  4. 如果需要,通过调用 VibrationDevice 类的 Cancel 方法停止振动。

    testVibrationDevice.Cancel();
    

显示:
© 2014 Microsoft