안드로이드의 library repository는 Maven, ios는 cocoapods, flutter는 pub (플러터는 라이브러리 대신 패키지라 부름)
흔들기 앱
- AndroidManifest.xml에서 어플 이름 라벨 변경 가능
- 국가 고려해서 어플 이름 지정 가능
- Xcode 사용법
- 앱 아이콘 적용하기 (https://www.appicon.co/)
- 터미널이 아닌 pub 야믈에서 직접 dependencies 넣는 경우라면 다 넣고 flutter pub get 해줘야 적용됨
- 외부 라이브러리 받으면 라이센스를 확인해서 명시해줘야 함. 주의해야할 라이센스로는 GNU GPL과 Mozilla가 있음
- 보통 이런 라이브러리들은 법적 공지나 오픈소스 라이선스 탭을 별도로 마련해서 공지해둠.
- github에 오픈소스들이 보통 다 올라와 있는데 복잡한 파일구조면 autotree라는 크롬 익스텐션 추천한다 함.
- cmd del 하면 라인을 한 번에 지움.
- opt shift 방향키 하면 해당 라인 움직임.
- shift cmd a 누르면 메뉴 검색창 뜸.
- device manager 쪽의 extended control에 핸드폰을 흔들거나 움직이는 등의 여러 관련 옵션들을 설정 및 조작할 수 있음.
class _MyHomePageState extends State<MyHomePage> with WidgetsBindingObserver{...
WidgetsBinding.instance.addObserver(this);
- 라이프사이클을 적용하기 위해 WidgetsBinding이 필요함. 싱글턴(?)이기 때문에 instance 객체를 가져오고 addObserver해줌.
- addObserver한 것을 remove 시켜주는 것도 해야함 --> state가 사라졌을 때 더이상 관찰하지 않도록 끊어주는 역할 (memory leak 방지 가능).
@override
void dispose() {
WidgetsBinding.instance.removeObserver(this);
super.dispose();
}
- detector와 같은 패키지로 받은 변수는 최초 지역변수로 선언되어 전역으로 꺼내주는 작업을 함. 이럴 때 late나 nullable을 쓰게되는 것!
- lifecycle을 detecting할 필요가 없으면 widgetbinding을 통한 분기처리는 필요 없어짐. 이런 '스펙아웃' 처리는 실무에서 종종 있다 함.
- velocity x로 UI 관련 코드를 보다 간결하게 구성할 수 있음.
- ***반복되는 함수는 opt cmd m을 눌러 추출을 하여 밑으로 넣고 하나의 변수로 자동 대체해줌. 개쩖
- *** opt cmd w하면 아예 위젯으로 빼내서 다른 파일 만들고 거기에 넣으면 더 좋음.
- 상수처리된 변수는 컴파일 타임에 (앱 실행 전에) 미리 생성된 객체를 계속 사용할 수 있게 해줌.
- const가 붙지 않은 모든 클래스들은 빌드함수가 돌때마다 새로 생성이 된다고 볼 수 있는데, 이건 기존 안드로이드 개발시 성능상 낭비지만 플러터에선 위젯들이 매번 생성이 되는게 아님. 빌드함수에서 설계도를 만들고 다음 렌더러한테 넘겨주는 역할을 함. 그래서 생성이 반복되어도 화면상 다른 플랫폼 대비 성능 효율이 좋음.
- 스플래시 스크린은 native splash 패키지로 쉽게 구현할 수 있음. (pubspec과 별도 파일에 만듦)
- 색 찾을 땐 find color를 사용해서 좌측에 커서를 움직여 찾을 수 있음.
- terminal에 apk 생성 관련 세부 명령어 포함하여 길어진 명령어를 별명 지어 실행 가능 (alias 별명='명령어')
- APK(Android Package Kit)는 안드로이드 운영 체제에 애플리케이션을 배포하고 설치하는데 사용되는 파일 형식인 것.
- dependencies의 사용처를 확인하고자 하면 shift cmd f누르면 됨. 보통 쿠퍼티노 아이콘은 사용 안되는데 자동으로 설치되어 있어서 없애면 용량 아끼기 좋음.
- 지우고 빌드: flutter pub get 하면 빠짐.
3.1.1~ 2) 라이브러리 소개 및 프로젝트 세팅
3.1.3) xcode 사용법 및 언어설정, 앱 아이콘 적용
3.1.4~5) 외부 패키지와 라이센스
3.1.6) 패키지 적용, 테스트
3.1.7) 앱 라이프사이클과 그에 따른 분기처리, 에뮬레이터 이용법, break point 이용법
3.1.8) velocityX 패키지로 간결한 함수로 UI 구성 (자세하게 알려줌 은근)
3.1.9) 스플래시 스크린 만드는 방법 상세 강의
3.1.10) apk 생성 방법, 패키지 용량 확인
[Flutter] 간단 또스2 (애니메이션) (0) | 2024.04.24 |
---|---|
[Flutter] 간단 또스 (Pagination, GetX, 폴더 구조, 개발 순서) (0) | 2024.04.24 |
[Flutter] 간단 가위바위보 앱 (0) | 2024.04.23 |
[Flutter] UI, Class, Container, Setting, Widget, Theme, Page (0) | 2024.04.22 |
[Flutter] 환경설정 (0) | 2024.04.22 |