问题描述
我有一个基本的xamarin应用程序,可以从剪贴板读取并修改文本,然后将其再次设置为剪贴板。当用户在应用程序中时,它工作正常。但是当用户按下“主页”按钮时,它将停止。因此我在OnSleep()上添加了我的方法,并在IOS和Android上启用了后台抓取功能,但是这两种方法都无法使用。
MainPage.cs:
private void clipboardCheckBox_CheckedChanged(object sender,CheckedChangedEventArgs e)
{
if (clipboardCheckBox.IsChecked)
{
MessagingCenter.Send<string>("1","clipboardService");
}
else
{
MessagingCenter.Send<string>("0","clipboardService");
}
}
App.cs:
protected override void OnSleep()
{
MessagingCenter.Subscribe<string>(this,"clipboardService",(value) =>
{
if (value.Equals("1"))
{
Clipboard.ClipboardContentChanged += async (o,e) =>
{
var text = await Clipboard.GetTextAsync();
if (text.Contains("@"))
{
await Clipboard.SetTextAsync(text.Trim('@'));
}
};
}
});
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)