我目前正在从事后台信标扫描服务(前景,单独过程)。我发现像三星这样的其他生产商会覆盖有关休眠模式下蓝牙扫描的默认android行为。
目前,我在使用HUAWEI设备时遇到问题。当设备进入睡眠模式时,华为似乎完全停止了蓝牙扫描。
到目前为止,我找不到关于华为蓝牙问题的任何帖子,所以我很好奇是否有人有类似的经历?
谢谢
我正在使用Moko H2 信标并使用此库来获取信标列表 我成功获取信标列表
扫描后我收到此类回复
[
{
"mac": "F2:EE:97:63:1B:B6",
"validDataHashMap": {
"20": {
"data": "20000bc117c0006673d201552aa1",
"type": 2
}
},
"rssi": -53
},
{
"name": "BeaconX",
"mac": "C4:7D:65:69:95:B7",
"validDataHashMap": {
"0afcc47d656995b7220164426561636f6e58": {
"data": "0afcc47d656995b7220164426561636f6e58",
"type": 4
}
},
"rssi": -58
},
{
"name": "BeaconX",
"mac": "D0:24:EA:4E:1F:B3",
"validDataHashMap": {
"0afcd024ea4e1fb3220164426561636f6e58": {
"data": "0afcd024ea4e1fb3220164426561636f6e58",
"type": 4
},
"20": {
"data": "20000bd91980005b4af60130014a",
"type": 2
}
},
"rssi": -59
},
{
"mac": "D3:B9:AF:E1:D7:D3",
"validDataHashMap": {
"1000016d6f6b6f736d61727400": {
"data": "1000016d6f6b6f736d61727400",
"type": 1 …Run Code Online (Sandbox Code Playgroud) 据我所知,在信标发送的包中,它包含有关校准 Tx 功率(或测量功率 - 1 米处的功率值)的信息。我只是想知道为什么信标发送校准的 Tx 功率,而不是广播功率(信标从源发送的信号功率)。因为计算逻辑可能会有所不同,但它使条款和配置更加简单。
我在iOS应用中使用“附近的消息” API接收了由Eddystone信标触发的消息,它运行良好。我正在使用Firebase的实时数据库作为应用程序的后端。由于Firebase的缓存非常棒,因此我能够使该应用程序在离线状态下运行良好。
我的问题是,是否有人知道/使用一种技术(可能与Firebase结合使用)来预先缓存与信标关联的附件(例如,将所有Eddystone附件缓存在特定名称空间中),以便在应用程序没有连接时可以有效地获取信标附件上网。
任何探索领域的建议都将是不错的。
我正在使用 Alt-Beacon 库,并且收到此错误并且无法检测到信标,
CycledLeScannerForLollipop:扫描失败:应用程序无法注册
平台:一加5安卓7.1.1
谁能建议我如何解决这个问题。
我正在使用AltBeacon库开发一个简单的信标接近应用程序 https://altbeacon.github.io/android-beacon-library/samples.html
我正在尝试上面网站上提供的示例代码,但是,每次运行应用程序时,它只会转到didDetermineStateForRegion()方法.如果它检测到信标,它将转到didEnterRegion()方法.
我不确定我做错了什么,并且无法在其他问题中找到答案.
上述网站上提供的参考应用程序存在同样的问题,但Locate应用程序(基于AltBeacon)会立即检测到我的信标.
我的信标设置为152ms传输间隔和最大传输功率.
这是我的代码:
主要活动
public class MainActivity extends AppCompatActivity implements BeaconConsumer {
protected final String TAG = "Beacons Monitoring";
private BeaconManager beaconManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
beaconManager = BeaconManager.getInstanceForApplication(this);
beaconManager.getBeaconParsers().add(new BeaconParser().setBeaconLayout("m:0-3=4c000215,i:4-19,i:20-21,i:22-23,p:24-24"));
beaconManager.bind(this);
}
public void onDestroy(){
super.onDestroy();
beaconManager.unbind(this);
}
@Override
public void onBeaconServiceConnect() {
beaconManager.addMonitorNotifier(new MonitorNotifier() {
@Override
public void didEnterRegion(Region region) {
Log.e(TAG,"I just saw a beacon for the first time");
}
@Override
public void didExitRegion(Region region) {
Log.e(TAG, "I lost …Run Code Online (Sandbox Code Playgroud) $(window).on('unload', function() {
db.flipCounter.get(gon.slug, function(obj) {
var payload = {
slug: gon.slug,
localFlipCount: obj.fc,
time: Date.now()
}
navigator.sendBeacon('/analytics', csrfProtect(payload))
})
})
function csrfProtect(payload) {
var param = $("meta[name=csrf-param]").attr("content")
var token = $("meta[name=csrf-token]").attr("content")
if (param && token) payload[param] = token
return new Blob([JSON.stringify(payload)], { type: "application/x-www-form-urlencoded; charset=utf-8" })
}
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,我希望使用有效负载将 POST 发送到“/analytics”网址。我在尝试触发请求时收到以下错误(警告):
Promise.js:840 未处理的拒绝:TypeError:无法在字符串 '{"slug":"test-page-by-marvin-danig","localFlipCount":1,"time":1524241435403}' 上创建属性 'authenticity_token'
嗯。
…发出请求,我得到:
Processing by BooksController#analytics as */*
Parameters: {"{\"slug\":\"test-book-by-marvin-danig\",\"localFlipCount\":1,\"time\":1524243279653,\"param\":\"8rzDx/TNL8YeU1/NWgWSk6gB/UvmbB9Ip VajDCgfDUv5Q4pjh7x0GUG1il1jDJajtJyHf84Xv5Pt14fiCnA9w"=>"=\"}"}
Can't verify CSRF token authenticity.
exception
ActionController::InvalidAuthenticityToken
Run Code Online (Sandbox Code Playgroud)
更新:问题仍未解决。这是我现在所处的位置:
我的 GET 和 …
javascript ruby-on-rails navigator authenticity-token beacon
我EVT_LE_ADVERTISING_REPORT从 HCI 插座接收。我想区分 BLE 信标和普通 BLE 设备(解析设备名称等)我对所有 BLE 设备是否都发出信标或它们不同感到困惑。如果不同,那么它们的数据包格式如何?
我的 Android 应用程序用于广播信标,这些信标作为带有 URL 链接的通知传送到附近的设备。
谷歌宣布他们将关闭这项服务。
他们推荐使用Proximity Beacons API
阅读文档后,我知道我需要通过 REST-API 注册每个信标,使用 OAuth 和 API 进行身份验证(同时),他们还说了一些关于 Google Places 的内容等等。
看起来很复杂。
我不明白:这些信标会通过我的 URL 链接通过 Nearby 传送给附近的用户吗?以前是怎么工作的。
也许有一个Android库?我找到了这个。但它仅用于“扫描”。我不明白是为了什么。像以前那样向附近的其他设备广播信标是不可能的吗?
谢谢
android google-beacon-platform beacon google-nearby google-proximity-api
我想通过 BLE 将一些传感器数据发送到多个节点。
我想到了以4Hz改变广告数据。能做到吗?