Xamarin Android上的振动
本文关键字:Android Xamarin | 更新日期: 2023-09-27 18:16:34
我目前正在使用Xamarin
android的应用程序。我不能把设备转到vibrate
。
Vibrator vibrator = (Vibrator)Activity.GetSystemService(Context.VibratorService);
vibrator.Vibrate(100);
它构建,但当我按下链接到代码的按钮时崩溃。
这就解决了问题AndroidManifest.xml
<uses-permission android:name="android.permission.VIBRATE"/>
震动权限是必需的,必须在Android项目中配置。可以通过以下方式添加:
打开Properties文件夹下的AssemblyInfo.cs文件并添加:
c#[assembly: UsesPermission(Android.Manifest.Permission.Vibrate)]
或
更新Android Manifest:
打开Properties文件夹下的AndroidManifest.xml文件,并在manifest节点中添加以下内容。
XML><uses-permission android:name="android.permission.VIBRATE" />
或者右键单击Android项目并打开项目的属性。在Android Manifest中找到Required permissions:区域并检查VIBRATE权限。这将自动更新AndroidManifest.xml文件。
添加对Xamarin的引用。课堂要点:
using Xamarin.Essentials;
振动功能可以请求设定的时间或默认的500毫秒。
try
{
// Use default vibration length
Vibration.Vibrate();
// Or use specified time
var duration = TimeSpan.FromSeconds(1);
Vibration.Vibrate(duration);
}
catch (FeatureNotSupportedException ex)
{
// Feature not supported on device
}
catch (Exception ex)
{
// Other error has occurred.
}
可以使用Cancel方法请求取消设备振动:
try
{
Vibration.Cancel();
}
catch (FeatureNotSupportedException ex)
{
// Feature not supported on device
}
catch (Exception ex)
{
// Other error has occurred.
}
ref - https://learn.microsoft.com/en-us/xamarin/essentials/vibrate?tabs=android