Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- function
- Android
- map
- DART
- textstyle
- 다트
- variable
- python
- 파이썬
- Class
- text
- 함수
- ML
- Collection
- List
- 웹크롤러
- 플러터
- Flutter
- import
- 콜렉션
- Yocto
- 클래스
- kotlin
- 코틀린
- pushnamed
- set
- package
- animation
- crawler
- 크롤러
Archives
- Today
- Total
조용한 담장
Flutter : iOS Application Bundle 본문
원문: Flutter’s iOS Application Bundle
Flutter App 은 native view hierarchy 의 single view 에 렌더링 된다.
release 용으로 빌드하면 Frameworks directory 에 "App framework bundle" 와 "Flutter framework bundle" 이 생성된다.
- Flutter Engine framework bundle (Flutter.framework directory)
- Flutter engine : core libraries, DartVM, Skia.
- Flutter engine 이 사용하는 assets.
- AOT framework bundle (App.framework directory)
- 개발자가 작성한 모든 dart application 코드의 AOT snapshot
AOT Snapshot
The AOT snapshot library contains the ahead-of-time code compiled from Dart to machine native bits.
gen_snapshot
이 생성하는 snapshot library 의 주 심볼들:
- Dart VM Snapshot (kDartVmSnapshotData)
- Dart VM Instructions (kDartVmSnapshotInstructions)
- Isolate Snapshot (kDartIsolateSnapshotData)
- Isolate Instructions (kDartIsolateSnapshotInstructions)
gen_shopshot
은 application 의 Dart 코드에서 위 심볼들의 blob을 생성하고 Xcode 는 iOS framework bundle 에 패키징 한다.
안드로이드의 경우에는 Flutter engine 이 ELF library (libflutter.so) 로 생성되고, AOT Snapshot 심볼들은 binary blob 형태로 assets 디렉토리에 저장된다. Flutter tool 이 NDK blob 을 asset 에 포함하여 APK를 빌드하기 때문에 따로 NDK가 필요없다. Flutter engine 이 AOT binary blob 를 찾으면 메모리에 매핑한 후 실행가능한 페이지로 바꿈으로 써 Android 에서 Dart 코드가 실행이 가능하게 된다.
'Flutter' 카테고리의 다른 글
Flutter : declarative UI (0) | 2019.10.08 |
---|---|
flutter : CustomPaint (0) | 2019.10.07 |
Flutter 1.9 (0) | 2019.09.11 |
Flutter : Form (0) | 2019.09.06 |
Flutter : TextField (0) | 2019.09.06 |
Comments