├── .flutter-plugins-dependencies
├── .gitignore
├── .metadata
├── README.md
├── android
├── app
│ ├── build.gradle
│ └── src
│ │ ├── debug
│ │ └── AndroidManifest.xml
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── flutter_demo
│ │ │ │ ├── App.java
│ │ │ │ ├── LauncherActivity.java
│ │ │ │ └── MainActivity.java
│ │ └── res
│ │ │ ├── drawable
│ │ │ └── launch_background.xml
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ └── ic_launcher.png
│ │ │ └── values
│ │ │ └── styles.xml
│ │ └── profile
│ │ └── AndroidManifest.xml
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ └── gradle-wrapper.properties
├── settings.gradle
└── settings_aar.gradle
├── external_texture_plugin
├── .gitignore
├── .metadata
├── CHANGELOG.md
├── LICENSE
├── README.md
├── android
│ ├── .gitignore
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ └── gradle-wrapper.properties
│ ├── settings.gradle
│ └── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ └── java
│ │ └── com
│ │ └── julyyu
│ │ └── external_texture_plugin
│ │ ├── ExternalTexturePlugin.java
│ │ ├── ExternaltexturepluginPlugintt.kt
│ │ ├── SurfaceTextureFactory.java
│ │ ├── SurfaceTextureInfoEntity.java
│ │ └── cache
│ │ └── TextureLruCache.java
├── example
│ ├── .gitignore
│ ├── .metadata
│ ├── README.md
│ ├── android
│ │ ├── .gitignore
│ │ ├── app
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ │ ├── debug
│ │ │ │ └── AndroidManifest.xml
│ │ │ │ ├── main
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ ├── kotlin
│ │ │ │ │ └── com
│ │ │ │ │ │ └── julyyu
│ │ │ │ │ │ └── externaltextureplugin_example
│ │ │ │ │ │ └── MainActivity.kt
│ │ │ │ └── res
│ │ │ │ │ ├── drawable
│ │ │ │ │ └── launch_background.xml
│ │ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ └── values
│ │ │ │ │ └── styles.xml
│ │ │ │ └── profile
│ │ │ │ └── AndroidManifest.xml
│ │ ├── build.gradle
│ │ ├── gradle.properties
│ │ ├── gradle
│ │ │ └── wrapper
│ │ │ │ └── gradle-wrapper.properties
│ │ └── settings.gradle
│ ├── ios
│ │ ├── .gitignore
│ │ ├── Flutter
│ │ │ ├── AppFrameworkInfo.plist
│ │ │ ├── Debug.xcconfig
│ │ │ └── Release.xcconfig
│ │ ├── Podfile
│ │ ├── Runner.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ ├── project.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ └── Runner.xcscheme
│ │ ├── Runner.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ └── WorkspaceSettings.xcsettings
│ │ └── Runner
│ │ │ ├── AppDelegate.swift
│ │ │ ├── Assets.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ │ └── LaunchImage.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── LaunchImage.png
│ │ │ │ ├── LaunchImage@2x.png
│ │ │ │ ├── LaunchImage@3x.png
│ │ │ │ └── README.md
│ │ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.storyboard
│ │ │ └── Main.storyboard
│ │ │ ├── Info.plist
│ │ │ └── Runner-Bridging-Header.h
│ ├── lib
│ │ ├── demo
│ │ │ ├── NetworkImageWithoutAuth.dart
│ │ │ ├── fade_in_iamge.dart
│ │ │ ├── flutter_image_list_demo.dart
│ │ │ ├── image_list_demo.dart
│ │ │ ├── mock.dart
│ │ │ ├── texture_grid_demo.dart
│ │ │ ├── texture_image_widget.dart
│ │ │ ├── texture_list_demo.dart
│ │ │ ├── texture_main_demo.dart
│ │ │ ├── texture_single_demo.dart
│ │ │ ├── texture_single_external_demo.dart
│ │ │ └── texture_style_external_demo.dart
│ │ └── main.dart
│ ├── pubspec.lock
│ ├── pubspec.yaml
│ ├── res
│ │ └── img
│ │ │ └── jay.jpg
│ └── test
│ │ └── widget_test.dart
├── ios
│ ├── .gitignore
│ ├── Assets
│ │ └── .gitkeep
│ ├── Classes
│ │ ├── ExternaltexturepluginPlugin.h
│ │ ├── ExternaltexturepluginPlugin.m
│ │ └── SwiftExternaltexturepluginPlugin.swift
│ └── externaltextureplugin.podspec
├── lib
│ └── external_texture_plugin.dart
├── pubspec.lock
├── pubspec.yaml
└── test
│ └── externaltextureplugin_test.dart
├── flutter_annotation
├── .gitignore
├── .metadata
├── CHANGELOG.md
├── LICENSE
├── README.md
├── annotation_sample
│ ├── .gitignore
│ ├── .metadata
│ ├── README.md
│ ├── android
│ │ ├── .gitignore
│ │ ├── app
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ │ ├── debug
│ │ │ │ └── AndroidManifest.xml
│ │ │ │ ├── main
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ ├── kotlin
│ │ │ │ │ └── com
│ │ │ │ │ │ └── example
│ │ │ │ │ │ └── annotation_sample
│ │ │ │ │ │ └── MainActivity.kt
│ │ │ │ └── res
│ │ │ │ │ ├── drawable-v21
│ │ │ │ │ └── launch_background.xml
│ │ │ │ │ ├── drawable
│ │ │ │ │ └── launch_background.xml
│ │ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── values-night
│ │ │ │ │ └── styles.xml
│ │ │ │ │ └── values
│ │ │ │ │ └── styles.xml
│ │ │ │ └── profile
│ │ │ │ └── AndroidManifest.xml
│ │ ├── build.gradle
│ │ ├── gradle.properties
│ │ ├── gradle
│ │ │ └── wrapper
│ │ │ │ └── gradle-wrapper.properties
│ │ └── settings.gradle
│ ├── ios
│ │ ├── .gitignore
│ │ ├── Flutter
│ │ │ ├── AppFrameworkInfo.plist
│ │ │ ├── Debug.xcconfig
│ │ │ └── Release.xcconfig
│ │ ├── Runner.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ ├── project.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcshareddata
│ │ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ │ └── WorkspaceSettings.xcsettings
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ └── Runner.xcscheme
│ │ ├── Runner.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ │ └── WorkspaceSettings.xcsettings
│ │ └── Runner
│ │ │ ├── AppDelegate.swift
│ │ │ ├── Assets.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ │ └── LaunchImage.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── LaunchImage.png
│ │ │ │ ├── LaunchImage@2x.png
│ │ │ │ ├── LaunchImage@3x.png
│ │ │ │ └── README.md
│ │ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.storyboard
│ │ │ └── Main.storyboard
│ │ │ ├── Info.plist
│ │ │ └── Runner-Bridging-Header.h
│ ├── lib
│ │ ├── main.dart
│ │ ├── mark_demo.dart
│ │ ├── mark_demo.mark.dart
│ │ ├── widget_demo.dart
│ │ └── widget_demo.widget.dart
│ ├── pubspec.lock
│ └── pubspec.yaml
├── build.yaml
├── lib
│ ├── builder.dart
│ ├── generator.dart
│ └── mark.dart
├── pubspec.lock
└── pubspec.yaml
├── flutter_app_plugin
├── .gitignore
├── .metadata
├── CHANGELOG.md
├── LICENSE
├── README.md
├── android
│ ├── .gitignore
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ └── gradle-wrapper.properties
│ ├── res
│ │ └── values
│ │ │ └── strings_en.arb
│ ├── settings.gradle
│ └── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── hjapp
│ │ │ ├── flutter_app_plugin
│ │ │ └── FlutterAppPlugin.java
│ │ │ └── ui
│ │ │ └── activity
│ │ │ ├── MessengerActivity.java
│ │ │ └── WebActivity.java
│ │ └── res
│ │ ├── drawable
│ │ └── jay.jpg
│ │ └── values
│ │ ├── colors.xml
│ │ └── styles.xml
├── example
│ ├── .flutter-plugins-dependencies
│ ├── .gitignore
│ ├── .metadata
│ ├── README.md
│ ├── android
│ │ ├── app
│ │ │ ├── build.gradle
│ │ │ └── src
│ │ │ │ ├── debug
│ │ │ │ └── AndroidManifest.xml
│ │ │ │ ├── main
│ │ │ │ ├── AndroidManifest.xml
│ │ │ │ ├── java
│ │ │ │ │ └── com
│ │ │ │ │ │ └── hjapp
│ │ │ │ │ │ └── flutter_app_plugin_example
│ │ │ │ │ │ └── MainActivity.java
│ │ │ │ └── res
│ │ │ │ │ ├── drawable
│ │ │ │ │ └── launch_background.xml
│ │ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ │ └── values
│ │ │ │ │ └── styles.xml
│ │ │ │ └── profile
│ │ │ │ └── AndroidManifest.xml
│ │ ├── build.gradle
│ │ ├── gradle.properties
│ │ ├── gradle
│ │ │ └── wrapper
│ │ │ │ └── gradle-wrapper.properties
│ │ └── settings.gradle
│ ├── ios
│ │ ├── Flutter
│ │ │ ├── AppFrameworkInfo.plist
│ │ │ ├── Debug.xcconfig
│ │ │ └── Release.xcconfig
│ │ ├── Podfile
│ │ ├── Runner.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ ├── project.xcworkspace
│ │ │ │ └── contents.xcworkspacedata
│ │ │ └── xcshareddata
│ │ │ │ └── xcschemes
│ │ │ │ └── Runner.xcscheme
│ │ ├── Runner.xcworkspace
│ │ │ └── contents.xcworkspacedata
│ │ └── Runner
│ │ │ ├── AppDelegate.h
│ │ │ ├── AppDelegate.m
│ │ │ ├── Assets.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ │ └── LaunchImage.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── LaunchImage.png
│ │ │ │ ├── LaunchImage@2x.png
│ │ │ │ ├── LaunchImage@3x.png
│ │ │ │ └── README.md
│ │ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.storyboard
│ │ │ └── Main.storyboard
│ │ │ ├── Info.plist
│ │ │ └── main.m
│ ├── lib
│ │ └── main.dart
│ ├── pubspec.lock
│ └── pubspec.yaml
├── ios
│ ├── .gitignore
│ ├── Assets
│ │ └── .gitkeep
│ ├── Classes
│ │ ├── FlutterAppPlugin.h
│ │ └── FlutterAppPlugin.m
│ └── flutter_app_plugin.podspec
├── lib
│ ├── flutter_app_plugin.dart
│ └── generated
│ │ └── i18n.dart
├── pubspec.lock
├── pubspec.yaml
├── res
│ └── values
│ │ └── strings_en.arb
└── test
│ └── flutter_app_plugin_test.dart
├── flutter_dev_package
├── .gitignore
├── .metadata
├── CHANGELOG.md
├── LICENSE
├── README.md
├── lib
│ ├── TestWidget.dart
│ ├── debug_widget.dart
│ └── flutterdevpackage.dart
├── pubspec.lock
├── pubspec.yaml
└── test
│ └── flutterdevpackage_test.dart
├── flutter_release_package
├── .gitignore
├── .metadata
├── CHANGELOG.md
├── LICENSE
├── README.md
├── lib
│ ├── TestWidget.dart
│ ├── TestWidget2.dart
│ ├── debug_widget.dart
│ └── flutterreleasepackage.dart
├── pubspec.lock
├── pubspec.yaml
└── test
│ └── flutterreleasepackage_test.dart
├── flutter_template
├── .gitignore
├── .metadata
├── CHANGELOG.md
├── LICENSE
├── README.md
├── lib
│ ├── flutter_temple.dart
│ └── src
│ │ ├── net
│ │ └── h_net_client.dart
│ │ ├── utils
│ │ ├── h_date_util.dart
│ │ └── h_dialog_util.dart
│ │ └── widgets
│ │ ├── h_bottom_nav_page.dart
│ │ ├── h_loading_view.dart
│ │ └── j_container.dart
├── pubspec.lock
└── pubspec.yaml
├── images
├── 1.png
├── 2.png
├── 3.png
├── bg0.jpeg
├── bg1.jpeg
├── bg2.jpeg
├── bg3.jpeg
├── bigimage.jpeg
├── bigimage.webp
├── gif_player_demo.gif
├── gif_player_one.gif
├── ic_love_gif.gif
├── ic_love_gif.webp
├── icon_left_sliver.png
├── p1.jpeg
├── p2.jpeg
├── p3.jpeg
├── p4.jpeg
├── p5.jpeg
└── res
│ ├── wa1.png
│ ├── wa2.png
│ ├── wa3.png
│ ├── wa4.png
│ ├── wa5.png
│ ├── wa6.png
│ └── wa7.png
├── ios
├── Flutter
│ ├── AppFrameworkInfo.plist
│ ├── Debug.xcconfig
│ └── Release.xcconfig
├── Podfile
├── Podfile.lock
├── Runner.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ └── contents.xcworkspacedata
│ └── xcshareddata
│ │ └── xcschemes
│ │ └── Runner.xcscheme
├── Runner.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ │ └── IDEWorkspaceChecks.plist
└── Runner
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ ├── AppIcon.appiconset
│ │ ├── Contents.json
│ │ ├── Icon-App-1024x1024@1x.png
│ │ ├── Icon-App-20x20@1x.png
│ │ ├── Icon-App-20x20@2x.png
│ │ ├── Icon-App-20x20@3x.png
│ │ ├── Icon-App-29x29@1x.png
│ │ ├── Icon-App-29x29@2x.png
│ │ ├── Icon-App-29x29@3x.png
│ │ ├── Icon-App-40x40@1x.png
│ │ ├── Icon-App-40x40@2x.png
│ │ ├── Icon-App-40x40@3x.png
│ │ ├── Icon-App-60x60@2x.png
│ │ ├── Icon-App-60x60@3x.png
│ │ ├── Icon-App-76x76@1x.png
│ │ ├── Icon-App-76x76@2x.png
│ │ └── Icon-App-83.5x83.5@2x.png
│ └── LaunchImage.imageset
│ │ ├── Contents.json
│ │ ├── LaunchImage.png
│ │ ├── LaunchImage@2x.png
│ │ ├── LaunchImage@3x.png
│ │ └── README.md
│ ├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
│ ├── Info.plist
│ └── main.m
├── lib
├── base
│ └── base_widget_ui.dart
├── contents
│ └── widget.dart
├── demo
│ ├── animation
│ │ ├── animatedBuilder_demo.dart
│ │ ├── animatedContainer_demo.dart
│ │ ├── animatedWidget_demo.dart
│ │ ├── animationController_demo.dart
│ │ ├── animation_demo.dart
│ │ └── animation_live_demo.dart
│ ├── appbar
│ │ └── sliver_appbar_demo.dart
│ ├── crash
│ │ └── crash_demo.dart
│ ├── dart
│ │ ├── async_demo.dart
│ │ ├── isolate_demo.dart
│ │ ├── plugin_channel_demo.dart
│ │ ├── stream_demo.dart
│ │ ├── timer_demo.dart
│ │ └── zone_demo.dart
│ ├── drawer
│ │ ├── drag_drawer_demo.dart
│ │ ├── drag_drawer_view.dart
│ │ └── gesture_drag_drawerx.dart
│ ├── flip
│ │ ├── flip_demo.dart
│ │ └── flip_num_text.dart
│ ├── floatbox
│ │ ├── app_float_box.dart
│ │ ├── float_dragable_demo.dart
│ │ ├── float_overlay_demo.dart
│ │ └── float_stack_demo.dart
│ ├── gesture
│ │ ├── gestrue_scale_demo1.dart
│ │ ├── gestrue_scale_demo2.dart
│ │ ├── gesture_click_demo.dart
│ │ ├── gesture_drag_demo.dart
│ │ └── gesture_scale_demo.dart
│ ├── lifecycle
│ │ ├── statefullifecycle_demo.dart
│ │ └── statelessLifecycle_demo.dart
│ ├── pageview
│ │ ├── costom_page_view.dart
│ │ ├── pageview_demo.dart
│ │ ├── pageview_demo2.dart
│ │ ├── pageview_demo3.dart
│ │ ├── pageview_demo4.dart
│ │ ├── pageview_demo5.dart
│ │ ├── pageview_demo6.dart
│ │ └── paging_scroll_physics.dart
│ ├── painter
│ │ ├── canvas_douyin_demo.dart
│ │ └── painter_demo.dart
│ ├── router
│ │ ├── router_ani_demo.dart
│ │ ├── router_data_demo.dart
│ │ └── router_demo.dart
│ ├── scroll
│ │ └── scroll_demo.dart
│ ├── sliver
│ │ ├── sliver_demo.dart
│ │ ├── sliver_tabbar_demo.dart
│ │ ├── sliver_tabbar_demo2.dart
│ │ └── sliver_tabbar_demo3.dart
│ ├── tabbar
│ │ ├── custom_tab.dart
│ │ ├── dynamic_page.dart
│ │ ├── no_gradient_tabbarx.dart
│ │ ├── no_gradient_tabbarxx.dart
│ │ ├── no_tabbar.dart
│ │ ├── tabbar_demo1.dart
│ │ ├── tabbar_demo11.dart
│ │ ├── tabbar_demo111.dart
│ │ ├── tabbar_demo2.dart
│ │ ├── tabbar_demo3.dart
│ │ ├── tabbar_demo_page.dart
│ │ ├── tabbar_demox11.dart
│ │ ├── tabs.dart
│ │ ├── underLineIndicator.dart
│ │ ├── under_line_indicatorx.dart
│ │ ├── under_line_indicatorxx.dart
│ │ └── under_liner_normal.dart
│ ├── text
│ │ ├── text_demo1.dart
│ │ └── text_demo2.dart
│ ├── texture
│ │ ├── flutter_image_demo.dart
│ │ ├── mock.dart
│ │ ├── texture_grid_demo.dart
│ │ ├── texture_image_widget.dart
│ │ ├── texture_list_demo.dart
│ │ ├── texture_main_demo.dart
│ │ ├── texture_single_demo.dart
│ │ └── texture_single_external_demo.dart
│ └── video
│ │ └── video_demo.dart
├── demo_page.dart
├── home_page.dart
├── magic
│ ├── animation
│ │ ├── README.md
│ │ ├── j_animation_controller.dart
│ │ ├── j_animation_info.dart
│ │ ├── j_animation_widget.dart
│ │ ├── super_animation.dart
│ │ └── test_animation_demo.dart
│ ├── animation_group
│ │ ├── animations.dart
│ │ ├── manager
│ │ │ ├── animation_driver.dart
│ │ │ └── animation_manager.dart
│ │ ├── parameter
│ │ │ ├── animation_group.dart
│ │ │ └── animation_part.dart
│ │ └── widget
│ │ │ └── animation_group_widget.dart
│ ├── diy_color_box.dart
│ ├── diy_flexible_space_widget.dart
│ ├── diy_flexible_top_header.dart
│ ├── diy_refresh.dart
│ ├── diy_scroll_physics.dart
│ ├── diy_sliver_border.dart
│ ├── diy_sliver_customer.dart
│ ├── diy_sliver_header.dart
│ ├── diy_tab_controller.dart
│ ├── diy_tabs.dart
│ ├── diy_transformer_background_widget.dart
│ ├── diy_wrap.dart
│ ├── gif_image.dart
│ ├── loadmore
│ │ ├── magic_activity_indicator.dart
│ │ └── magic_loadmore.dart
│ ├── refresh
│ │ ├── magic_activity_indicator.dart
│ │ ├── magic_refresh.dart
│ │ └── magic_refresh2.dart
│ ├── scrollview
│ │ └── magic_nested_scroll_view.dart
│ ├── side_pull_indicator.dart
│ ├── sliver
│ │ ├── magic_app_bar.dart
│ │ └── magic_flexible_space_bar.dart
│ ├── sprite
│ │ └── sprite_image.dart
│ └── tab
│ │ ├── magic_tab_indicator.dart
│ │ └── magic_tabs.dart
├── main.dart
├── mock
│ └── img_mock.dart
├── other
│ ├── debug_channle_demo.dart
│ ├── debug_import.dart
│ ├── debug_list_list_demo.dart
│ ├── dependy_widget_demo.dart
│ └── mockdouyin
│ │ └── mock_douyin_page.dart
├── page
│ ├── common
│ │ └── common.dart
│ ├── dart
│ │ ├── future_wait_demo.dart
│ │ ├── list_demo.dart
│ │ ├── map_demo.dart
│ │ └── stream_demo.dart
│ ├── dev
│ │ ├── bar_snap_demo.dart
│ │ ├── clippath_image_shape_demo.dart
│ │ ├── complex_page_demo2.dart
│ │ ├── crash_demo.dart
│ │ ├── diy_scroll_demo.dart
│ │ ├── flex_tabbar_page_demo1
│ │ │ ├── complex_page_demo1.dart
│ │ │ ├── simple_tab_bar_page.dart
│ │ │ └── sub_tab_list_page.dart
│ │ ├── floatingframe
│ │ │ ├── app_float_box.dart
│ │ │ ├── float_dragable_demo.dart
│ │ │ ├── float_overlay_demo.dart
│ │ │ └── float_stack_demo.dart
│ │ ├── gif_play_one_bug_demo.dart
│ │ ├── gif_player_demo.dart
│ │ ├── horizontal_wrap_barrage_demo.dart
│ │ ├── image_combined_animation_demo.dart
│ │ ├── list_jump_init_demo.dart
│ │ ├── list_scrool_change_demo.dart
│ │ ├── native_demo.dart
│ │ ├── navigator_router_demo.dart
│ │ ├── nestedscroll_page_demo.dart
│ │ ├── nestedscroll_tabbar_list_demo.dart
│ │ ├── one_line_warp_demo.dart
│ │ ├── page_cache_demo.dart
│ │ ├── reuse_key_list_demo.dart
│ │ ├── row_text_with_icon_demo.dart
│ │ ├── scale_widget_demo.dart
│ │ ├── secondfloor
│ │ │ ├── floor_refresh.dart
│ │ │ └── refresh_keep_second_floor_demo.dart
│ │ ├── side_pull_demo.dart
│ │ ├── sliver_border_demo.dart
│ │ ├── sliver_customer_demo.dart
│ │ ├── sliver_refresh_demo.dart
│ │ ├── tabbar_add_jump_demo.dart
│ │ ├── tabbar_switch_demo.dart
│ │ ├── textField_focus_demo.dart
│ │ ├── text_chinese_english_demo.dart
│ │ └── webp_bug_demo.dart
│ ├── diy
│ │ ├── appbar
│ │ │ └── custom_app_bar_demo.dart
│ │ ├── carousel
│ │ │ ├── carousel.dart
│ │ │ └── carousel_demo.dart
│ │ ├── circlelist
│ │ │ ├── CircleList.dart
│ │ │ ├── RadialDragGestureDetector.dart
│ │ │ ├── circle_list_demo.dart
│ │ │ └── other
│ │ │ │ ├── circle_3d_list.dart
│ │ │ │ └── radialdrag_gesturedetector.dart
│ │ ├── download
│ │ │ ├── download_container.dart
│ │ │ ├── download_controller.dart
│ │ │ ├── download_demo.dart
│ │ │ ├── download_manager.dart
│ │ │ ├── encrypt_utils.dart
│ │ │ ├── file_utils.dart
│ │ │ ├── unzip_container.dart
│ │ │ └── unzip_mamager.dart
│ │ ├── draggridview
│ │ │ └── diy_drag_gridview_demo.dart
│ │ ├── draglistview
│ │ │ ├── DIYReorderableListView.dart
│ │ │ ├── SliverReorderGridView.dart
│ │ │ ├── SliverReorderListView.dart
│ │ │ └── sliver_reorder_listview_demo.dart
│ │ ├── drawer
│ │ │ ├── drag_drawer_demo.dart
│ │ │ ├── drag_drawer_view.dart
│ │ │ └── gesture_drag_drawerx.dart
│ │ ├── emoji
│ │ │ └── emoji_demo.dart
│ │ ├── flip
│ │ │ ├── flip_demo.dart
│ │ │ └── flip_num_text.dart
│ │ ├── loadmore
│ │ │ ├── custom_loadmore_demo.dart
│ │ │ └── custom_simple_loadmore_demo.dart
│ │ ├── preview
│ │ │ ├── full_size_image_view_copy.dart
│ │ │ └── image_preview_animation_demo.dart
│ │ ├── refresh
│ │ │ └── custom_refresh_demo.dart
│ │ ├── shoppage
│ │ │ ├── page1.dart
│ │ │ ├── page2.dart
│ │ │ ├── page3.dart
│ │ │ ├── shop
│ │ │ │ ├── shop_scroll_controller.dart
│ │ │ │ ├── shop_scroll_coordinator.dart
│ │ │ │ └── shop_scroll_position.dart
│ │ │ └── shop_page_demo.dart
│ │ ├── sprite
│ │ │ └── custome_sprite_demo.dart
│ │ ├── tabbar
│ │ │ └── diy_tabbar_demo.dart
│ │ └── wheel
│ │ │ ├── diy_list_wheel_scroll_view.dart
│ │ │ ├── diy_list_wheel_scroll_view2.dart
│ │ │ ├── diy_list_wheel_viewport.dart
│ │ │ ├── diy_list_wheel_viewport2.dart
│ │ │ └── list_wheel_diy_demo.dart
│ ├── func
│ │ ├── func_file_path_demo.dart
│ │ ├── func_matrix4_demo.dart
│ │ ├── func_matrix4_pentagon_demo.dart
│ │ └── func_matrix4_u_demo.dart
│ ├── layout
│ │ └── test_how_to_refresh_ui_demo.dart
│ ├── lib
│ │ ├── cache_image_demo.dart
│ │ ├── charts_flutter_demo.dart
│ │ ├── extended_nested_scroll
│ │ │ ├── extended_nested_scroll_view.dart
│ │ │ └── src
│ │ │ │ ├── extended_nested_scroll_view.dart
│ │ │ │ ├── extended_nested_scroll_view_part.dart
│ │ │ │ └── extended_visibility_detector.dart
│ │ ├── extened_nested_scroll_view_demo.dart
│ │ ├── fishredux
│ │ │ ├── demopage1
│ │ │ │ ├── action.dart
│ │ │ │ ├── childview
│ │ │ │ │ ├── action.dart
│ │ │ │ │ ├── component.dart
│ │ │ │ │ ├── effect.dart
│ │ │ │ │ ├── reducer.dart
│ │ │ │ │ ├── state.dart
│ │ │ │ │ └── view.dart
│ │ │ │ ├── effect.dart
│ │ │ │ ├── page.dart
│ │ │ │ ├── reducer.dart
│ │ │ │ ├── state.dart
│ │ │ │ └── view.dart
│ │ │ ├── demopage2
│ │ │ │ ├── FishModel.dart
│ │ │ │ ├── action.dart
│ │ │ │ ├── effect.dart
│ │ │ │ ├── page.dart
│ │ │ │ ├── reducer.dart
│ │ │ │ ├── state.dart
│ │ │ │ └── view.dart
│ │ │ ├── demopage3
│ │ │ │ ├── action.dart
│ │ │ │ ├── effect.dart
│ │ │ │ ├── headerview
│ │ │ │ │ ├── action.dart
│ │ │ │ │ ├── component.dart
│ │ │ │ │ ├── effect.dart
│ │ │ │ │ ├── reducer.dart
│ │ │ │ │ ├── state.dart
│ │ │ │ │ └── view.dart
│ │ │ │ ├── itemcell
│ │ │ │ │ ├── action.dart
│ │ │ │ │ ├── component.dart
│ │ │ │ │ ├── effect.dart
│ │ │ │ │ ├── reducer.dart
│ │ │ │ │ ├── state.dart
│ │ │ │ │ └── view.dart
│ │ │ │ ├── list
│ │ │ │ │ ├── action.dart
│ │ │ │ │ ├── adapter.dart
│ │ │ │ │ └── state.dart
│ │ │ │ ├── page.dart
│ │ │ │ ├── reducer.dart
│ │ │ │ ├── state.dart
│ │ │ │ └── view.dart
│ │ │ ├── demopage4
│ │ │ │ ├── action.dart
│ │ │ │ ├── child
│ │ │ │ │ ├── action.dart
│ │ │ │ │ ├── component.dart
│ │ │ │ │ ├── effect.dart
│ │ │ │ │ ├── reducer.dart
│ │ │ │ │ ├── state.dart
│ │ │ │ │ └── view.dart
│ │ │ │ ├── effect.dart
│ │ │ │ ├── main
│ │ │ │ │ ├── action.dart
│ │ │ │ │ ├── component.dart
│ │ │ │ │ ├── effect.dart
│ │ │ │ │ ├── reducer.dart
│ │ │ │ │ ├── state.dart
│ │ │ │ │ └── view.dart
│ │ │ │ ├── page.dart
│ │ │ │ ├── reducer.dart
│ │ │ │ ├── state.dart
│ │ │ │ └── view.dart
│ │ │ ├── fish_redux_demo.dart
│ │ │ └── list
│ │ │ │ ├── action.dart
│ │ │ │ ├── adapter
│ │ │ │ ├── action.dart
│ │ │ │ ├── adapter.dart
│ │ │ │ ├── reducer.dart
│ │ │ │ └── state.dart
│ │ │ │ ├── effect.dart
│ │ │ │ ├── page.dart
│ │ │ │ ├── reducer.dart
│ │ │ │ ├── state.dart
│ │ │ │ ├── view.dart
│ │ │ │ └── view
│ │ │ │ ├── action.dart
│ │ │ │ ├── component.dart
│ │ │ │ ├── effect.dart
│ │ │ │ ├── reducer.dart
│ │ │ │ ├── state.dart
│ │ │ │ └── view.dart
│ │ ├── flutter_redux_demo.dart
│ │ ├── gif_controller_demo.dart
│ │ ├── http_demo.dart
│ │ ├── httpserver_demo.dart
│ │ ├── lottie_demo.dart
│ │ ├── over_nested_scroll
│ │ │ ├── custom_nested_scroll_view.dart
│ │ │ └── src
│ │ │ │ ├── custom_nested_scroll_view.dart
│ │ │ │ ├── nested_scroll_view.dart
│ │ │ │ ├── nested_scroll_view_x.dart
│ │ │ │ └── nested_scroll_view_y.dart
│ │ ├── over_nested_scroll_demo.dart
│ │ ├── photo_view
│ │ │ ├── photo_view.dart
│ │ │ ├── photo_view_gallery.dart
│ │ │ └── src
│ │ │ │ ├── controller
│ │ │ │ ├── photo_view_controller.dart
│ │ │ │ ├── photo_view_controller_delegate.dart
│ │ │ │ └── photo_view_scalestate_controller.dart
│ │ │ │ ├── core
│ │ │ │ ├── photo_view_core.dart
│ │ │ │ ├── photo_view_gesture_detector.dart
│ │ │ │ └── photo_view_hit_corners.dart
│ │ │ │ ├── keeping_widget_alive.dart
│ │ │ │ ├── photo_view_computed_scale.dart
│ │ │ │ ├── photo_view_default_widgets.dart
│ │ │ │ ├── photo_view_scale_state.dart
│ │ │ │ ├── photo_view_wrappers.dart
│ │ │ │ └── utils
│ │ │ │ ├── ignorable_change_notifier.dart
│ │ │ │ ├── photo_view_hero_attributes.dart
│ │ │ │ └── photo_view_utils.dart
│ │ ├── photo_view_demo.dart
│ │ ├── redux_demo.dart
│ │ ├── refresh_demo.dart
│ │ ├── staggered_demo.dart
│ │ ├── swiper_demo.dart
│ │ ├── transformer_demo.dart
│ │ ├── video_demo.dart
│ │ ├── waterfall
│ │ │ ├── src
│ │ │ │ ├── rendering
│ │ │ │ │ └── sliver_waterfall_flow.dart
│ │ │ │ └── widgets
│ │ │ │ │ ├── scroll_view.dart
│ │ │ │ │ └── sliver.dart
│ │ │ └── waterfall_flow.dart
│ │ └── waterfall_demo.dart
│ └── widget
│ │ ├── animation
│ │ ├── animate_builder_demo.dart
│ │ ├── clip_animation_demo.dart
│ │ ├── hero_animation_demo.dart
│ │ ├── scale_transition_animation_demo.dart
│ │ └── size_transition_animation_demo.dart
│ │ ├── canvas
│ │ ├── canvas_circle_demo.dart
│ │ ├── canvas_dash_board_demo.dart
│ │ └── canvas_douyin_demo.dart
│ │ ├── common_widget_demo.dart
│ │ ├── gesture
│ │ ├── gestrue_scale_demo1.dart
│ │ ├── gestrue_scale_demo2.dart
│ │ ├── gesture_behavior_demo.dart
│ │ ├── gesture_click_demo.dart
│ │ ├── gesture_drag_demo.dart
│ │ └── gesture_scale_demo.dart
│ │ ├── image
│ │ ├── big_height_image_demo.dart
│ │ ├── image_page_view_demo.dart
│ │ └── image_view_demo.dart
│ │ ├── layout
│ │ ├── layout_flow_demo.dart
│ │ └── layout_wrap_demo.dart
│ │ ├── list
│ │ ├── list_auto_scroll_demo.dart
│ │ ├── list_pull_refresh_demo.dart
│ │ └── list_wheel_demo.dart
│ │ ├── scrollview
│ │ ├── NestedClampingScrollPhysics.dart
│ │ ├── custom_scroll_demo.dart
│ │ └── nested_scroll_demo.dart
│ │ ├── sliver
│ │ ├── sliver_demo.dart
│ │ ├── sliver_grid_demo.dart
│ │ ├── sliver_list_demo.dart
│ │ └── sliver_prototype_extentList_demo.dart
│ │ ├── tab
│ │ ├── page_view_demo.dart
│ │ └── tabbar_view_demo.dart
│ │ └── text
│ │ ├── text_align_demo.dart
│ │ └── text_with_icon_demo.dart
├── simple_import.dart
├── table_contents.dart
├── thrid_libs
│ ├── flutter_redux
│ │ └── flutter_redux.dart
│ └── redux
│ │ └── redux.dart
└── ui
│ ├── Inherited_view_demo.dart
│ ├── bottom_nav_demo.dart
│ ├── click_animation_demo.dart
│ ├── container_demo.dart
│ ├── dialog_demo.dart
│ ├── icon_demo.dart
│ ├── image_demo.dart
│ ├── image_list_demo.dart
│ ├── listview_demo.dart
│ ├── scroll_view_demo.dart
│ ├── size_demo.dart
│ ├── stack_demo.dart
│ ├── tab_bar_demo.dart
│ ├── table_demo.dart
│ ├── textField_demo.dart
│ ├── text_demo.dart
│ ├── text_list_demo.dart
│ └── theme_demo.dart
├── pubspec.lock
├── pubspec.yaml
└── res
├── img
├── flower.png
├── ic_run.gif
├── ic_star.png
├── jay.jpg
├── live.png
├── love.png
├── shopping.png
├── start.png
├── user_role.png
├── wa.png
└── yellow_start.png
└── lottie
├── LottieLogo1.json
├── angel.zip
└── loading.json
/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: 760635e6dbf9180222171ac189199982a65cf608
8 | channel: master
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # flutter_demo
2 |
3 | Personal flutter demo:customer widget、sample and etc.
4 |
5 |
6 |
7 |
8 | ## FlutterTemplate(package)
9 |
10 | ### Widgets
11 | * app_bottom_nav_page
12 | 底部导航栏封装,包含页面切换加载。
13 | sample -> bottom_nav_demo
14 |
15 | ### utils
16 | * app_dialog_util 弹窗UI
17 |
18 | ### net
19 | * net_client dio封装的网络请求库
20 |
21 |
22 | ## FlutterAppPlugin(Plugin)
23 |
24 | ### Methods
25 | * nativePage 跳转原生页面接口
26 |
27 |
28 |
29 |
30 |
31 |
32 | ## Demo
33 |
34 | ### CustomerWidget
35 | - FlipText
36 | - DragDrawerView
37 |
38 | ### Sample
39 | - Animation
40 | - Router
41 | - AppBar
42 | - Drawer
43 | - LifeCycle
44 | - Painter
45 | - Scroll
--------------------------------------------------------------------------------
/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/app/src/main/java/com/example/flutter_demo/App.java:
--------------------------------------------------------------------------------
1 | package com.example.flutter_demo;
2 |
3 | import android.app.Application;
4 |
5 | public class App extends Application {
6 |
7 | @Override
8 | public void onCreate() {
9 | super.onCreate();
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/android/app/src/main/java/com/example/flutter_demo/LauncherActivity.java:
--------------------------------------------------------------------------------
1 | package com.example.flutter_demo;
2 |
3 | import android.os.Bundle;
4 |
5 | import androidx.annotation.Nullable;
6 | import androidx.appcompat.app.AppCompatActivity;
7 |
8 | import io.flutter.embedding.android.FlutterActivity;
9 | import io.flutter.embedding.android.FlutterActivityLaunchConfigs;
10 |
11 | public class LauncherActivity extends FlutterActivity {
12 |
13 | @Override
14 | protected void onCreate(@Nullable Bundle savedInstanceState) {
15 | super.onCreate(savedInstanceState);
16 |
17 | // FlutterActivity.withNewEngine()
18 | // .backgroundMode(FlutterActivityLaunchConfigs.BackgroundMode.opaque)
19 | // .initialRoute("/")
20 | // .build(this);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/android/app/src/main/java/com/example/flutter_demo/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.example.flutter_demo;
2 |
3 | import android.os.Bundle;
4 |
5 | import androidx.annotation.NonNull;
6 |
7 | import io.flutter.embedding.android.FlutterActivity;
8 | import io.flutter.embedding.android.FlutterActivityLaunchConfigs;
9 | import io.flutter.embedding.android.FlutterFragmentActivity;
10 |
11 | public class MainActivity extends FlutterActivity {
12 |
13 |
14 |
15 | // @NonNull
16 | // @Override
17 | // protected FlutterActivityLaunchConfigs.BackgroundMode getBackgroundMode() {
18 | // return FlutterActivityLaunchConfigs.BackgroundMode.transparent;
19 | // }
20 | }
21 |
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
12 |
13 |
--------------------------------------------------------------------------------
/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | repositories {
3 | // maven {
4 | // url "http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/"
5 | // }
6 | google()
7 | jcenter()
8 |
9 |
10 | }
11 |
12 | dependencies {
13 | classpath 'com.android.tools.build:gradle:3.2.1'
14 | }
15 | }
16 |
17 | allprojects {
18 | repositories {
19 | // maven {
20 | // url "http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/"
21 | // }
22 | google()
23 | jcenter()
24 | }
25 | }
26 |
27 | rootProject.buildDir = '../build'
28 | subprojects {
29 | project.buildDir = "${rootProject.buildDir}/${project.name}"
30 | }
31 | subprojects {
32 | project.evaluationDependsOn(':app')
33 | }
34 |
35 | task clean(type: Delete) {
36 | delete rootProject.buildDir
37 | }
38 |
--------------------------------------------------------------------------------
/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx1536M
2 |
3 | android.enableR8=true
4 | android.useAndroidX=true
--------------------------------------------------------------------------------
/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Fri Jun 23 08:50:38 CEST 2017
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip
7 |
--------------------------------------------------------------------------------
/android/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
3 | def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()
4 |
5 | def plugins = new Properties()
6 | def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
7 | if (pluginsFile.exists()) {
8 | pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }
9 | }
10 |
11 | plugins.each { name, path ->
12 | def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
13 | include ":$name"
14 | project(":$name").projectDir = pluginDirectory
15 | }
16 |
--------------------------------------------------------------------------------
/android/settings_aar.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/external_texture_plugin/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | .dart_tool/
3 |
4 | .packages
5 | .pub/
6 |
7 | build/
8 |
--------------------------------------------------------------------------------
/external_texture_plugin/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: e6b34c2b5c96bb95325269a29a84e83ed8909b5f
8 | channel: unknown
9 |
10 | project_type: plugin
11 |
--------------------------------------------------------------------------------
/external_texture_plugin/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ## 0.0.1
2 |
3 | * TODO: Describe initial release.
4 |
--------------------------------------------------------------------------------
/external_texture_plugin/LICENSE:
--------------------------------------------------------------------------------
1 | TODO: Add your license here.
2 |
--------------------------------------------------------------------------------
/external_texture_plugin/README.md:
--------------------------------------------------------------------------------
1 | # externaltextureplugin
2 |
3 | A new Flutter plugin.
4 |
5 | ## Getting Started
6 |
7 | This project is a starting point for a Flutter
8 | [plug-in package](https://flutter.dev/developing-packages/),
9 | a specialized package that includes platform-specific implementation code for
10 | Android and/or iOS.
11 |
12 | For help getting started with Flutter, view our
13 | [online documentation](https://flutter.dev/docs), which offers tutorials,
14 | samples, guidance on mobile development, and a full API reference.
15 |
--------------------------------------------------------------------------------
/external_texture_plugin/android/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | /.idea/workspace.xml
5 | /.idea/libraries
6 | .DS_Store
7 | /build
8 | /captures
9 |
--------------------------------------------------------------------------------
/external_texture_plugin/android/build.gradle:
--------------------------------------------------------------------------------
1 | group 'com.julyyu.com.julyyu.externaltextureplugin'
2 | version '1.0-SNAPSHOT'
3 |
4 | buildscript {
5 | ext.kotlin_version = '1.3.50'
6 | repositories {
7 | google()
8 | jcenter()
9 | }
10 |
11 | dependencies {
12 | classpath 'com.android.tools.build:gradle:3.5.0'
13 | classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
14 | }
15 | }
16 |
17 | rootProject.allprojects {
18 | repositories {
19 | google()
20 | jcenter()
21 | }
22 | }
23 |
24 | apply plugin: 'com.android.library'
25 | apply plugin: 'kotlin-android'
26 |
27 | android {
28 | compileSdkVersion 28
29 |
30 | sourceSets {
31 | main.java.srcDirs += 'src/main/kotlin'
32 | }
33 | defaultConfig {
34 | minSdkVersion 16
35 | }
36 | lintOptions {
37 | disable 'InvalidPackage'
38 | }
39 | }
40 |
41 | dependencies {
42 | implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
43 |
44 | implementation 'com.github.bumptech.glide:glide:4.11.0'
45 | annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'
46 | }
47 |
--------------------------------------------------------------------------------
/external_texture_plugin/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx1536M
2 | android.enableR8=true
3 | android.useAndroidX=true
4 | android.enableJetifier=true
5 |
--------------------------------------------------------------------------------
/external_texture_plugin/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | zipStoreBase=GRADLE_USER_HOME
4 | zipStorePath=wrapper/dists
5 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip
6 |
--------------------------------------------------------------------------------
/external_texture_plugin/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'com.julyyu.externaltextureplugin'
2 |
--------------------------------------------------------------------------------
/external_texture_plugin/android/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/.gitignore:
--------------------------------------------------------------------------------
1 | # Miscellaneous
2 | *.class
3 | *.log
4 | *.pyc
5 | *.swp
6 | .DS_Store
7 | .atom/
8 | .buildlog/
9 | .history
10 | .svn/
11 |
12 | # IntelliJ related
13 | *.iml
14 | *.ipr
15 | *.iws
16 | .idea/
17 |
18 | # The .vscode folder contains launch configuration and tasks you configure in
19 | # VS Code which you may wish to be included in version control, so this line
20 | # is commented out by default.
21 | #.vscode/
22 |
23 | # Flutter/Dart/Pub related
24 | **/doc/api/
25 | .dart_tool/
26 | .flutter-plugins
27 | .flutter-plugins-dependencies
28 | .packages
29 | .pub-cache/
30 | .pub/
31 | /build/
32 |
33 | # Web related
34 | lib/generated_plugin_registrant.dart
35 |
36 | # Symbolication related
37 | app.*.symbols
38 |
39 | # Obfuscation related
40 | app.*.map.json
41 |
42 | # Exceptions to above rules.
43 | !/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages
44 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: e6b34c2b5c96bb95325269a29a84e83ed8909b5f
8 | channel: unknown
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/README.md:
--------------------------------------------------------------------------------
1 | # externaltextureplugin_example
2 |
3 | Demonstrates how to use the externaltextureplugin plugin.
4 |
5 | ## Getting Started
6 |
7 | This project is a starting point for a Flutter application.
8 |
9 | A few resources to get you started if this is your first Flutter project:
10 |
11 | - [Lab: Write your first Flutter app](https://flutter.dev/docs/get-started/codelab)
12 | - [Cookbook: Useful Flutter samples](https://flutter.dev/docs/cookbook)
13 |
14 | For help getting started with Flutter, view our
15 | [online documentation](https://flutter.dev/docs), which offers tutorials,
16 | samples, guidance on mobile development, and a full API reference.
17 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/.gitignore:
--------------------------------------------------------------------------------
1 | gradle-wrapper.jar
2 | /.gradle
3 | /captures/
4 | /gradlew
5 | /gradlew.bat
6 | /local.properties
7 | GeneratedPluginRegistrant.java
8 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/app/src/main/kotlin/com/julyyu/externaltextureplugin_example/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.julyyu.externaltextureplugin_example
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity: FlutterActivity() {
6 | }
7 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
15 |
18 |
19 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | ext.kotlin_version = '1.3.50'
3 | repositories {
4 | google()
5 | jcenter()
6 | }
7 |
8 | dependencies {
9 | classpath 'com.android.tools.build:gradle:3.5.0'
10 | classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
11 | }
12 | }
13 |
14 | allprojects {
15 | repositories {
16 | google()
17 | jcenter()
18 | }
19 | }
20 |
21 | rootProject.buildDir = '../build'
22 | subprojects {
23 | project.buildDir = "${rootProject.buildDir}/${project.name}"
24 | }
25 | subprojects {
26 | project.evaluationDependsOn(':app')
27 | }
28 |
29 | task clean(type: Delete) {
30 | delete rootProject.buildDir
31 | }
32 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx1536M
2 | android.enableR8=true
3 | android.useAndroidX=true
4 | android.enableJetifier=true
5 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Fri Jun 23 08:50:38 CEST 2017
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip
7 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/android/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
3 | def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()
4 |
5 | def plugins = new Properties()
6 | def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
7 | if (pluginsFile.exists()) {
8 | pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }
9 | }
10 |
11 | plugins.each { name, path ->
12 | def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
13 | include ":$name"
14 | project(":$name").projectDir = pluginDirectory
15 | }
16 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/.gitignore:
--------------------------------------------------------------------------------
1 | *.mode1v3
2 | *.mode2v3
3 | *.moved-aside
4 | *.pbxuser
5 | *.perspectivev3
6 | **/*sync/
7 | .sconsign.dblite
8 | .tags*
9 | **/.vagrant/
10 | **/DerivedData/
11 | Icon?
12 | **/Pods/
13 | **/.symlinks/
14 | profile
15 | xcuserdata
16 | **/.generated/
17 | Flutter/App.framework
18 | Flutter/Flutter.framework
19 | Flutter/Flutter.podspec
20 | Flutter/Generated.xcconfig
21 | Flutter/app.flx
22 | Flutter/app.zip
23 | Flutter/flutter_assets/
24 | Flutter/flutter_export_environment.sh
25 | ServiceDefinitions.json
26 | Runner/GeneratedPluginRegistrant.*
27 |
28 | # Exceptions to above rules.
29 | !default.mode1v3
30 | !default.mode2v3
31 | !default.pbxuser
32 | !default.perspectivev3
33 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Flutter/AppFrameworkInfo.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
7 | CFBundleExecutable
8 | App
9 | CFBundleIdentifier
10 | io.flutter.flutter.app
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | App
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1.0
23 | MinimumOSVersion
24 | 8.0
25 |
26 |
27 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import UIKit
2 | import Flutter
3 |
4 | @UIApplicationMain
5 | @objc class AppDelegate: FlutterAppDelegate {
6 | override func application(
7 | _ application: UIApplication,
8 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
9 | ) -> Bool {
10 | GeneratedPluginRegistrant.register(with: self)
11 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "LaunchImage.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "LaunchImage@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "LaunchImage@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory.
4 |
5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images.
--------------------------------------------------------------------------------
/external_texture_plugin/example/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
2 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/lib/demo/image_list_demo.dart:
--------------------------------------------------------------------------------
1 | import 'package:externaltextureplugin_example/demo/mock.dart';
2 | import 'package:flutter/material.dart';
3 |
4 | import 'NetworkImageWithoutAuth.dart';
5 | import 'fade_in_iamge.dart';
6 |
7 | class ImageListDemo extends StatefulWidget {
8 | @override
9 | _FlutterImageDemoState createState() => _FlutterImageDemoState();
10 | }
11 |
12 | class _FlutterImageDemoState extends State {
13 | @override
14 | Widget build(BuildContext context) {
15 | return Scaffold(
16 | appBar: AppBar(
17 | title: Text("Flutter Image 加载"),
18 | ),
19 | body: ListView.builder(
20 | itemBuilder: (context, index) {
21 | return FadeInImageWithoutAuth.assetNetwork(
22 | placeholder: "res/img/jay.jpg",
23 | image: imgs[index % imgs.length],
24 | fit: BoxFit.fill,
25 | );
26 | },
27 | itemCount: 300,
28 | ),
29 | );
30 | }
31 |
32 | @override
33 | void dispose() {
34 | super.dispose();
35 | PaintingBinding.instance.imageCache.clear();
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/lib/demo/texture_grid_demo.dart:
--------------------------------------------------------------------------------
1 | import 'package:external_texture_plugin/external_texture_plugin.dart';
2 | import 'package:externaltextureplugin_example/demo/texture_image_widget.dart';
3 | import 'package:flutter/material.dart';
4 |
5 | import 'mock.dart';
6 |
7 | class TextureGridListDemo extends StatefulWidget {
8 | @override
9 | _TextureDemoState createState() => _TextureDemoState();
10 | }
11 |
12 | class _TextureDemoState extends State {
13 | @override
14 | Widget build(BuildContext context) {
15 | return Scaffold(
16 | appBar: AppBar(),
17 | body: GridView.builder(
18 | gridDelegate:
19 | SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3),
20 | itemBuilder: (context, index) {
21 | return TextureImageWidget(imgs[index % imgs.length]);
22 | },
23 | itemCount: 300,
24 | ),
25 | );
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/lib/demo/texture_list_demo.dart:
--------------------------------------------------------------------------------
1 | import 'package:externaltextureplugin_example/demo/mock.dart';
2 | import 'package:externaltextureplugin_example/demo/texture_image_widget.dart';
3 | import 'package:flutter/material.dart';
4 |
5 | class TextureListDemo extends StatefulWidget {
6 | @override
7 | _TextureDemoState createState() => _TextureDemoState();
8 | }
9 |
10 | class _TextureDemoState extends State {
11 | @override
12 | Widget build(BuildContext context) {
13 | return Scaffold(
14 | appBar: AppBar(),
15 | body: ListView.builder(
16 | itemBuilder: (context, index) {
17 | return TextureImageWidget(imgs[index % imgs.length]);
18 | },
19 | itemCount: 300,
20 | ),
21 | );
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/lib/demo/texture_single_demo.dart:
--------------------------------------------------------------------------------
1 | import 'package:externaltextureplugin_example/demo/texture_image_widget.dart';
2 | import 'package:flutter/material.dart';
3 | import 'package:external_texture_plugin/external_texture_plugin.dart';
4 |
5 | import 'mock.dart';
6 |
7 | class TextureSingleImageDemo extends StatefulWidget {
8 | @override
9 | _TextureDemoState createState() => _TextureDemoState();
10 | }
11 |
12 | class _TextureDemoState extends State {
13 | @override
14 | Widget build(BuildContext context) {
15 | return Scaffold(
16 | appBar: AppBar(),
17 | body: Column(
18 | children: [
19 | TextureImageWidget(imgs[0]),
20 | ],
21 | ),
22 | );
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/lib/demo/texture_single_external_demo.dart:
--------------------------------------------------------------------------------
1 | import 'package:externaltextureplugin_example/demo/texture_image_widget.dart';
2 | import 'package:flutter/material.dart';
3 |
4 | import 'mock.dart';
5 |
6 | class TextureSingleExternalImageDemo extends StatefulWidget {
7 | @override
8 | _TextureDemoState createState() => _TextureDemoState();
9 | }
10 |
11 | class _TextureDemoState extends State {
12 | @override
13 | Widget build(BuildContext context) {
14 | return Scaffold(
15 | appBar: AppBar(),
16 | body: SingleChildScrollView(
17 | child: Column(
18 | children: [
19 | TextureImageWidget(imgs[0]),
20 | ],
21 | ),
22 | ),
23 | );
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/lib/main.dart:
--------------------------------------------------------------------------------
1 | import 'package:externaltextureplugin_example/demo/texture_main_demo.dart';
2 | import 'package:flutter/material.dart';
3 |
4 | void main() {
5 | runApp(MyApp());
6 | }
7 |
8 | class MyApp extends StatefulWidget {
9 | @override
10 | _MyAppState createState() => _MyAppState();
11 | }
12 |
13 | class _MyAppState extends State {
14 | @override
15 | Widget build(BuildContext context) {
16 | return MaterialApp(
17 | home: TextureMainDemo()
18 | );
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/external_texture_plugin/example/res/img/jay.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/example/res/img/jay.jpg
--------------------------------------------------------------------------------
/external_texture_plugin/example/test/widget_test.dart:
--------------------------------------------------------------------------------
1 | // This is a basic Flutter widget test.
2 | //
3 | // To perform an interaction with a widget in your test, use the WidgetTester
4 | // utility that Flutter provides. For example, you can send tap and scroll
5 | // gestures. You can also use WidgetTester to find child widgets in the widget
6 | // tree, read text, and verify that the values of widget properties are correct.
7 |
8 | import 'package:flutter/material.dart';
9 | import 'package:flutter_test/flutter_test.dart';
10 |
11 | import '../lib/shop_page_demo.dart';
12 |
13 |
14 | void main() {
15 | testWidgets('Verify Platform version', (WidgetTester tester) async {
16 | // Build our app and trigger a frame.
17 | await tester.pumpWidget(MyApp());
18 |
19 | // Verify that platform version is retrieved.
20 | expect(
21 | find.byWidgetPredicate(
22 | (Widget widget) => widget is Text &&
23 | widget.data.startsWith('Running on:'),
24 | ),
25 | findsOneWidget,
26 | );
27 | });
28 | }
29 |
--------------------------------------------------------------------------------
/external_texture_plugin/ios/.gitignore:
--------------------------------------------------------------------------------
1 | .idea/
2 | .vagrant/
3 | .sconsign.dblite
4 | .svn/
5 |
6 | .DS_Store
7 | *.swp
8 | profile
9 |
10 | DerivedData/
11 | build/
12 | GeneratedPluginRegistrant.h
13 | GeneratedPluginRegistrant.m
14 |
15 | .generated/
16 |
17 | *.pbxuser
18 | *.mode1v3
19 | *.mode2v3
20 | *.perspectivev3
21 |
22 | !default.pbxuser
23 | !default.mode1v3
24 | !default.mode2v3
25 | !default.perspectivev3
26 |
27 | xcuserdata
28 |
29 | *.moved-aside
30 |
31 | *.pyc
32 | *sync/
33 | Icon?
34 | .tags*
35 |
36 | /Flutter/Generated.xcconfig
37 | /Flutter/flutter_export_environment.sh
--------------------------------------------------------------------------------
/external_texture_plugin/ios/Assets/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lifelikejuly/Flutter_Demo/3bbd008a360791253aabccf090a1262fbba87582/external_texture_plugin/ios/Assets/.gitkeep
--------------------------------------------------------------------------------
/external_texture_plugin/ios/Classes/ExternaltexturepluginPlugin.h:
--------------------------------------------------------------------------------
1 | #import
2 |
3 | @interface ExternaltexturepluginPlugin : NSObject
4 | @end
5 |
--------------------------------------------------------------------------------
/external_texture_plugin/ios/Classes/ExternaltexturepluginPlugin.m:
--------------------------------------------------------------------------------
1 | #import "ExternaltexturepluginPlugin.h"
2 | #if __has_include()
3 | #import
4 | #else
5 | // Support project import fallback if the generated compatibility header
6 | // is not copied when this plugin is created as a library.
7 | // https://forums.swift.org/t/swift-static-libraries-dont-copy-generated-objective-c-header/19816
8 | #import "externaltextureplugin-Swift.h"
9 | #endif
10 |
11 | @implementation ExternaltexturepluginPlugin
12 | + (void)registerWithRegistrar:(NSObject*)registrar {
13 | [SwiftExternaltexturepluginPlugin registerWithRegistrar:registrar];
14 | }
15 | @end
16 |
--------------------------------------------------------------------------------
/external_texture_plugin/ios/Classes/SwiftExternaltexturepluginPlugin.swift:
--------------------------------------------------------------------------------
1 | import Flutter
2 | import UIKit
3 |
4 | public class SwiftExternaltexturepluginPlugin: NSObject, FlutterPlugin {
5 | public static func register(with registrar: FlutterPluginRegistrar) {
6 | let channel = FlutterMethodChannel(name: "externaltextureplugin", binaryMessenger: registrar.messenger())
7 | let instance = SwiftExternaltexturepluginPlugin()
8 | registrar.addMethodCallDelegate(instance, channel: channel)
9 | }
10 |
11 | public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) {
12 | result("iOS " + UIDevice.current.systemVersion)
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/external_texture_plugin/ios/externaltextureplugin.podspec:
--------------------------------------------------------------------------------
1 | #
2 | # To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html.
3 | # Run `pod lib lint externaltextureplugin.podspec' to validate before publishing.
4 | #
5 | Pod::Spec.new do |s|
6 | s.name = 'externaltextureplugin'
7 | s.version = '0.0.1'
8 | s.summary = 'A new Flutter plugin.'
9 | s.description = <<-DESC
10 | A new Flutter plugin.
11 | DESC
12 | s.homepage = 'http://example.com'
13 | s.license = { :file => '../LICENSE' }
14 | s.author = { 'Your Company' => 'email@example.com' }
15 | s.source = { :path => '.' }
16 | s.source_files = 'Classes/**/*'
17 | s.dependency 'Flutter'
18 | s.platform = :ios, '8.0'
19 |
20 | # Flutter.framework does not contain a i386 slice. Only x86_64 simulators are supported.
21 | s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'VALID_ARCHS[sdk=iphonesimulator*]' => 'x86_64' }
22 | s.swift_version = '5.0'
23 | end
24 |
--------------------------------------------------------------------------------
/external_texture_plugin/lib/external_texture_plugin.dart:
--------------------------------------------------------------------------------
1 | import 'dart:async';
2 |
3 | import 'package:flutter/services.dart';
4 |
5 | class ExternalTexturePlugin {
6 | static const MethodChannel _channel =
7 | const MethodChannel('external_textrure_plugin');
8 |
9 | static Future