- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在尝试使用 4.3 中的新 BTLE API 在 Nexus 7 上实现 BTLE SERVER。我遇到了几个问题。首先,SDK 没有示例。唯一的例子是客户端。其次,文档实际上告诉你做错事。它声明必须使用带有 BluetoothProfile.GATT_SERVER 参数的 BluetoothAdapter.getProfileProxy() 来获取
BluetoothGattServer
对象。这种方法可行,但无法将 BluetoothGattServerCallback
的实现链接到 BLE 堆栈。 (此回调是响应客户端读写请求的方式。)然而,在遇到问题 58582 后,开发人员指出了新的 BluetoothManager.openGattServer()
方法,该方法将您的回调作为参数并返回一个 BluetoothGattServer
对象。嗯,解决了一个问题。
下一个问题更成问题。
BluetoothGattServer
文档指出,可以使用此类来创建和宣传蓝牙 LE 服务和特性。创建服务等不是问题,但他们忽略了如何开始做广告。类本身或我能找到的任何其他类中没有方法。
有人知道怎么做吗?目前我所能看到的只是使用与客户相同的方法,但该方法涉及扫描(不是广告)。所有文档进一步表明
BluetoothAdapter.startLeScan()
确实只是用于扫描。
那么,一旦我的所有服务、特征和描述符就位,我该如何调用广告呢?
最佳答案
据我了解,Android 实现只能充当中央设备,而不能充当外围设备。在低功耗蓝牙中,只有外围设备可以做广告。中央设备可以扫描来自外围设备的广告,并发送连接请求作为对(某些类型的)广告的回复,以创建与外围设备的连接。
在BLE中,Central/Peripheral和Server/Client这两个概念是有区别的:
Central/Peripheral 与网络架构有关,其中 Central 是星形中的集线器,连接一个或多个外围设备。它通常是手机、平板电脑或计算机。一个外围设备一次只能连接一个中心。
服务器/客户端(GATT 服务器/客户端)是一个更高级别的概念,与保存在设备中并可能通过连接进行通信的数据相关。中央设备和外围设备都可以实现 GATT 服务器和 GATT 客户端,但不需要同时具备。
所以回答你的问题:你不能调用广告。您必须开始扫描外围设备才能连接到其中的一个或多个。
希望这会有所帮助。
关于Android 4.3 BTLE 作为服务器 : How to start advertisements?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18128280/
我正在使用 Unity Ads 在 Unity 2019.2.21f1 中构建带有广告的游戏。我有以下用于显示广告的简短脚本: using System.Collections; using Unit
我希望能够使用一个蓝牙适配器在两个广告数据之间切换,最佳的广告切换间隔是多少,以及要立即被 iOS 识别而没有太多延迟的广告间隔是多少? (我想在 iBeacon 和 GATT 服务广告之间切换)。现
关闭。这个问题需要更多focused .它目前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post . 5年前关闭。 Improve this questi
phpBB 论坛。我想包含“广告管理”Mod,但安装后它在管理员面板中不可见。 当我在管理员面板中更改对象的格式时,我可以看到广告管理,但最后没有。 论坛语言是德语和现代语言英语。phpBB 版本:3
我的设备正在发射低功耗蓝牙 (BLE) 广告,而 Nexus 7 (2013) Android 平板电脑应该会听到这些广告。但是,它听不到来 self 设备的 BLE 广告并且似乎听不到任何 BLE
示例:Ads by: Google 这是横幅 css,我想在这个横幅中添加左上角(广告:mysite.com) .mybannerads { display: block; posi
我已经搜索了如何使用Amazon Product Advertising API,现在可以使用Amazon Product Advertising API搜索其他产品,并且可以正常工作。 但是据我所知
我有一个3节点群。每个都有一个静态IP地址。我在ip 192.168.2.100上有一个领导者node-0,在192.1682.101上有一个备份管理器node-1,在192.168.2.102上有一
我正在使用亚马逊产品广告 API 为我的网站获取产品。我需要能够判断响应中的新项目是来自亚马逊还是来自第三方。在 11/01/2012 API 之前,这似乎可以通过:
当我未连接到我的设备时,我需要永久扫描ble广告以找到它并知道何时连接到它(特定产品)。此扫描是在前台服务中实现的,以匹配 8.0 的先决条件。 为了节省电量,我想定期扫描(同时遵守 Android
我用 iPhone 在 BLE Advertising 中发送数据(短字符串),我想从 Windows 设备读取这个字符串。 所以我正在尝试示例项目“BluetoothAdvertisement”,来
我的应用因使用广告标识符而被拒绝,但我没有在我的应用中使用任何广告标识符。我检查了我的代码,没有广告标识符,我什至没有使用广告支持框架。 是的,我的应用程序转换广告,但我只使用 iAd 框架在我的应用
我有一个运行 3 位服务数据的 BLE 广告服务(例如:010501),其中 05可能是将在特征级别设置的数据版本。我希望另一个设备能够知道重新读取特征而无需手动轮询它。现在我可以在发生变化时使用新的
我是这个 UWP 的新手,请耐心等待。我修改了以下MS GitHub中的代码:Link创建一个可以“观看”BTLE 广告的 Windows Phone 应用程序。 但它无法读取任何广告。我的手机确实支
我知道我们可以使用 docker swarm init 如果节点有多个地址,那么我们需要添加标志 --advertise-addr 并提供IP地址。此标志用于向群集中用于API访问的其他节点提及IP地
我在一个iOS应用程序中工作,该应用程序需要使用Amazon Product Advertising API的Lookup操作获取信息。 我遵循此Pico Tutoiral,我可以使用ItemSear
在高并发环境下使用有什么问题吗?它真的像 MS 宣传的那样有效吗?我正在使用 SQL Server 2005 并且想听听那些正在/正在使用它的应用程序在生产中使用它的经验。 快照隔离本身对我来说并不新
我正在为 iOS 7 编写一套低功耗蓝牙应用程序。当应用程序启动时,我感兴趣的外设很有可能仍然连接到 iOS 设备,为了避免扫描外设,最好立即连接。 retrieveConnectedPeripher
出于某种原因,我无法访问 using UnityEngine.Advertisements; 尽管我的目标平台是 Android 和 Unity Ads,并且内置广告扩展已启用。 通常,我只在为不支持
连接到广播我感兴趣的特定服务的 BLE 设备后,为了发现此服务,我正在调用: [self.peripheral discoverServices:@[[self.class serviceUUID]]
我是一名优秀的程序员,十分优秀!