首页
学习
活动
专区
圈层
工具
发布

Android蓝牙开发(二)之蓝牙配对和蓝牙连接

上篇文章:https://blog.csdn.net/huangliniqng/article/details/82185983 讲解了打开蓝牙设备和搜索蓝牙设备,这篇文章来讲解蓝牙配对和蓝牙连接 1...同样的,如果我们想要配对的设备取消配对 只需要将creatBond改为removeBond 2.蓝牙连接:   配对成功之后,就可以进行蓝牙连接了,蓝牙连接操作比较耗时,可以在一个线程中进行: 调用自己定义的...连接的时候要先判断蓝牙是否在扫描,如果在扫描就停止扫描,并且没有连接才进行连接,代码如下: if (bluetoothadapter.isDiscovering()) { bluetoothadapter.cancelDiscovery...在这里我们需要注意的是,当连接成功时,我们要让被连接的那部手机也自动跳转到聊天页面,所以我们要开启蓝牙服务端等待设备的连接,当设备连接时,自动跳转页面,蓝牙服务端代码如下: /** * 开启服务端...} } catch (IOException e) { e.printStackTrace(); } } } 服务端运行也在一个线程中

4.9K20

Android蓝牙开发(二)之蓝牙配对和蓝牙连接

上篇文章:https://blog.csdn.net/huangliniqng/article/details/82185983 讲解了打开蓝牙设备和搜索蓝牙设备,这篇文章来讲解蓝牙配对和蓝牙连接 1....: 配对成功之后,就可以进行蓝牙连接了,蓝牙连接操作比较耗时,可以在一个线程中进行: 调用自己定义的 connect(listdevice.get(position)); 同样传递的参数也是设备device...连接的时候要先判断蓝牙是否在扫描,如果在扫描就停止扫描,并且没有连接才进行连接,代码如下: if (bluetoothadapter.isDiscovering()) { bluetoothadapter.cancelDiscovery...输入框并显示当前连接的设备名称如图所示: 在这里我们需要注意的是,当连接成功时,我们要让被连接的那部手机也自动跳转到聊天页面,所以我们要开启蓝牙服务端等待设备的连接,当设备连接时,自动跳转页面,蓝牙服务端代码如下...} } catch (IOException e) { e.printStackTrace(); } } } 服务端运行也在一个线程中

