【问题标题】:Xamarin: BroadcastReceiver not receiving when the app is not runningXamarin:应用程序未运行时广播接收器未接收
【发布时间】:2014-07-20 12:31:27
【问题描述】:

我是 BroadcastReceiver 的新手,目前正在尝试。根据我对 Xamarin 的理解,我们只需要使用 BroadcastReceiver 属性装饰我们的接收器子类,Xamarin 将在清单中生成必要的条目。这是我目前拥有的:

[BroadcastReceiver(Enabled = true, Exported = true)]
[IntentFilter(new[] { "myaction" })]
class MyReceiver : BroadcastReceiver
{
}

当我在应用程序本身内发送广播或在此应用程序运行时从其他应用程序发送广播时,一切正常。问题是当我没有运行这个应用程序时,如果我尝试从其他应用程序发送广播(使用正确的意图过滤器),我将无法接收到广播。

我在这个问题上做了一些阅读,似乎对于本机 Java,我们需要在清单本身中显式声明/定义 BroadcastReceiver 以便它能够接收广播,即使它没有运行.据我了解,这对于 Xamarin 来说不是必需的,所以我现在有点卡住了。你们对此有什么见解吗?

附加信息:

  • 我在调试模式下运行 (Visual Studio)
  • 我已启动应用程序主活动至少一次
  • Android 4.3

【问题讨论】:

  • 你有什么运气吗?我也有同样的问题...

标签: android broadcastreceiver xamarin


【解决方案1】:

您必须在服务中声明它。原因在进程生命周期部分中给出了here

问候。

【讨论】:

  • 请注意,link-only answers are discouraged,SO 答案应该是搜索解决方案的终点(相对于另一个参考中途停留,随着时间的推移往往会变得陈旧)。请考虑在此处添加独立的概要,并保留链接作为参考。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多