Sobes.tech
Intern

Si-Leer kutubxonasi nima?

sobes.tech AI

AIdan javob

Si-Leer — bu iOS ilovalarida Bluetooth Low Energy (BLE) bilan ishlash uchun kutubxona bo‘lib, u Core Bluetooth ning nativ ramkasi bilan solishtirganda yuqori darajadagi va ko‘proq abstrakt API taqdim etadi. U qurilmalarni skanerlash, ulanish, xizmatlar va xususiyatlarni aniqlash, ma'lumotlarni o‘qish va yozishni soddalashtiradi.

Si-Leer ning asosiy xususiyatlari:

  • Soddalashtirilgan API: Core Bluetooth ning murakkabligini yashiradi, kodni o‘qilishi oson va qo‘llab-quvvatlash uchun qulay qiladi.
  • Observables bilan ishlash: Reaktiv yondashuvni qo‘llaydi (odatda RxSwift yoki Combine orqali), BLE voqealari uchun ma'lumot oqimlarini taqdim etadi (topilgan qurilmalar, ulanish holati o‘zgarishlari va boshqalar).
  • Hayot aylanishini avtomatik boshqarish: Qurilmalarni ulash va uzishni, xususiyatlarga obuna bo‘lishni boshqaradi.
  • Xatoliklarni boshqarish: BLE xatoliklarini strukturali tarzda boshqarish imkonini beradi.
  • Tiplashni qo‘llab-quvvatlash: Xususiyatlar orqali uzatiladigan ma'lumotlarni tiplash imkonini beradi.

Si-Leer bilan qurilmalarni skanerlash misoli (RxSwift):

import Si_Leer // kutubxona shunday import qilinadi deb faraz qilamiz
import RxSwift
import CoreBluetooth // hali ham CBService/CBCharacteristic UUIDlari uchun zarur

let disposeBag = DisposeBag()
let centralManager = CentralManager(queue: .main) // Initsializatsiya

centralManager.scanForPeripherals(withServices: nil) // Barcha qurilmalarni skanerlash
    .subscribe(onNext: { peripheral in
        print("Topilgan qurilma: \(peripheral.peripheral.name ?? "Noma'lum")")
    }, onError: { error in
        print("Skanerlashda xato: \(error)")
    })
    .disposed(by: disposeBag)

Si-Leer BLE bilan ishlashda tushunarli va reaktiv yondashuvni talab qiladigan loyihalar uchun mos keladi, ayniqsa boshqa reaktiv ramkalar bilan birga ishlatilganda. U toza Core Bluetooth ga nisbatan boilerplate kodni kamaytiradi.