feat(sdk): 重命名 owner→brand 并在硬绑前校验设备品牌

- DuooomiBleConfig.owner → brand(语义:设备品牌名),HTTP header x-owner 不变
- bind() 前置 verifyBrand:缺 deviceInfo 先 getDeviceInfo,与 config.brand 严格匹配,不一致主动断连并抛 .brandMismatch
- README 抹除软绑/对账/UpgradeRecord 等内部实现细节,仅保留厂商面向的公开 API(功能代码完全保留)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
km2023
2026-05-09 11:51:17 +08:00
parent d5729a1a41
commit 97e5b8359a
11 changed files with 81 additions and 109 deletions

View File

@@ -6,8 +6,8 @@ public struct DuooomiBleConfig {
public let apiHost: URL
/// API keyLoomart x-api-key
public let apiKey: String
/// owner RPC `x-owner` header
public let owner: String
/// RPC `x-owner` header
public let brand: String
/// CDN `/`
public let cdnHost: String
/// ANI
@@ -22,7 +22,7 @@ public struct DuooomiBleConfig {
public init(
apiHost: URL = URL(string: "https://api.duooomi.com")!,
apiKey: String,
owner: String,
brand: String,
cdnHost: String = "https://cdn.bowong.cc/",
aniWidth: Int = 360,
aniHeight: Int = 360,
@@ -31,7 +31,7 @@ public struct DuooomiBleConfig {
) {
self.apiHost = apiHost
self.apiKey = apiKey
self.owner = owner
self.brand = brand
self.cdnHost = cdnHost.hasSuffix("/") ? cdnHost : cdnHost + "/"
self.aniWidth = aniWidth
self.aniHeight = aniHeight