RepositorySwiftUSUnited States
TR

troystribling/BlueCap

iOS Bluetooth LE framework

716stars
109forks
8issues
1views

🚀 BlueCap: Swift hóa CoreBluetooth với giao diện Futures

BlueCap thay thế hoàn toàn giao diện protocol-delegate truyền thống của CoreBluetooth bằng một lớp trừu tượng dựa trên Futures, giúp mã nguồn gọn gàng và dễ bảo trì hơn.

BlueCap là một framework Swift mạnh mẽ dành cho phát triển ứng dụng Bluetooth Low Energy (BLE) trên iOS. Dự án được thiết kế để đơn giản hóa việc triển khai cả CentralManager và PeripheralManager thông qua giao diện lập trình hiện đại dựa trên Futures, thay thế cho các mẫu delegate phức tạp truyền thống.

✨ Điểm nổi bật

  • Giao diện Futures: Thay thế protocol implementations bằng SimpleFutures, cho phép kết nối các thao tác bất đồng bộ một cách trực quan.
  • Timeout tích hợp: Hỗ trợ thiết lập thời gian chờ cho kết nối Peripheral, quét Service, khám phá Service + Characteristic và đọc/ghi Characteristic.
  • DSL định nghĩa GATT: Cung cấp ngôn ngữ trực quan để mô tả các hồ sơ GATT tái sử dụng.
  • Serialization tích hợp: Characteristic profile types hỗ trợ mã hóa và giải mã dữ liệu tự động.
  • Ví dụ thực tế: Bao gồm ứng dụng mẫu cho cả CentralManager và PeripheralManager.
  • Scanner mở rộng: Cung cấp bộ quét và mô phỏng Peripheral đầy đủ tính năng, có sẵn trên App Store.
  • Thread-safe: Đảm bảo an toàn khi sử dụng đa luồng.
  • Kiểm thử toàn diện: Độ phủ test cao giúp đảm bảo độ tin cậy.

💡 Vì sao đáng chú ý

BlueCap khác biệt so với CoreBluetooth truyền thống ở chỗ sử dụng mô hình Futures thay vì delegate hoặc block lồng nhau. Cách tiếp cận này giúp loại bỏ việc lưu trữ trạng thái giữa các lời gọi bất đồng bộ và tránh việc phân phối logic trên nhiều tệp. Đặc biệt hữu ích cho các ứng dụng BLE phức tạp cần quản lý nhiều thiết bị và dịch vụ cùng lúc.


#Swift #BluetoothLE #CoreBluetooth #iOS #OpenSource #TiniX

Similar Projects

Discover other similar projects and AI models.

RepositorySwift
SwiftyJSON/SwiftyJSON

The better way to deal with JSON data in Swift.

22.9k
Aug 18, 2026
RepositorySwift
SwifterSwift/SwifterSwift

A handy collection of more than 500 native Swift extensions to boost your productivity.

15.2k
Oct 20, 2026
RepositorySwift
rhummelmose/BluetoothKit

Easily communicate between iOS/OSX devices using BLE

2.3k
Oct 6, 2023
RepositorySwift
Polidea/RxBluetoothKit

iOS & OSX Bluetooth library for RxSwift

1.4k
Mar 5, 2024
RepositorySwift
SnapKit/SnapKit

A Swift Autolayout DSL for iOS & OS X

20.3k
Jul 13, 2026
RepositorySwift
Carthage/Carthage

A simple, decentralized dependency manager for Cocoa

15.1k
Sep 10, 2025
RepositorySwift
xmartlabs/Eureka

Elegant iOS form builder in Swift

11.8k
Sep 12, 2024
RepositorySwift
ninjaprox/NVActivityIndicatorView

A collection of awesome loading animations

10.7k
Mar 18, 2026
RepositorySwift
Quick/Quick

The Swift (and Objective-C) testing framework.

9.8k
May 18, 2026