在收到远程通知时对iBeacon进行java扫描
我目前有一个应用程序设置,可以使用Azure通知中心接收远程通知。 现在,我想扫描iBeacons,看看附近是否有一个特定的iBeacons,如果是这样,通知不应该显示给用户。但是,如果看不到信标,用户应该会收到此通知
基本上,我希望信标抑制此应用程序的通知
一个人怎么做呢
你可以在下面搜索框中键入要查询的问题!
我目前有一个应用程序设置,可以使用Azure通知中心接收远程通知。 现在,我想扫描iBeacons,看看附近是否有一个特定的iBeacons,如果是这样,通知不应该显示给用户。但是,如果看不到信标,用户应该会收到此通知
基本上,我希望信标抑制此应用程序的通知
一个人怎么做呢
# 1 楼答案
您可以使用一些开源库来处理信标。例如,我使用了Altbeacon库。 以下是示例:https://altbeacon.github.io/android-beacon-library/samples.html 对于您的目标,您需要在活动或服务上实现BeaconConsumer接口。它在BeaConserviceConnect()上有一个方法。实施示例:
# 2 楼答案
基于the docs from Azure,当收到远程通知时,您会收到如下回调:
}
如果要根据存在的信标筛选通知,可以将该逻辑添加到onReceive方法中,如下所示:
上面的
isBeaconVisible()
可以在定制的Android应用程序类中使用Android Beacon库实现,如下所示。您需要阅读更多有关如何设置该库以使其正常工作的信息。您还需要在AndroidManifest中注册自定义应用程序类。xml如果在最后一秒钟看到任何具有任何标识符的信标,则上述
isBeaconVisible()
逻辑返回true。但您可以根据自己的需求对其进行修改,使其更加复杂