4.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android蓝牙连接a2dp蓝牙耳机

    开发环境: 开发工具:Androidstudio 适配机型:honor8(Android6.0), 坚果R1(Android8.0) 开发功能:Android中蓝牙连接A2DP...设备,蓝牙耳机设备 功能实现: 本应用提供以下功能: 第一:开启蓝牙 第二:查找过滤掉A2DP设备 第三:连接A2DP设备 第四:断开连接A2DP设备 第五:保存通过本应用连接的A2DP设备 第六...:当重新启动应用时加载已连接的设备 A2dp介绍 A2DP全名是Advanced Audio Distribution Profile 蓝牙音频传输模型协定。...new Class[]{BluetoothDevice.class}); method.invoke(bluetoothA2dp, device); 当应用退出或者进程被杀死后,重新进入应用时会加载原先已连接的蓝牙设备...备注,加载已连接的蓝牙设备是只针对该应用,也就是说只加载在该应用中进行连接的设备,对于通过设置连接的设备,不做处理。 本应用只是提供一个雏形,更多功能需求还需要自己去完善 功能演示 开启蓝牙 !

    3.4K00

    Android BLE 蓝牙开发,连接蓝牙设备进行通讯

    介绍 本篇主要基于 Android 官方的低功耗蓝牙连接服务。 讲解如何通过 UUID 连接蓝牙设备。如果你针对 GATT 服务不太了解。那么这篇应该能够稍微帮助到你。...而使用BLE库,我们可以直接通过蓝牙设备的UUID进行连接(通过GATT服务),在当前应用内就能直接连接了。而不用通过系统设置。...(通常这些设备都是开机之后,就默认开启蓝牙了) Phone 开启蓝牙。 Phone 发现 Device。 Phone 与 Device 创建蓝牙连接。...需要此权限才能执行任何蓝牙通信,例如请求连接、接受连接和传输数据等。 同时,还需要位置权限。因为蓝牙 LE 信标通常与位置相关联。如果不开启 ACCESS_FINE_LOCATION 权限。...第二个传参autoConnect:是一个boolean值对象,false代表直接连接到蓝牙设备。true代表在蓝牙设备可用时自动连接。

    7.3K30

    如何在后台运行Linux命令?

    第一:启动新的 Shell 会话并在其中运行命令; 第二:在后台运行命令; 后台进程是从终端启动并在后台运行,无需用户与其终端进行交互的进程及命令; 1、组合键及命令 以 httpd-2.2.17.tar.gz...压缩包为例,比如一个压缩包文件解压需在终端屏幕下解压很长时间,甚至要刷很长一段屏幕才能解压完毕,那么我们可以按下Ctrl+Z组合键,便可以暂停运行并隐藏到后台,将会返回一个停止序号,此时进程时暂停的,...[1]+ Done tar -zxf httpd-2.2.17.tar.gz 2、& 在执行命令后加&,使其在终端后台运行。.../yum_install.sh & 执行完如上命令,yum脚本便在后台运行,虽然在后台运行了,但输出的内容还是会在终端上进行显示的,那么我们可以采用将执行后的命令输出结果重定向到文件中。 # ....在执行命令最前面使用nohup,当关闭控制台时,进程依旧会在后台继续运行。 # nohup .

    4.7K20

    Android Ble蓝牙App(二)连接与发现服务

    前言   在上一篇中我们进行扫描设备的处理,本文中进行连接和发现服务的数据处理,运行效果图如下所示: 正文   现在我们从MainActivity进入到ScanActivity,选中一个设备返回到...,所以我们就先重写这两个函数,注意一点的是,蓝牙的操作都是在子线程中进行的,如果我们需要知道当前是否连接,则需要写一个接口用于回调到Activity中,在ble包下新建一个BleCallback接口,代码如下所示...二、连接和断连 在BleCore中增加如下代码: /** * 连接蓝牙设备 */ fun connect(device: BluetoothDevice) {...onCreate()中写好了,下面我们运行一下看看效果。...它是一个128位长的数字,在蓝牙通信中起到唯一标识的作用。蓝牙UUID按照标准分为两种类型: 16位UUID:这些UUID通常用于蓝牙标准定义的一些通用服务和特性。

    1.1K10

    Android如何保持后台运行——唤醒锁机制

    前言 如今在Android上想要保证存活越来越难了,但是Android提供有一个机制——唤醒锁,可以保证cpu一直不休眠,但是代价就是耗电高。...这个机制主要是用于一些特别的场景,比如音乐类APP在后台播放音乐,这就需要使用唤醒锁来保证持续播放下去。...使用唤醒锁 首先需要在AndroidManifest.xml中添加权限 android.permission.WAKE_LOCK 然后使用PowerManagerService来创建一个唤醒锁,并启用,...这里涉及到Android设备的休眠过程,如果长时间不使用,则先屏幕变暗,过段时间屏幕关闭,再过段时间CPU关闭。...另外不要滥用这个机制,尤其现在Android系统会提示用户高耗电应用,会给自己的用户带来很不好的使用体验。

    2.7K20

    android开发之蓝牙配对连接的方法「建议收藏」

    最近在做蓝牙开锁的小项目,手机去连接单片机总是出现问题,和手机的连接也不稳定,看了不少蓝牙方面的文档,做了个关于蓝牙连接的小结。...在做android蓝牙串口连接的时候一般会使用 BluetoothSocket tmp = null; // Get a BluetoothSocket for a connection with the...catch (IOException e) { Log.e(TAG, "create() failed", e); } 然后是tmp赋给BluetoothSocket,接着调用connect方法进行蓝牙设备的连接...InvocationTargetException e) { e.printStackTrace(); } socket = temp; } 要点:1.蓝牙配对和连接是两回事...2.蓝牙串口连接可通过端口 (1-30)和UUID两种方法进行操作。    3.通过UUID进行蓝牙连接最好先进行配对操作。

    4.1K40

    Android 低功耗蓝牙开发(扫描、连接、数据交互)Kotlin版

    低功耗蓝牙开发(扫描、连接、数据交互)Kotlin版 前言 正文 一、配置项目 二、页面设计 三、扫描设备 ① 绑定视图 ② 检查Android版本 ③ 打开蓝牙 ④ 请求权限 ⑤ 扫描结果 ⑥ 设备适配器编写...⑦ 数据渲染 ⑧ 开始和停止扫描 四、连接和数据交互 ① 绑定视图 ② 初始化连接 ③ Ble回调 ④ 帮助类 ⑤ UI回调 五、源码 前言   写这篇文章是因为有读者想看看Kotlin中怎么操作低功耗蓝牙...当程序编译完成之后,运行到自己手机上,先确保项目配置这一步没有问题。 二、页面设计   首先改一下主题的颜色,列如标题,改成绿色。..." android:text="空空如也~" /> LinearLayout> android.material.floatingactionbutton.ExtendedFloatingActionButton...你现在可以运行一下,不过我打算一气呵成,写完再运行。 四、连接和数据交互   这里的连接自然还是Gatt连接,同样的新建一个Activity,去哪里进行连接和数据交互操作。

    2.1K21

    Android 低功耗蓝牙开发(扫描、连接、数据交互)Kotlin版

    低功耗蓝牙开发(扫描、连接、数据交互)Kotlin版 前言 正文 一、配置项目 二、页面设计 三、扫描设备 ① 绑定视图 ② 检查Android版本 ③ 打开蓝牙 ④ 请求权限 ⑤ 扫描结果 ⑥ 设备适配器编写...⑦ 数据渲染 ⑧ 开始和停止扫描 四、连接和数据交互 ① 绑定视图 ② 初始化连接 ③ Ble回调 ④ 帮助类 ⑤ UI回调 五、源码 前言   写这篇文章是因为有读者想看看Kotlin中怎么操作低功耗蓝牙...当程序编译完成之后,运行到自己手机上,先确保项目配置这一步没有问题。 二、页面设计   首先改一下主题的颜色,列如标题,改成绿色。..." android:text="空空如也~" /> LinearLayout> android.material.floatingactionbutton.ExtendedFloatingActionButton...你现在可以运行一下,不过我打算一气呵成,写完再运行。 四、连接和数据交互   这里的连接自然还是Gatt连接,同样的新建一个Activity,去哪里进行连接和数据交互操作。

    3.4K31

    Windows Phone 8.1低功耗蓝牙开发-Nokia Treasure Tag

    引言 上一篇文章《Windows 8.1 低功耗蓝牙开发》讲述了如何在Windows 8.1平台上创建低功耗蓝牙应用,并且以TI的Sensor Tag为例,给出了代码步骤和演示。...其实当前很多低功耗蓝牙的应用场景是与用户的手机相连接,如TI的Sensor Tag官方就给出了Android和iOS的客户端应用(很遗憾没有Windows Phone版本的,不过现在大家可以去Store...再比如小米刚刚出的79块钱的手环,也是通过低功耗蓝牙与Android设备连接。今天,让我们来看一看如何在Windows Phone 8.1上开发低功耗蓝牙的应用。 2....关于Treasure Tag的任务,是以后台方式运行的,这个工程是winmd的工程. 4.3 在main project中需要添加对这个后台任务的引用,如下图3所示。...应用程序运行以后,主页面显示的是设备页面,即蓝牙能够搜索到的当前BLE 4设备,如下图6所示。 ? 图6 点击其中的Nokia Proximity Sensor,进行报警的设置。如下图7所示。 ?

    1.7K100

    如何在断开连接后保持远程 SSH 会话运行

    保持 SSH 会话在后台运行tmux是一个非常快速的解决方案。它可以分离和重新附加进程在后台运行的应用程序。...$ byobu --version 然后启用 byobu,这将有助于在断开连接后保持 SSH 会话在后台运行。...$ byobu-select-backend 现在,您可以使用系统键盘功能键,在断开连接后管理和保持您的 SSH 会话在后台运行。要断开 SSH 会话,请按F6键。。...它还允许用户在断开连接后保持 SSH 会话运行。该命令通过避免信号挂起 (SIGHUP)nohup来告诉系统在后台运行所有进程。...$ disown -a 要从窗口中仅删除一个或正在运行的作业,请使用-rdiswon 的语法。 $ disown -r 对于 SSH,要在会话连接后在后台运行作业,请使用-h语法。

    5K40

    Android 后台运行白名单,优雅实现保活

    但有一部分应用,应用本身的使用场景就需要在后台运行,用户也是愿意让它在后台运行的,比如跑步类应用。...一方面流氓软件用各种流氓手段进行保活,另一方面系统加大杀后台的力度,导致我们一些真正需要在后台运行的应用被误杀,苦不堪言。 优雅保活?...对于那些确实需要在后台运行的应用,我们如何做到优雅的保活呢? 后台运行白名单 从 Android 6.0 开始,系统为了省电增加了休眠模式,系统待机一段时间后,会杀死后台正在运行的进程。...厂商后台管理 Android 开发的一个难点在于,各大手机厂商对原生系统进行了不同的定制,导致我们需要进行不同的适配,后台管理就是一个很好的体现。...几乎各个厂商都有自己的后台管理,就算应用加入了后台运行白名单,仍然可能会被厂商自己的后台管理干掉。 如果能把应用加入厂商系统的后台管理白名单,可以进一步降低进程被杀的概率。

    9.6K41

    Android12 不依赖运行时权限使用蓝牙Sco

    背景 在Android 12+上,Android添加了一个新的运行时权限BLUETOOTH_CONNECT,官方解释是 Required to be able to connect to paired...看起来要配对蓝牙就一定需要这个权限了。可是这个权限是Dangerous,这样就得弹窗申请了,有没有可能不用这个权限,依旧可以配对蓝牙。...分析 首先dumpsys 看看能否找到线索,分析音频蓝牙相关的调用就需要看 dumpsys audio, dumpsys media.metrics, 在机器上操作了下,发现的确使用了通话音量,并且也有连接...到了这儿还没有结束,对于Android12, 通过广播感知sco的连接状态也需要运行时权限,看了下对比产品,没有感知sco的连接结果,而我们的产品有这块的检测,为了保持逻辑一致,也需要想办法感知到到sco...的连接结果。

    1.5K21

    Android 连接低功耗蓝牙出现 Caught a RuntimeException from the binder stub implementation.

    正文 正文   最近在做低功耗蓝牙开发的时候突然遇到这样一个问题,出现这个情况的时候是我的一个App在Android12、和鸿蒙系统的手机上都正常的情况下,我用Android10去进行测试,然后出现这个问题...(Parcel.java:2088) at android.os.Parcel.readException(Parcel.java:2050) at android.os.Parcel.readException...at android.os.Binder.execTransactInternal(Binder.java:1028) at android.os.Binder.execTransact...(Binder.java:1001) 此时手机连接蓝牙,处于连接中,一直在连接中,新鲜出炉的Bug,得好好记录一下,并且说明一下解决过程。...关闭蓝牙重新打开,解决不了。 手机关机重启,解决了。 重启大法好,你值得拥有!

    1.7K10

    Android项目实战(二十六):蓝牙连接硬件设备开发规范流程

    前言:   最近接触蓝牙开发,主要是通过蓝牙连接获取传感器硬件设备的数据,并进行处理。   网上学习一番,现整理出一套比较标准的 操作流程代码。   ...一切都是套路~~~ 现在以一个小型项目需求来学习Android蓝牙编程 需求: 通过蓝牙获取硬件数据,并显示在一个随数据即时变化的动态折线图中。...实现思路: (1) 配对蓝牙设备   (2) 连接蓝牙设备    ,根据MAC地址,代码中修改 (3) 接收数据 (4) 处理数据          ,根据硬件厂商提供给你的数据转换公式,在BluetoothService...//默认是1,因为程序启动时首先会连接一个蓝牙 private int current_pos = 1; //hanlder消息标识 message.what public.../yScale]; //Y轴的刻度上显示字的集合 private Handler mh=new Handler(){ public void handleMessage(android.os.Message

    1.7K60
    领券