블루투스의 의도하지 않은 연결 해제 후, 다른 장비와 연결이 안될 때
회사에서 Flutter로 개발한 앱과 근전도 장비는 블루투스(BLE)로 연결한다. 사용하는 BLE 라이브러리는 Flutter_Reactive_Ble 이다. 근전도 장비가 정전기나 베터리 고갈로 꺼질 경우 앱에서는 의도하지 않은 연결해제(Unintended disconnection)가 발생한다. iOS 의 경우 문제가 없이 잘 동작하지만, Android 에서는 문제가 있다. 다른 장비와 연결을 시도하면 연결이 되지 않고, 기존에 연결되었었던 장비하고만 연결이 가능하다. 우리 앱의 경우, 장비 끄기 버튼이 있는데 이 버튼을 누르면 블루투스 메시지로 장비를 꺼라는 명령을 보내고 이를 수신한 장비는 전원을 끄게 된다. 이러면 장비는 이미 꺼져있기 때문에 이후 실행되는 disconnect 명령을 OS에 보내도 장..
Dart & Flutter/Error 해결 정리
2024. 3. 21. 14:06
Singletone Pattern
패턴책을 볼때 알게된 Singletone. 플러터를 이용해 Bluetooth를 연결하기 위해서 코딩하는 중에 마주쳤다. 현재 Bluetooth를 사용하기 위한 라이브러리로 flutter_blue_plus를 사용하고 있는데 여기서 클래스 정의 내부를 보면 아래와 같이 singletone 이다. 핸드폰에 Bluetooth 모듈이 하나가 있기 때문에, 하나의 instance 만 가지고 있어야 해서 그렇다. 비슷한 방식으로 아래처럼 get 대신에 factory를 이용할 수 도 있다. 결과를 보면 singletone 프린트문은 한번만 실행됬고, a 와 b는 같은 클래스 인스턴스를 가지고 있는 것을 볼 수 있다.
Dart & Flutter/궁금했던 것, 몰랐던 것
2022. 5. 27. 08:53
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- hide
- Chrome
- 앱개발
- firebase
- plugin
- position
- 다트
- DART
- Bluetooth
- UI
- 인사이트
- error
- 한빛미디어
- Syncfusion
- BLE
- addPostFrameCallback
- 앱 프로그래밍
- SizedBox
- 이미지
- TextField
- 문제 해결
- Flutter
- 크롬
- UX
- IOS
- 플러터
- 에러
- TextFormField
- 앱
- 디자인
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함