问题标签 [bootcompleted]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
338 浏览

android - Android BOOT_COMPLETED

我有一个关于 BOOT_COMPLETED 事件的问题。我需要一个始终运行的服务(通过 AlarmManager 完成),但我想知道是否必须在第一次安装应用程序时手动启动该服务,因为只有在设备重新启动后才会发送 BOOT_COMPLETED 事件。这通常是如何处理的,似乎没有人遇到这个问题,我这里有什么问题吗?

0 投票
3 回答
4494 浏览

android - BOOT_COMPLETED 上的 Android BroadcastReceiver 未启动警报

我正在尝试使用相对简单的解决方案在启动时执行一些代码。基本上我想在启动时安排/重新安排警报以在将来执行某个任务。

在我的清单中,我有:

我的代码:

如果我取消注释代码以启动活动,它会很好地工作,并且我看到 BOOT_COMPLETED 被我的接收器捕获。但是,尝试启动警报不起作用(也尝试显示通知但它不起作用)。我该如何解决这个问题?

0 投票
0 回答
405 浏览

android - 我没有在模拟器中收到 RECEIVE_BOOT_COMPLETED

我是法国人,对不起我的英语。我正在尝试开发一个在后台运行并捕获 SMS 的自动启动服务。经过大量研究,我无法解决我的问题。

开机后无法运行服务,收不到日志

应该由 BootReceiver 打印。(下面的CF代码)

我验证了 AndroidManifest,测试了不同的代码,但没有任何工作正常。我使用 Eclipse 并使用 Android 虚拟设备测试代码,所以问题可能来自模拟器,我使用真实设备进行了测试,但它也没有启动。

您可以在下面找到代码。谢谢您的帮助。

显现:

主要的:

接收者:

0 投票
8 回答
98113 浏览

android - BOOT_COMPLETED 无法正常工作

首先,我知道已经问了数百个这样的问题,但是我已经检查了一段时间,仍然找不到任何解决方案。

我已经看到这个答案说 BOOT_COMPLETED 不会发送到应用程序,除非用户在 Android 版本 3.1 之后首先启动您的应用程序,但我仍然看到一些应用程序正在这样做,必须有办法。我真的需要处理它,否则我也反对在没有用户交互的情况下做某事。

所以这是我的 AndroidManifest:

提前致谢。

编辑:在我的广播接收器中没有什么可看的,但这里需要的是:

0 投票
2 回答
660 浏览

android - 广播接收器在启动时不工作

我的应用程序只包含一个广播接收器类。我只想在手机完全启动时在 logcat 中显示一条消息。为此,我使用了“ACTION_BOOT_COMPLETED”。

广播接收器类

在清单中:

但是我什么时候启动手机,logcat 中没有显示该消息。我有什么问题??

0 投票
3 回答
1159 浏览

android - 在 Android 应用程序组件之间共享数据的最佳方式

我正在开发一个包含许多组件的应用程序。
该应用程序AlarmManager用于从服务器进行一些轮询。还有一些常规活动显示数据(存储在SqliteSharedPreferences上)

一切都很好,直到我尝试添加一个在设备完成启动(BOOT_COMPLETED)时开始轮询的功能,当我这样做时我发现我无法使用SharedPreferencesContext扩展onReceive(Context context, Intent intent)的类的方法中获得的BroadcastReceiver获得的访问。

另一件事是我使用 Singleton 来处理所有的SharedPreferencesDB功能。此 Singleton 包含应用程序Context第一个午餐活动( LoginActivity)。并在整个应用程序和投票中使用它BroadcastReciver

所以我理解(相信......)当设备完成启动时,我会变得不同 Context(不是LoginActivity我以前得到的上下文),这是问题的根源(是吗???)

在所有这些序言之后,我真正需要的是针对此类任务的最佳实践方法 - 如何在整个应用程序上存储SharedPreferences和获取数据:DB

  1. 当用户运行它时
  2. 当它通过AlarmManager
  3. 当它通过BOOT_COMPLETED广播自动启动时

没有遇到这个Context问题。一个例子会很棒。

编辑: 这是我的代码片段:

ConnectionManager.java- 此类保存 REST 请求实现并将内容存储到 SharedPreferences:

MainBootListener.java:这个类假设激活轮询机制 - 它不起作用,因为 ConnectionManager 上有异常。

