我们如何改变xamarin形式的振铃器模式
尝试将振铃器模式更改为正常模式时出现运行时错误。我正在使用依赖项服务以xamarin形式调用android中的音频管理器,但当振铃器模式更改为静默模式(可能已经静默)时,代码运行无误。关于更改振铃器模式,您可以按照以下步骤操作 1.在Xamarin.Forms PCL中定义一个接口我们如何改变xamarin形式的振铃器模式,xamarin,xamarin.forms,permissions,permission-denied,Xamarin,Xamarin.forms,Permissions,Permission Denied,尝试将振铃器模式更改为正常模式时出现运行时错误。我正在使用依赖项服务以xamarin形式调用android中的音频管理器,但当振铃器模式更改为静默模式(可能已经静默)时,代码运行无误。关于更改振铃器模式,您可以按照以下步骤操作 1.在Xamarin.Forms PCL中定义一个接口 public interface IChangeRingModeService { void changeRingModeToNormal(); void changeRingModeToVibra
public interface IChangeRingModeService
{
void changeRingModeToNormal();
void changeRingModeToVibrate();
void changeRingModeToSilent();
}
[assembly: Dependency(typeof(MainActivity))]
namespace App4.Droid
{
[Activity(Label = "App4", Icon = "@mipmap/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize| ConfigChanges.Orientation)]
public class MainActivity :
global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity, IChangeRingModeService
{
AudioManager am;
protected override void OnCreate(Bundle savedInstanceState)
{
TabLayoutResource = Resource.Layout.Tabbar;
ToolbarResource = Resource.Layout.Toolbar;
base.OnCreate(savedInstanceState);
global::Xamarin.Forms.Forms.Init(this, savedInstanceState);
LoadApplication(new App());
}
public void changeRingModeToVibrate()
{
am = (AudioManager)Android.App.Application.Context.GetSystemService(Context.AudioService);
am.RingerMode = RingerMode.Vibrate;
}
public void changeRingModeToNormal()
{
am = (AudioManager)Android.App.Application.Context.GetSystemService(Context.AudioService);
am.RingerMode = RingerMode.Normal;
}
public void changeRingModeToSilent()
{
am = (AudioManager)Android.App.Application.Context.GetSystemService(Context.AudioService);
am.RingerMode = RingerMode.Silent;
}}}
private void Button1licked(object sender, EventArgs e)
{
DependencyService.Get<IChangeRingModeService>().changeRingModeToVibrate();
}
private void Button2licked(object sender, EventArgs e)
{
DependencyService.Get<IChangeRingModeService>().changeRingModeToNormal();
}
private void Button3licked(object sender, EventArgs e)
{
DependencyService.Get<IChangeRingModeService>().changeRingModeToSilent();
}
单击私有无效按钮1(对象发送者,事件参数e)
{
DependencyService.Get().ChangeringModeToVibration();
}
单击私有void按钮2(对象发送者,事件参数e)
{
DependencyService.Get().changeRingModeToNormal();
}
单击私有无效按钮3(对象发送方,事件参数e)
{
DependencyService.Get().changeRingModeToSilent();
}
具体的例外情况是什么?您用来执行此操作的代码在哪里?@Mr,有更新吗?您的问题解决了吗?如果没有,请参阅以下有关更改振铃器模式的代码。