如何在我的应用程序未运行时启动iBeacon?

时间:2013-11-21 12:35:31

标签: android ibeacon ibeacon-android

如何在我的应用未运行时启动iBeacon。 我的意思是必须有一些广播接收器可以放在我的应用程序的清单中。

修改

由于这个问题具有误导性,让我再说一遍:

我创建了一个检测iBeacon的项目 1.在活动运行状态。 2.在服务中。

如果我想在检测到iBeacon时收到通知,当应用程序未运行时,我有一个选项是通过服务。但这会耗尽电池。那么有没有任何广播接收器,一旦检测到任何iBeacon就通知我的应用程序。

我为此编写的演示代码是: https://github.com/Vinayrraj/Android-iBeacon-Demo

2 个答案:

答案 0 :(得分:4)

您只需在后台运行服务即可。代码必须运行以检测iBeacons(例如Radius Networks的Android iBeacon Library)。如果您没有运行服务,那么后台检测将会是什么?

是的,在后台运行的任何东西都会耗尽电池电量,但如果电池在大部分时间都处于睡眠状态,它将不会耗尽电量。降低扫描频率可以节省电池寿命。例如,iOS7操作系统每隔几分钟就会进行一次蓝牙扫描,而iBeacons没有前景应用。

因此,解决电池问题的方法是降低服务中蓝牙扫描的频率,以便在电池寿命和iBeacon检测速度之间进行可接受的折衷。如果你正在使用我公司的Android iBeacon Library,那么。你可以根据自己的喜好调整常量。

编辑:我的公司发布了Android版iBeacon图书馆的“专业版”,内置了在看到一个或多个iBeacon时启动应用的功能。它还包括一个自动节电器,可在您的应用程序处于后台时减慢蓝牙扫描速度。请参阅此处的代码示例:http://developer.radiusnetworks.com/ibeacon/android/pro/download.html

答案 1 :(得分:-1)

要在Android上执行某些操作,您必须创建一个应用程序。为了使某些东西工作,你编写的东西,你需要运行你的应用程序。所以不可能做你想要的事情。 对不起,伙计。