ble: 일반 사용자는 KnownDeviceStore 저장 0개 + 펌웨어 미수신 경고
다중 기기 페어링 저장은 Clinical 흐름 전용. 일반 사용자는 매 세션 fresh scan + pair — 저장 기능 자체 미노출. - BleManager.connect 성공 시: ClinicalSessionStore.inClinicalFlow 체크 → false 면 KnownDeviceStore.add() skip - DeviceScanView: 같은 조건으로 Saved Devices 섹션 노출 X. knownDevices = emptyList() → 기존 단일 디바이스 리스트 UX + FirmwareWarningBanner 케이스 추가: 연결 후 8초간 mid? 응답 미수신 → 빨강 경고 "펌웨어 응답 없음 — 펌웨어 호환 문제 가능" 사용자가 정확한 원인 파악 가능 (구버전 != 응답 자체 안 옴).
This commit is contained in:
@@ -869,11 +869,15 @@ class BleManager private constructor(private val context: Context) {
|
||||
cancelReconnectTimer()
|
||||
debugLogger.connected(connectedDeviceName.value, gatt.device.address)
|
||||
|
||||
try {
|
||||
com.example.medilightv2android.services.KnownDeviceStore.add(
|
||||
context, gatt.device.address, connectedDeviceName.value
|
||||
)
|
||||
} catch (_: Exception) {}
|
||||
// Clinical 흐름에서만 KnownDeviceStore 영속화. 일반 사용자는
|
||||
// 매 세션 fresh scan + pair — 저장 0개.
|
||||
if (com.example.medilightv2android.services.ClinicalSessionStore.inClinicalFlow) {
|
||||
try {
|
||||
com.example.medilightv2android.services.KnownDeviceStore.add(
|
||||
context, gatt.device.address, connectedDeviceName.value
|
||||
)
|
||||
} catch (_: Exception) {}
|
||||
}
|
||||
|
||||
// MTU 247 요청 (reb: 208B 패킷 드롭 방지)
|
||||
// onMtuChanged 콜백에서 discoverServices 호출
|
||||
|
||||
Reference in New Issue
Block a user