DataPollingBroadcastReceiver.java: 这个类从服务器轮询数据

当然还有更多的课程——我尽量带上最低要求。

编辑我收到的异常2:如果轮询机制在应用程序中处于活动状态(单例将 LoginActivity 作为上下文)并且我从任务管理器关闭了应用程序,则轮询停止并显示此异常:

当应用程序未运行并且我从 adb 发送 BOOT_COMPLETED 时发生了第二个异常,而不是单音尝试初始化。使用 BroadcastReciver 上下文。这是个例外:

0 投票
2 回答
485 浏览

java - 无法从 boot_complete 接收器启动外部服务

我正在尝试使用尽可能少的代码从我的 apk 启动外部服务。在 4.0 AVD 上测试包并验证 logcat 中的响应似乎给出了正确的结果;但是,在实际设备上它不会加载。实际上,它甚至似乎根本没有在 logcat 中列出。

这可能是我忽略的东西,只需要第二双眼睛来确认。

启动服务.java:

AndroidManifest.xml

AVD 回应:

我实际上期望“未找到”,因为包含该服务的实际软件包未安装在 AVD 上。由于系统 SharedUserID,我无法安装它。但是,至少我可以看到它正在尝试使用 AVD 加载它,而实际设备甚至没有在 logcat 消息中列出。

提供一些背景知识,当第三方启动器设置为默认值时,这个特定的 Android 设备不会加载“com.winca.service/.StartService”服务。这可以防止设备上的许多音频服务在被激活之前一直处于禁用状态。所以,我想也许可以快速打包来做这件事;而不是使用像 Tasker 之类的东西(由于某种未知原因,强制在此设备上关闭)。

0 投票
2 回答
698 浏览

android - 从 BOOT_COMPLETED Receiver 请求位置更新?

我需要获取位置更新表单 onReceive 方法。当 onReceive() 调用 GPS 启动 2-3 秒后消失了,为什么?

如何解决?我想获取位置更新。请帮忙。

注意:重启手机时会调用 onReceive 方法

的java代码:

清单.xml

0 投票
2 回答
752 浏览

android - 是否可以避免多个警报的“重复代码”(以前是:多个警报 = 多个引导接收器)?

我有一个非常微妙的问题,在比我更专业的眼里可能看起来很怪诞。

我正在实现 2 个不同的警报,它们可以在重启/关闭后继续存在,并在触发时显示通知。
一种是重复的每日提醒,另一种是每月提醒,每次用户完成给定任务时由应用程序重置。
只是为了提醒他/她在一个月过去时再做一次。

现在,一切正常。
所以有什么问题?

什么都没有,但我将 BootReceiver、AlarmReceiver 和 AlarmService加倍
了只有 Notification builder 是共同的。

那么我的问题是:我可以统一这些元素而不让它们分裂以产生任何警报吗?
因为如果没有,如果将来我需要安排每周警报,我将不得不制作另一个启动接收器、警报接收器和警报服务。

对我来说,这似乎不太聪明(假设我添加了每周每年的任务:我必须再添加 2 个所有接收器和服务!!这对我来说似乎很疯狂)。
但也许我错了,事情就是这样?

在我之前编写的一个应用程序中(在认识到它没有通过重新启动之前),它与共享所有类的警报一起工作。

谢谢你们,伙计们,你们的时间。

如果您需要查看我的代码,请索取。不过有点长...

这是我的清单文件,只是为了说明我的疑问:

0 投票
0 回答
1034 浏览

android - 当 android 应用程序以 BOOT_COMPLETED 意图启动时,NfcAdapter.getDefaultAdapter 返回 null

基于 NFC 的 Android 应用程序,在启动完成后启动(当BOOT_COMPLETEDBroadcastReceiver 接收到事件时)。

问题

有时NfcAdapter.getDefaultAdapter(this)返回 null;这是随机的/不一致的,对于某些引导周期,它可以正常工作并返回NfcAdapter,对于其他引导周期,此方法返回 null。

我怀疑,当它返回 null 时,NFC 服务尚未启动,或者 NFC 服务在BOOT_COMPLETED广播事件时未完全运行。

问题

BOOT_COMPLETED有没有办法在广播事件之前确保 NFC 服务正在运行且稳定?

假设设备已植根,如果init.rc修改会有所帮助吗?如果是,如果有人遇到这样的问题,有什么调整?