Flutter (4) 썸네일형 리스트형 [Flutter] 권한 확인 및 제어하기 이전 글에서 봤다시피 BLE 를 쓰려고 하는데, 안드로이드 기준(iOS 는 실행도 안해봄 ㅜㅜ)으로 위치권한과 주변기기 스캔 권한이 허용돼있어야 한다. 1. permission_handler 패키지 사용 또 의존해야 한다. 해당 라이브러리를 의존한다. permission_handler: ^version 부분이다. dev_dependencies: flutter_test: sdk: flutter flutter_reactive_ble: ^5.0.2 permission_handler: ^10.0.1 2. async import 사용자의 응답을 기다려야 하다보니 해당 동작은 async await 이 빠질 수 없다. await 이 쓰인 부분은 이하 코드를 진행하지 않고 기다리는데, 그러려면 쓰이는 블럭이 async.. [Flutter] BLE 스캔/연결/데이터받기(flutter_reactive_ble 사용) 하나 정확하게 짚고 넘어가겠다. 안드로이드나 IOS 네이티브처럼 플러터 플랫폼에는 정식 블루투스 패키지가 '없다' devpub 같은 곳에 올라와있는 라이브러리를 의존하는 것이 유일한 방법이다. 이 부분때문에 더 이상 플러터는 배우지 않으려고 한다. 차라리 둘 다 네이티브를 할 줄 아는 것이 시간과 돈과 퀄리티를 모두 챙길 수 있는 유일한 길이다. 다만 이 글은 누군가에게 도움될 수 있으므로 써둔다. 1. 패키지 의존성 붙이기 flutter ble package 검색해보면 추천하는 것들이 나올텐데 flutter_reactive_ble 를 선택했다. lib/pubspec.yaml 파일에 들어간다. dev_dependendies: 부분에 flutter_test: sdk: flutter 부분은 이미 써있을 것이.. [Flutter] 위젯을 컨트롤하는 방법들 이전 글에서 State 안의 레이아웃을 어떻게 잡아야 하는지 설명했다. 단말 Widget 들은 기껏해야 Text, EdgeInsets, IconButton, Icon 같은 애들이라 만져보면 금방 알 수 있다. 이제 중요한건 배치를 끝낸 후 런타임에서 동작되는 위젯을 어떻게 변경해줄지다. 가령 안드로이드에서 텍스트뷰를 상황에 따라 바꿔주려면 Activity 안에 전역변수로 선언해두고 id 를 먹여준 후 TextView.setText() 해주지 않은가? 사실 플러터에서도 비슷한데, 다른 점이 한 가지 있다. 1. 전역변수로 선언하기 처음 헤맸던게, State 의 build 메서드에 Widget 들을 주렁주렁 달고 나니까 런타임 때 Widget 에 접근할 방법이 없다는 거였다. 언어가 달라서인지 전역변수로 선.. [Flutter] 레이아웃 짜기 1. State 를 만든다 class NewState extends State { @override Widget build(BuildContext context) { return Widget(); } } 하면서 느낀거지만 Widget 은 View 와 비슷하고 State 는 모든 UI 동작이 반영된 상태를 나타내는 듯 하다 2. 자식을 가지는 Widget 플러터 사이트에서도 소개하듯이 '모든것은 Widget'이다. 그리고 내 생각에 Widget 은 두 개로 분류된다. 자식을 가지는가 아닌가. 자식을 가지는 건 안드로이드의 ViewGroup 이라 할 수 있을 것이고 안 가진다면 TextView 같은 단말 View 이리라. 2-1) Container 생성자를 확인하면 가장 간편하다. 컨테이너는 하나의 자식을 .. 이전 1 다음