iOS 藍牙打印小票

前言:

最近做了款藍牙打印的功能,包含藍牙自動連接,藍牙搜索,連接之后進行打印??偨Y(jié)了下知識點,寫了一個簡單的Demo,對系統(tǒng)的<CoreBluetooth/CoreBluetooth.h>進行二次封裝,避免一大推的代理調(diào)用。使用方法:

pod 方法 : ? ? ? ? ? ?pod 'JWBluetoothPrinte'

github地址: ?https://github.com/kafeidou1991/JWBluetoothPrinte

給大家分享下。有什么錯誤的話希望大神們給我留言或者QQ(38251725)我,及時指正,避免誤導小伙伴們,謝謝。

1.導入工程文件

首先我們要知道手機藍牙簡單的工作流程,我們怎么才能實現(xiàn)打印功能呢?下面我說下自己的見解。流程如下:判斷藍牙是否打開-->搜索藍牙設(shè)備-->連接藍牙設(shè)備-->掃描藍牙服務(wù)-->搜索服務(wù)特性-如果有打印特性 即可實現(xiàn)打印。話不多少直接上代碼。使用方法:使用pod? 或者 手動添加 <JWBluetoothPrinte>庫地址也可,在使用的地方導入“#import"JWBluetoothManage.h"”頭文件即可。


帶入頭文件

2.搜索藍牙設(shè)備列表

搜索到的藍牙設(shè)備列表

搜索結(jié)果里面有兩個數(shù)組返回,peripherals是存放所有搜索到的藍牙設(shè)備數(shù)組,rssis是對應(yīng)藍牙設(shè)備的信號強度數(shù)組,如果不需要 不關(guān)心即可。里面的大致流程就是:調(diào)用系統(tǒng)的廣播功能,進行搜索設(shè)備。

3.連接藍牙

1>自動連接上次連接的設(shè)備。


自動連接

當連接一次之后,會將藍牙設(shè)備的唯一標識符記錄在本地,然后在藍牙設(shè)備列表中匹配,如果存在就連接,沒有就不連接。

2>手動連接


手動連接

手動連接藍牙,和自動連接沒什么區(qū)別。

4.連接成功搜索服務(wù),特性

設(shè)備連接藍牙成功之后會啟動搜索服務(wù)階段,搜索到服務(wù)之后會繼續(xù)搜索藍牙設(shè)備特性屬性。


服務(wù)、特性屬性

要知道,只有符合CBCharacteristicPropertyWrite 支持寫入的設(shè)備才能進行打印操作,否則是不支持打印功能的。當搜索到可寫入屬性的時候之后,這邊可以進行打印操作了。

5.打印功能


打印數(shù)據(jù)

創(chuàng)建一個打印的helper,里面的屬性可以詳細閱讀API,支持換行 文字,二維碼生成,圖片打印等等。


打印小票結(jié)果

好了,希望能夠幫到需要做藍牙的開發(fā)者,后續(xù)會考慮更新些東西。有什么錯誤或者問題,希望能夠指正,QQ:38251725

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 藍牙簡介 藍牙( Bluetooth? ):是一種無線技術(shù)標準,可實現(xiàn)固定設(shè)備、移動設(shè)備和樓宇個人域網(wǎng)之間的短距離...
    Chefil閱讀 2,173評論 2 19
  • Guide to BluetoothSecurity原文 本出版物可免費從以下網(wǎng)址獲得:https://doi.o...
    公子小水閱讀 8,798評論 0 6
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,704評論 4 61
  • 最近搞了個藍牙打印小票的小東西,先上效果 數(shù)據(jù)格式 json: 使用: 話不多說上Demo:GitHub地址
    就是很隨意哦閱讀 1,645評論 1 4
  • 最近競品公司出了一個接入藍牙打印機的功能,作為競爭對手公司肯定不能少所以就給我分了任務(wù),搞定藍牙打印機 首先介紹一...
    呆北默閱讀 3,565評論 12 10

友情鏈接更多精彩內(nèi)容