传递给 BroadcastReceiver 的 onReceive() 的 Context 是什么?

2024-04-06

传入的上下文是什么onReceive的方法BroadcastReciver:

public void onReceive (Context context, Intent intent)

根据官方文档 http://developer.android.com/reference/android/content/BroadcastReceiver.html#onReceive(android.content.Context,%20android.content.Intent):

接收器运行的上下文。


一些研究给出了以下结果......

对于静态接收器

public class MyReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        Log.e("PANKAJ", "Context class " + context.getClass().getName());
        Log.e("PANKAJ", "Application Context class "
                + context.getApplicationContext().getClass().getName());
    }
}

我得到以下日志

08-05 06:51:33.448: E/PANKAJ(2510): Context class android.app.ReceiverRestrictedContext
08-05 06:51:33.448: E/PANKAJ(2510): Application Context class android.app.Application

对于 bynamic 接收器(注册到 Activity MainActivity 中),例如

private BroadcastReceiver myReceiver = new BroadcastReceiver() {
    public void onReceive(android.content.Context context, Intent intent) {
        Log.e("PANKAJ", "Context class " + context.getClass().getName());
        Log.e("PANKAJ", "Activity Context class "
            + MainActivity.this.getClass().getName());
        Log.e("PANKAJ", "Application Context class "
            + context.getApplicationContext().getClass().getName());
    }
};

我得到以下日志

08-05 06:53:33.048: E/PANKAJ(2642): Context class com.example.testapp.MainActivity
08-05 06:53:33.048: E/PANKAJ(2642): Activity Context class com.example.testapp.MainActivity
08-05 06:53:33.048: E/PANKAJ(2642): Application Context class android.app.Application

因此,当它成为现实时,文档中的陈述接收器运行的上下文 https://developer.android.com/reference/android/content/BroadcastReceiver.html#onReceive(android.content.Context,%20android.content.Intent).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

传递给 BroadcastReceiver 的 onReceive() 的 Context 是什么? 的相关文章

随机推荐

  • 指向常量字符的指针

    下面的代码指向a中的第一个字符字符数组可在只读存储器中使用 是对的吗 const char ptr String one 现在 当ptr开始指向另一个内存位置 ptr String two 第一个会发生什么字符数组 执行结束时该内存位置是否
  • 是否有跨设备的 CNContact 标识符?

    CNContact 是否有任何 icloud 标识符可以让我在设备上保留并重复使用 这个想法是能够从不同的 iOS 设备再次拉取 CNContact 文档对此没有任何说明 我知道以前的 ABAddressbook 框架也没有这个功能 但我希
  • 如何从 python/scipy/numpy 等中的步骤函数中采样?

    如果我有每个箱的箱边和计数 是否有一种很好的简洁方法可以从这意味着的概率密度函数中进行采样 这是我的意思的一个例子 bin edges 0 2 1 6 3 23 5 counts 5 2 10 概率密度函数是一个阶跃函数 其步长为 0 2
  • 在 iPhone 键盘顶部添加文本框和按钮

    我想在它旁边添加一个文本框和一个按钮 它们将位于窗口的底部 然后 当我触摸文本框 输入内容 时 键盘将出现 整行 带有文本框和按钮 向上滚动 键盘将位于它们的正下方 你能让我知道我该怎么做吗 有示例程序吗 Thanks 马特 加拉格尔 Ma
  • 每个用户“类型”的 PHP 子文件夹

    我有 3 个子文件夹upload文件夹 我的代码如下所示 if isset SESSION u type SESSION u type 3 files scandir path 3 path is set somewhere above 它
  • $scopeProvider <- $scope/ 未知提供者

    我用茉莉花测试我的角度应用程序 http jasmine github io 2 0 http jasmine github io 2 0 并出现下一个错误 未知提供者 scopeProvider testModule controller
  • C#:锚定面板无法正确调整大小

    关于用户控件中面板的自动调整大小 我遇到了一个奇怪的问题 该面板固定在用户控件的所有 4 个侧面 但锚定并不总是按其应有的方式起作用 如果通过调整窗体大小来调整用户控件的大小 则右侧和底部锚点不起作用 但是 如果使用表单中的拆分器调整控件的
  • 尝试在空对象引用上调用虚拟方法“java.lang.Object android.content.Context.getSystemService(java.lang.String)”

    我正在尝试检查我的应用程序是否是第一次启动 如果是 则要求用户输入 然后 检查 Wi Fi 是否已连接 如果连接了 Wi Fi 我将使用用户提供的输入来加载 WebView 但是 该应用程序在启动时崩溃并出现错误 尝试在空对象引用上调用虚拟
  • 显示来自 javascript Chrome 书签的提示

    我想创建一个 chrome 书签 提示用户输入一个值 然后在 cookie 中设置该值 我无法显示提示 有没有办法做到这一点 当前代码 javascript function var days window prompt Number of
  • 在 Woocommerce 中显示特定产品类别的产品

    我的 WordPress 网站中有这段代码 它显示了我拥有的产品 ul li h3 a href a h3 li ul
  • ValidateRequest=“false” 和 .NET 4 问题

    NET 4 崩溃了ValidateRequest false 因为某些原因 解决方案是 只需将
  • 训练新的 AutoTokenizer 拥抱脸部

    收到此错误 AttributeError GPT2Tokenizer 对象没有 属性 train new from iterator 与拥抱面部文档非常相似 我更改了输入 就是这样 不应该影响它 有一次就成功了 2小时后回来查看 发现并没有
  • 命令按钮在第二次按下时调用操作 (jsf)

    我的应用程序出现了奇怪的行为 命令按钮在第二次点击时开始调用操作 首先 什么也没有发生 它对火狐和铬有效 但在顿悟中照常工作 我的环境 Ubuntu 11 04 玻璃鱼 3 1 1 jsf 2 X 素面 3 2 火狐 12 0 顿悟2 30
  • 在气隙环境中使用 docker 的最佳实践

    我是 Docker 新手 想在气隙环境中使用它 我知道我可以在隔离系统中设置自己的存储库 但我不知道如何从 docker hub 获取所需的许多 docker 镜像到环境中 如果我可以将它们下载到 zip 或 tgz 存档中 那就太好了 但
  • 为什么需要 gwt-bootstrap?

    我是 GWT 新手 正在考虑使用 Twitter Bootstrap 作为 CSS 框架 但后来我遇到了gwt 引导程序 http gwtbootstrap github io 它标榜自己是在 GWT 应用程序中使用 Bootstrap 的
  • 如何在 Spring 中注入 List 实例?

    什么有效 假设我有一个 ArrayList 的 spring bean 定义
  • R:从包中覆盖函数的正确方法是什么?

    我使用的是 R 包 其中有 2 个函数 f1 和 f2 其中 f2 调用 f1 我想覆盖函数f1 由于 R 2 15 和包中命名空间的强制使用 如果我只是获取新函数 它确实可以在全局环境中使用 即 只需在控制台中调用 f1 x 即可返回新结
  • 如何获取与某个单词相关的相似单词?

    我正在尝试解决一个 nlp 问题 其中我有一个单词字典 例如 list 1 phone android chair netflit charger macbook laptop sony 现在 如果输入是 phone 我可以轻松地使用 in
  • “ResizeObserver”仅指一种类型,但在这里用作值

    我收到错误 ResizeObserver only refers to a type but is being used as a value here当尝试在 React 和 TypeScript 中使用 ResizeObserver 时
  • 传递给 BroadcastReceiver 的 onReceive() 的 Context 是什么?

    传入的上下文是什么onReceive的方法BroadcastReciver public void onReceive Context context Intent intent 根据官方文档 http developer android