목록전체 글 (366)
seong
Flutter는 기본적으로 단일 스레드(UI Thread)방식으로 동작하기 때문에 Backgroud, Foreground 작업을 하기 위해선 다른 Thread 사용 해주어야한다. Foreground도 결국 코드를 보면 Port를 열어서 UI스레드와 통신을 하는 방식이다.그래서 Port를 초기화 시켜주어야 하는데, 이걸 라이브러리에서 initCommunicationPort 함수로 편하게 할 수있다.1. Main함수에서 데이터 송수신 하기 위해 Port를 초기화 // 1. Main에서 Foreground와 통신이 가능한 Port 초기화 main() { WidgetsBinding widgetsBinding = WidgetsFlutterBinding.ensureInitialized(); Flutter..
https://pub.dev/packages/flutter_staggered_animations flutter_staggered_animations | Flutter packageEasily add staggered animations to your ListView, GridView, Column and Row children as shown in Material Design guidelinespub.dev적용 할 애니메이션 최초 빌드 시 ListView, 버튼 클릭 할 때 마다 GridView ListView 각 애니메이션이 바뀌게.적용 하면서 알게 된 사항 - 위젯이 빌드 시 처음 렌더링 될 때만 애니메이션이 적용 된다, 즉 + 버튼을 눌러 ListView와 GridView를 전환할 때 애니메이션..
발생한 에러Writing result bundle at path: /var/folders/_y/wm04fckd03z_b6prg9phrfq00000gn/T/flutter_tools.RnkvNF/flutter_ios_build_temp_dir1VI1tl/temporary_xcresult_bundle /Users/ihyeonseong/.pub-cache/hosted/pub.dev/url_launcher_ios-6.2.4/ios/Classes/Launcher.swift:20:1: error: type 'UIApplication' does not conform to protocol 'Launcher' extension UIApplication: Launcher {} ^ UIKit.UI..
전화 화면 기능 및 전화기능을 내가 만든 앱으로 변경 할 수 있다.보통은 Native기능( Kotlin,Swift ) 로 개발하면 좋겠지만 Flutter에서 한번에 지원해주는 라이브러리가 있어서 우선 사용. 사용 라이브러리 : Flutter_callkit_incoming- Stream_io 에서 만들어서 지원해주는 패키지이다.어느정도 신뢰성이 있어서 일단 사용 해보기로 결정https://pub.dev/packages/flutter_callkit_incoming flutter_callkit_incoming | Flutter packageFlutter Callkit Incoming to show callkit screen in your Flutter app.pub.dev1. 필요 라이브러리 추가 pubspe..
Android에서 뒤로가기 버튼 클릭시 앱을 종료 하는게 아니라, 백그라운드에서 계속 실행 해둬야 하는 경우가 생길 수 있다.이때 Android에서 moveTaskToBack이라는 함수가 있어서, 메서드 채널로 구현할 수 있다.1. PopScope로 뒤로가기를 감지 하고, 함수에서 더블 클릭 시 메서드 채널로 요청PopScope( canPop: false, onPopInvoked: (bool didPop) { onWillPop(); }, child:Scaffold(); );Future onWillPop() async { DateTime now = DateTime.now(); if (backPressTime == null || now.differenc..
사용 라이브러리 https://pub.dev/packages/permission_handler permission_handler | Flutter packagePermission plugin for Flutter. This plugin provides a cross-platform (iOS, Android) API to request and check permissions.pub.dev 1. pubspec.yaml 라이브러리 추가dependencies: flutter: sdk: flutter permission_handler: ^11.3.1 cupertino_icons: ^1.0.62. 라이브러리 설명서 대로 ios/Podfile에 아래 코드 추가 - 사용 해야할 권한을 주석을 풀어주고 0 ..
전제 조건- BottomNav의 총 index는 4개 BottomNav의 index가 총 4개, 관리 해야할 scroll이 4개이므로 ScrollController을 List로 선언 import 'package:flutter/material.dart';import 'package:flutter_riverpod/flutter_riverpod.dart';final scrollControllersProvider = StateNotifierProvider>( (ref) { return ScrollControllerNotifier();});class ScrollControllerNotifier extends StateNotifier> { ScrollControllerNotifier() ..
Mac 기준 Android Studio -> Settings -> Editor -> Live Templates -> 사용할 프레임워크나, 언어 선택이미지는 Flutter의 debugPrint 생성 왼쪽위의 "+" 버튼으로 생성 후 Apply, Ok 버튼 클릭- Abbreviation : 내가 사용할 줄임 키워드 ex) dp를 입력하면 Template Text가 생성된다.- Description : 설명- Template text : Abbreviation을 입력했을 때 나올 구문 입력결과dp 입력 시 자동 완성에 설정한 debugPrint값이 나온다.