Compare commits
37 Commits
5d5e4297c1
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 5b594b471f | |||
| c6a42fa9bb | |||
| d19a49da0d | |||
| 1ea9a8bf11 | |||
| 019850148f | |||
| 740af2a459 | |||
| 0c07b6ba37 | |||
| d8e4cfdaf9 | |||
| d2e7d8f0af | |||
| 378303a8ef | |||
| 24dc8c5778 | |||
| 922be46a26 | |||
| 14c081c0e3 | |||
| d4644e00e6 | |||
| 96313fa03d | |||
| b329b3394d | |||
| 3e2f011463 | |||
| ff3c7402a9 | |||
| 70e7fe99af | |||
| 1b3d25ef39 | |||
| 1aa3eb38f1 | |||
| 6beb008489 | |||
| 76e45db37d | |||
| 5befd4d1c8 | |||
| eadf95609d | |||
| 682308d93c | |||
| 11d2bd02ff | |||
| aaae40ae02 | |||
| 4ab9a5ad18 | |||
| b086c5c5c9 | |||
| f2ab06e4bb | |||
| 13d5a31197 | |||
| f0f8d9ef69 | |||
| 74f412886c | |||
| 94a356994e | |||
| 7716bba906 | |||
| b70e73542c |
@@ -1,6 +1,12 @@
|
|||||||
{
|
{
|
||||||
"configVersion": 2,
|
"configVersion": 2,
|
||||||
"packages": [
|
"packages": [
|
||||||
|
{
|
||||||
|
"name": "archive",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/archive-4.0.7",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "args",
|
"name": "args",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/args-2.7.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/args-2.7.0",
|
||||||
@@ -9,34 +15,64 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "async",
|
"name": "async",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/async-2.11.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/async-2.13.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.18"
|
"languageVersion": "3.4"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "boolean_selector",
|
"name": "boolean_selector",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.2",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.17"
|
"languageVersion": "3.1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "cached_network_image",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/cached_network_image-3.4.1",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "cached_network_image_platform_interface",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/cached_network_image_platform_interface-4.1.1",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "cached_network_image_web",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/cached_network_image_web-1.3.1",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "characters",
|
"name": "characters",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/characters-1.3.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/characters-1.4.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.12"
|
"languageVersion": "3.4"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "clock",
|
"name": "clock",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.2",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.12"
|
"languageVersion": "3.4"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "code_assets",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/code_assets-1.0.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "collection",
|
"name": "collection",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/collection-1.19.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/collection-1.19.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "colorfilter_generator",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/colorfilter_generator-0.0.8",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "2.15"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "common_utils",
|
"name": "common_utils",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/common_utils-2.1.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/common_utils-2.1.0",
|
||||||
@@ -51,13 +87,13 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "cross_file",
|
"name": "cross_file",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/cross_file-0.3.4+2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/cross_file-0.3.5+1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "3.8"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "crypto",
|
"name": "crypto",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/crypto-3.0.6",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/crypto-3.0.7",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.4"
|
||||||
},
|
},
|
||||||
@@ -81,15 +117,15 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "device_info_plus",
|
"name": "device_info_plus",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/device_info_plus-11.3.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/device_info_plus-11.5.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.7"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "device_info_plus_platform_interface",
|
"name": "device_info_plus_platform_interface",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/device_info_plus_platform_interface-7.0.2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/device_info_plus_platform_interface-7.0.3",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.18"
|
"languageVersion": "3.7"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "dio",
|
"name": "dio",
|
||||||
@@ -104,17 +140,35 @@
|
|||||||
"languageVersion": "3.3"
|
"languageVersion": "3.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "fake_async",
|
"name": "easy_debounce",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.3.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/easy_debounce-2.0.3",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.12"
|
"languageVersion": "2.12"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "ffi",
|
"name": "extended_image",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/ffi-2.1.3",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/extended_image-8.3.1",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "2.18"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "extended_image_library",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/extended_image_library-4.0.6",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "fake_async",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.3.3",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "3.3"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "ffi",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/ffi-2.1.5",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.7"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "file",
|
"name": "file",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file-7.0.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file-7.0.1",
|
||||||
@@ -123,27 +177,45 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "file_selector_linux",
|
"name": "file_selector_linux",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_linux-0.9.3+2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_linux-0.9.4",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "3.8"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "file_selector_macos",
|
"name": "file_selector_macos",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_macos-0.9.4+3",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_macos-0.9.5",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.9"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "file_selector_platform_interface",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_platform_interface-2.7.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "file_selector_windows",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_windows-0.9.3+5",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.8"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "fixnum",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/fixnum-1.1.1",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "flex_color_picker",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flex_color_picker-3.8.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.6"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "file_selector_platform_interface",
|
"name": "flex_seed_scheme",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_platform_interface-2.6.2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flex_seed_scheme-4.0.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.0"
|
"languageVersion": "3.6"
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "file_selector_windows",
|
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_windows-0.9.3+4",
|
|
||||||
"packageUri": "lib/",
|
|
||||||
"languageVersion": "3.4"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "flustars_flutter3",
|
"name": "flustars_flutter3",
|
||||||
@@ -155,7 +227,13 @@
|
|||||||
"name": "flutter",
|
"name": "flutter",
|
||||||
"rootUri": "file:///Users/wxl/Desktop/flutter/packages/flutter",
|
"rootUri": "file:///Users/wxl/Desktop/flutter/packages/flutter",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "3.8"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "flutter_cache_manager",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_cache_manager-3.4.1",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "flutter_easyloading",
|
"name": "flutter_easyloading",
|
||||||
@@ -219,9 +297,9 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "flutter_plugin_android_lifecycle",
|
"name": "flutter_plugin_android_lifecycle",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_plugin_android_lifecycle-2.0.29",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_plugin_android_lifecycle-2.0.33",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "flutter_screenutil",
|
"name": "flutter_screenutil",
|
||||||
@@ -245,13 +323,13 @@
|
|||||||
"name": "flutter_test",
|
"name": "flutter_test",
|
||||||
"rootUri": "file:///Users/wxl/Desktop/flutter/packages/flutter_test",
|
"rootUri": "file:///Users/wxl/Desktop/flutter/packages/flutter_test",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "3.8"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "flutter_web_plugins",
|
"name": "flutter_web_plugins",
|
||||||
"rootUri": "file:///Users/wxl/Desktop/flutter/packages/flutter_web_plugins",
|
"rootUri": "file:///Users/wxl/Desktop/flutter/packages/flutter_web_plugins",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.2"
|
"languageVersion": "3.8"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "flutter_widget_from_html_core",
|
"name": "flutter_widget_from_html_core",
|
||||||
@@ -259,12 +337,42 @@
|
|||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "font_awesome_flutter",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/font_awesome_flutter-10.12.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.9"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "freezed_annotation",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/freezed_annotation-3.1.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "get",
|
"name": "get",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/get-4.7.2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/get-4.7.3",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.15"
|
"languageVersion": "2.15"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "glob",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/glob-2.1.3",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "hand_signature",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/hand_signature-3.1.0+2",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "hooks",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/hooks-1.0.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.9"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "html",
|
"name": "html",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/html-0.15.6",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/html-0.15.6",
|
||||||
@@ -273,16 +381,34 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "http",
|
"name": "http",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http-1.5.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http-1.6.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "http_client_helper",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http_client_helper-3.0.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "2.12"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "http_parser",
|
"name": "http_parser",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http_parser-4.1.2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http_parser-4.1.2",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "image",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image-4.7.2",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "image_editor_plus",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_editor_plus-1.0.6",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "2.17"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "image_gallery_saver_plus",
|
"name": "image_gallery_saver_plus",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_gallery_saver_plus-4.0.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_gallery_saver_plus-4.0.1",
|
||||||
@@ -291,27 +417,27 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "image_picker",
|
"name": "image_picker",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker-1.2.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker-1.2.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.7"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "image_picker_android",
|
"name": "image_picker_android",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_android-0.8.13",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_android-0.8.13+12",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "image_picker_for_web",
|
"name": "image_picker_for_web",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_for_web-3.1.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_for_web-3.1.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.8"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "image_picker_ios",
|
"name": "image_picker_ios",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_ios-0.8.13",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_ios-0.8.13+3",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "image_picker_linux",
|
"name": "image_picker_linux",
|
||||||
@@ -321,15 +447,15 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "image_picker_macos",
|
"name": "image_picker_macos",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_macos-0.2.2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_macos-0.2.2+1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "image_picker_platform_interface",
|
"name": "image_picker_platform_interface",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_platform_interface-2.11.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_platform_interface-2.11.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.7"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "image_picker_windows",
|
"name": "image_picker_windows",
|
||||||
@@ -343,21 +469,33 @@
|
|||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "3.3"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "js",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/js-0.7.2",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "json_annotation",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/json_annotation-4.9.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "leak_tracker",
|
"name": "leak_tracker",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/leak_tracker-10.0.7",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/leak_tracker-11.0.2",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.2"
|
"languageVersion": "3.2"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "leak_tracker_flutter_testing",
|
"name": "leak_tracker_flutter_testing",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/leak_tracker_flutter_testing-3.0.8",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/leak_tracker_flutter_testing-3.0.10",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.2"
|
"languageVersion": "3.2"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "leak_tracker_testing",
|
"name": "leak_tracker_testing",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/leak_tracker_testing-3.0.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/leak_tracker_testing-3.0.2",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.2"
|
"languageVersion": "3.2"
|
||||||
},
|
},
|
||||||
@@ -375,9 +513,9 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "matcher",
|
"name": "matcher",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.16+1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.17",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.0"
|
"languageVersion": "3.4"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "material_color_utilities",
|
"name": "material_color_utilities",
|
||||||
@@ -386,23 +524,53 @@
|
|||||||
"languageVersion": "2.17"
|
"languageVersion": "2.17"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "meta",
|
"name": "matrix2d",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/meta-1.15.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/matrix2d-1.0.4",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.12"
|
"languageVersion": "2.12"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "meta",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/meta-1.17.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.5"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "mime",
|
"name": "mime",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/mime-2.0.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/mime-2.0.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.2"
|
"languageVersion": "3.2"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "native_toolchain_c",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/native_toolchain_c-0.17.4",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.9"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "nested",
|
"name": "nested",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/nested-1.0.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/nested-1.0.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.12"
|
"languageVersion": "2.12"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "objective_c",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/objective_c-9.2.4",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.10"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "octo_image",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/octo_image-2.1.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "omni_video_player",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/omni_video_player-3.7.2",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.9"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "package_info_plus",
|
"name": "package_info_plus",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/package_info_plus-9.0.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/package_info_plus-9.0.0",
|
||||||
@@ -417,9 +585,9 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "path",
|
"name": "path",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path-1.9.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path-1.9.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.0"
|
"languageVersion": "3.4"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "path_provider",
|
"name": "path_provider",
|
||||||
@@ -429,15 +597,15 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "path_provider_android",
|
"name": "path_provider_android",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path_provider_android-2.2.17",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path_provider_android-2.2.22",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "path_provider_foundation",
|
"name": "path_provider_foundation",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path_provider_foundation-2.4.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path_provider_foundation-2.6.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "3.10"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "path_provider_linux",
|
"name": "path_provider_linux",
|
||||||
@@ -495,9 +663,9 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "petitparser",
|
"name": "petitparser",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/petitparser-6.0.2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/petitparser-7.0.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.2"
|
"languageVersion": "3.8"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "photo_view",
|
"name": "photo_view",
|
||||||
@@ -517,12 +685,24 @@
|
|||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.0"
|
"languageVersion": "3.0"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "posix",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/posix-6.0.3",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "provider",
|
"name": "provider",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/provider-6.1.5+1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/provider-6.1.5+1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.12"
|
"languageVersion": "2.12"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "pub_semver",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/pub_semver-2.2.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.4"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "pull_to_refresh",
|
"name": "pull_to_refresh",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/pull_to_refresh-2.0.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/pull_to_refresh-2.0.0",
|
||||||
@@ -535,6 +715,18 @@
|
|||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.14"
|
"languageVersion": "2.14"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "reorderables",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/reorderables-0.6.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "2.12"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "rxdart",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/rxdart-0.28.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "2.12"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "screen_brightness",
|
"name": "screen_brightness",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness-2.1.7",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness-2.1.7",
|
||||||
@@ -578,22 +770,28 @@
|
|||||||
"languageVersion": "3.0"
|
"languageVersion": "3.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "shared_preferences",
|
"name": "screenshot",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-2.5.3",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screenshot-3.0.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.5"
|
"languageVersion": "2.12"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "shared_preferences",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-2.5.4",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "shared_preferences_android",
|
"name": "shared_preferences_android",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_android-2.4.11",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_android-2.4.18",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "shared_preferences_foundation",
|
"name": "shared_preferences_foundation",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_foundation-2.5.4",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_foundation-2.5.6",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "shared_preferences_linux",
|
"name": "shared_preferences_linux",
|
||||||
@@ -619,17 +817,23 @@
|
|||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "3.3"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "simple_sparse_list",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/simple_sparse_list-0.1.4",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "sky_engine",
|
"name": "sky_engine",
|
||||||
"rootUri": "file:///Users/wxl/Desktop/flutter/bin/cache/pkg/sky_engine",
|
"rootUri": "file:///Users/wxl/Desktop/flutter/bin/cache/pkg/sky_engine",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.2"
|
"languageVersion": "3.8"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "source_span",
|
"name": "source_span",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.10.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.10.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.18"
|
"languageVersion": "3.1"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sp_util",
|
"name": "sp_util",
|
||||||
@@ -637,9 +841,39 @@
|
|||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.12"
|
"languageVersion": "2.12"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "sqflite",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/sqflite-2.4.2",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sqflite_android",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/sqflite_android-2.4.2+2",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.9"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sqflite_common",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/sqflite_common-2.5.6",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.8"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sqflite_darwin",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/sqflite_darwin-2.4.2",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sqflite_platform_interface",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/sqflite_platform_interface-2.4.0",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.5"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "stack_trace",
|
"name": "stack_trace",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.12.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.12.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.4"
|
||||||
},
|
},
|
||||||
@@ -651,33 +885,33 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "stream_channel",
|
"name": "stream_channel",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.4",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.19"
|
"languageVersion": "3.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "string_scanner",
|
"name": "string_scanner",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.3.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.4.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.1"
|
"languageVersion": "3.1"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "synchronized",
|
"name": "synchronized",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/synchronized-3.3.0+3",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/synchronized-3.4.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.5"
|
"languageVersion": "3.8"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "term_glyph",
|
"name": "term_glyph",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.2",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.12"
|
"languageVersion": "3.1"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "test_api",
|
"name": "test_api",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.7.3",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.7.7",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.5"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "transparent_image",
|
"name": "transparent_image",
|
||||||
@@ -691,6 +925,12 @@
|
|||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.5"
|
"languageVersion": "3.5"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "unicode",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/unicode-1.1.9",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "url_launcher",
|
"name": "url_launcher",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher-6.3.2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher-6.3.2",
|
||||||
@@ -699,27 +939,27 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "url_launcher_android",
|
"name": "url_launcher_android",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_android-6.3.17",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_android-6.3.28",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "url_launcher_ios",
|
"name": "url_launcher_ios",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_ios-6.3.3",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_ios-6.3.6",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "url_launcher_linux",
|
"name": "url_launcher_linux",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_linux-3.2.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_linux-3.2.2",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "3.8"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "url_launcher_macos",
|
"name": "url_launcher_macos",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_macos-3.2.2",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_macos-3.2.5",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "url_launcher_platform_interface",
|
"name": "url_launcher_platform_interface",
|
||||||
@@ -729,45 +969,51 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "url_launcher_web",
|
"name": "url_launcher_web",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_web-2.4.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_web-2.4.2",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.10"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "url_launcher_windows",
|
"name": "url_launcher_windows",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_windows-3.1.4",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_windows-3.1.5",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.8"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "uuid",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/uuid-4.5.2",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "vector_math",
|
"name": "vector_math",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.1.4",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.2.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "2.14"
|
"languageVersion": "3.1"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "video_player",
|
"name": "video_player",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player-2.10.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player-2.10.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.7"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "video_player_android",
|
"name": "video_player_android",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player_android-2.8.4",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player_android-2.9.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.9"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "video_player_avfoundation",
|
"name": "video_player_avfoundation",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player_avfoundation-2.8.4",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player_avfoundation-2.9.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.10"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "video_player_platform_interface",
|
"name": "video_player_platform_interface",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player_platform_interface-6.4.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player_platform_interface-6.6.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.6"
|
"languageVersion": "3.7"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "video_player_web",
|
"name": "video_player_web",
|
||||||
@@ -776,10 +1022,22 @@
|
|||||||
"languageVersion": "3.6"
|
"languageVersion": "3.6"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "vm_service",
|
"name": "visibility_detector",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/vm_service-14.3.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/visibility_detector-0.4.0+2",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.3"
|
"languageVersion": "2.12"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "vm_service",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/vm_service-15.0.2",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.5"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "volume_controller",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/volume_controller-3.4.1",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "wakelock_plus",
|
"name": "wakelock_plus",
|
||||||
@@ -801,15 +1059,15 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "win32",
|
"name": "win32",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/win32-5.10.1",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/win32-5.15.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.5"
|
"languageVersion": "3.8"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "win32_registry",
|
"name": "win32_registry",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/win32_registry-1.1.5",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/win32_registry-2.1.0",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.4"
|
"languageVersion": "3.7"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "xdg_directories",
|
"name": "xdg_directories",
|
||||||
@@ -819,9 +1077,21 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "xml",
|
"name": "xml",
|
||||||
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/xml-6.5.0",
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/xml-6.6.1",
|
||||||
"packageUri": "lib/",
|
"packageUri": "lib/",
|
||||||
"languageVersion": "3.2"
|
"languageVersion": "3.8"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "yaml",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/yaml-3.1.3",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.4"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "youtube_explode_dart",
|
||||||
|
"rootUri": "file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/youtube_explode_dart-3.0.5",
|
||||||
|
"packageUri": "lib/",
|
||||||
|
"languageVersion": "3.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "flutter_common",
|
"name": "flutter_common",
|
||||||
@@ -830,10 +1100,9 @@
|
|||||||
"languageVersion": "3.6"
|
"languageVersion": "3.6"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"generated": "2025-11-10T09:10:29.853637Z",
|
|
||||||
"generator": "pub",
|
"generator": "pub",
|
||||||
"generatorVersion": "3.6.2",
|
"generatorVersion": "3.10.4",
|
||||||
"flutterRoot": "file:///Users/wxl/Desktop/flutter",
|
"flutterRoot": "file:///Users/wxl/Desktop/flutter",
|
||||||
"flutterVersion": "3.27.4",
|
"flutterVersion": "3.38.5",
|
||||||
"pubCache": "file:///Users/wxl/.pub-cache"
|
"pubCache": "file:///Users/wxl/.pub-cache"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
|
archive
|
||||||
|
3.0
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/archive-4.0.7/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/archive-4.0.7/lib/
|
||||||
args
|
args
|
||||||
3.3
|
3.3
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/args-2.7.0/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/args-2.7.0/
|
||||||
@@ -22,6 +26,10 @@ collection
|
|||||||
3.4
|
3.4
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/collection-1.19.0/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/collection-1.19.0/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/collection-1.19.0/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/collection-1.19.0/lib/
|
||||||
|
colorfilter_generator
|
||||||
|
2.15
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/colorfilter_generator-0.0.8/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/colorfilter_generator-0.0.8/lib/
|
||||||
common_utils
|
common_utils
|
||||||
2.12
|
2.12
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/common_utils-2.1.0/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/common_utils-2.1.0/
|
||||||
@@ -66,6 +74,14 @@ dio_web_adapter
|
|||||||
3.3
|
3.3
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/dio_web_adapter-2.1.1/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/dio_web_adapter-2.1.1/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/dio_web_adapter-2.1.1/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/dio_web_adapter-2.1.1/lib/
|
||||||
|
extended_image
|
||||||
|
2.18
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/extended_image-8.3.1/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/extended_image-8.3.1/lib/
|
||||||
|
extended_image_library
|
||||||
|
3.2
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/extended_image_library-4.0.6/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/extended_image_library-4.0.6/lib/
|
||||||
fake_async
|
fake_async
|
||||||
2.12
|
2.12
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.3.1/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.3.1/
|
||||||
@@ -94,6 +110,14 @@ file_selector_windows
|
|||||||
3.4
|
3.4
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_windows-0.9.3+4/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_windows-0.9.3+4/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_windows-0.9.3+4/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_windows-0.9.3+4/lib/
|
||||||
|
flex_color_picker
|
||||||
|
3.0
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flex_color_picker-3.7.1/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flex_color_picker-3.7.1/lib/
|
||||||
|
flex_seed_scheme
|
||||||
|
3.0
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flex_seed_scheme-3.5.1/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flex_seed_scheme-3.5.1/lib/
|
||||||
flustars_flutter3
|
flustars_flutter3
|
||||||
2.12
|
2.12
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flustars_flutter3-3.0.0/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flustars_flutter3-3.0.0/
|
||||||
@@ -158,10 +182,18 @@ flutter_widget_from_html_core
|
|||||||
3.4
|
3.4
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_widget_from_html_core-0.16.1/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_widget_from_html_core-0.16.1/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_widget_from_html_core-0.16.1/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_widget_from_html_core-0.16.1/lib/
|
||||||
|
font_awesome_flutter
|
||||||
|
3.0
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/font_awesome_flutter-10.9.1/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/font_awesome_flutter-10.9.1/lib/
|
||||||
get
|
get
|
||||||
2.15
|
2.15
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/get-4.7.2/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/get-4.7.2/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/get-4.7.2/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/get-4.7.2/lib/
|
||||||
|
hand_signature
|
||||||
|
3.0
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/hand_signature-3.1.0+2/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/hand_signature-3.1.0+2/lib/
|
||||||
html
|
html
|
||||||
3.2
|
3.2
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/html-0.15.6/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/html-0.15.6/
|
||||||
@@ -170,10 +202,22 @@ http
|
|||||||
3.4
|
3.4
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http-1.5.0/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http-1.5.0/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http-1.5.0/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http-1.5.0/lib/
|
||||||
|
http_client_helper
|
||||||
|
2.12
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http_client_helper-3.0.0/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http_client_helper-3.0.0/lib/
|
||||||
http_parser
|
http_parser
|
||||||
3.4
|
3.4
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http_parser-4.1.2/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http_parser-4.1.2/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http_parser-4.1.2/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/http_parser-4.1.2/lib/
|
||||||
|
image
|
||||||
|
3.0
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image-4.5.4/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image-4.5.4/lib/
|
||||||
|
image_editor_plus
|
||||||
|
2.17
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_editor_plus-1.0.6/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_editor_plus-1.0.6/lib/
|
||||||
image_gallery_saver_plus
|
image_gallery_saver_plus
|
||||||
3.5
|
3.5
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_gallery_saver_plus-4.0.1/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_gallery_saver_plus-4.0.1/
|
||||||
@@ -214,6 +258,10 @@ intl
|
|||||||
3.3
|
3.3
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/intl-0.20.2/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/intl-0.20.2/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/intl-0.20.2/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/intl-0.20.2/lib/
|
||||||
|
js
|
||||||
|
3.1
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/js-0.7.1/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/js-0.7.1/lib/
|
||||||
leak_tracker
|
leak_tracker
|
||||||
3.2
|
3.2
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/leak_tracker-10.0.7/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/leak_tracker-10.0.7/
|
||||||
@@ -242,6 +290,10 @@ material_color_utilities
|
|||||||
2.17
|
2.17
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.11.1/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.11.1/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.11.1/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.11.1/lib/
|
||||||
|
matrix2d
|
||||||
|
2.12
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/matrix2d-1.0.4/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/matrix2d-1.0.4/lib/
|
||||||
meta
|
meta
|
||||||
2.12
|
2.12
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/meta-1.15.0/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/meta-1.15.0/
|
||||||
@@ -330,6 +382,10 @@ plugin_platform_interface
|
|||||||
3.0
|
3.0
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/plugin_platform_interface-2.1.8/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/plugin_platform_interface-2.1.8/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/plugin_platform_interface-2.1.8/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/plugin_platform_interface-2.1.8/lib/
|
||||||
|
posix
|
||||||
|
3.0
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/posix-6.0.3/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/posix-6.0.3/lib/
|
||||||
provider
|
provider
|
||||||
2.12
|
2.12
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/provider-6.1.5+1/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/provider-6.1.5+1/
|
||||||
@@ -342,6 +398,10 @@ rational
|
|||||||
2.14
|
2.14
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/rational-2.2.3/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/rational-2.2.3/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/rational-2.2.3/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/rational-2.2.3/lib/
|
||||||
|
reorderables
|
||||||
|
2.12
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/reorderables-0.6.0/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/reorderables-0.6.0/lib/
|
||||||
screen_brightness
|
screen_brightness
|
||||||
3.0
|
3.0
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness-2.1.7/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness-2.1.7/
|
||||||
@@ -370,6 +430,10 @@ screen_brightness_windows
|
|||||||
3.0
|
3.0
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness_windows-2.1.0/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness_windows-2.1.0/
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness_windows-2.1.0/lib/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness_windows-2.1.0/lib/
|
||||||
|
screenshot
|
||||||
|
2.12
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screenshot-3.0.0/
|
||||||
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screenshot-3.0.0/lib/
|
||||||
shared_preferences
|
shared_preferences
|
||||||
3.5
|
3.5
|
||||||
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-2.5.3/
|
file:///Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-2.5.3/
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
3.27.4
|
3.38.5
|
||||||
55
.flutter-plugins
Normal file
55
.flutter-plugins
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
# This is a generated file; do not edit or check into version control.
|
||||||
|
device_info_plus=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/device_info_plus-11.3.0/
|
||||||
|
file_selector_linux=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_linux-0.9.3+2/
|
||||||
|
file_selector_macos=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_macos-0.9.4+3/
|
||||||
|
file_selector_windows=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/file_selector_windows-0.9.3+4/
|
||||||
|
flutter_inappwebview=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview-6.1.5/
|
||||||
|
flutter_inappwebview_android=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_android-1.1.3/
|
||||||
|
flutter_inappwebview_ios=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_ios-1.1.2/
|
||||||
|
flutter_inappwebview_macos=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_macos-1.1.2/
|
||||||
|
flutter_inappwebview_web=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_web-1.1.2/
|
||||||
|
flutter_inappwebview_windows=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_windows-0.6.0/
|
||||||
|
flutter_plugin_android_lifecycle=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/flutter_plugin_android_lifecycle-2.0.29/
|
||||||
|
image_gallery_saver_plus=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_gallery_saver_plus-4.0.1/
|
||||||
|
image_picker=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker-1.2.0/
|
||||||
|
image_picker_android=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_android-0.8.13/
|
||||||
|
image_picker_for_web=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_for_web-3.1.0/
|
||||||
|
image_picker_ios=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_ios-0.8.13/
|
||||||
|
image_picker_linux=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_linux-0.2.2/
|
||||||
|
image_picker_macos=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_macos-0.2.2/
|
||||||
|
image_picker_windows=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/image_picker_windows-0.2.2/
|
||||||
|
package_info_plus=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/package_info_plus-9.0.0/
|
||||||
|
path_provider=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path_provider-2.1.5/
|
||||||
|
path_provider_android=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path_provider_android-2.2.17/
|
||||||
|
path_provider_foundation=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path_provider_foundation-2.4.1/
|
||||||
|
path_provider_linux=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path_provider_linux-2.2.1/
|
||||||
|
path_provider_windows=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/path_provider_windows-2.3.0/
|
||||||
|
permission_handler=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/permission_handler-11.4.0/
|
||||||
|
permission_handler_android=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/permission_handler_android-12.1.0/
|
||||||
|
permission_handler_apple=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/permission_handler_apple-9.4.7/
|
||||||
|
permission_handler_html=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/permission_handler_html-0.1.3+5/
|
||||||
|
permission_handler_windows=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/permission_handler_windows-0.2.1/
|
||||||
|
screen_brightness=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness-2.1.7/
|
||||||
|
screen_brightness_android=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness_android-2.1.3/
|
||||||
|
screen_brightness_ios=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness_ios-2.1.2/
|
||||||
|
screen_brightness_macos=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness_macos-2.1.1/
|
||||||
|
screen_brightness_ohos=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness_ohos-2.1.2/
|
||||||
|
screen_brightness_windows=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness_windows-2.1.0/
|
||||||
|
shared_preferences=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-2.5.3/
|
||||||
|
shared_preferences_android=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_android-2.4.11/
|
||||||
|
shared_preferences_foundation=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_foundation-2.5.4/
|
||||||
|
shared_preferences_linux=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_linux-2.4.1/
|
||||||
|
shared_preferences_web=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_web-2.4.3/
|
||||||
|
shared_preferences_windows=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_windows-2.4.1/
|
||||||
|
url_launcher=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher-6.3.2/
|
||||||
|
url_launcher_android=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_android-6.3.17/
|
||||||
|
url_launcher_ios=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_ios-6.3.3/
|
||||||
|
url_launcher_linux=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_linux-3.2.1/
|
||||||
|
url_launcher_macos=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_macos-3.2.2/
|
||||||
|
url_launcher_web=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_web-2.4.1/
|
||||||
|
url_launcher_windows=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_windows-3.1.4/
|
||||||
|
video_player=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player-2.10.0/
|
||||||
|
video_player_android=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player_android-2.8.4/
|
||||||
|
video_player_avfoundation=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player_avfoundation-2.8.4/
|
||||||
|
video_player_web=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/video_player_web-2.4.0/
|
||||||
|
wakelock_plus=/Users/wxl/.pub-cache/hosted/pub.flutter-io.cn/wakelock_plus-1.4.0/
|
||||||
1
.flutter-plugins-dependencies
Normal file
1
.flutter-plugins-dependencies
Normal file
File diff suppressed because one or more lines are too long
6
.idea/MarsCodeWorkspaceAppSettings.xml
generated
Normal file
6
.idea/MarsCodeWorkspaceAppSettings.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="com.codeverse.userSettings.MarscodeWorkspaceAppSettingsState">
|
||||||
|
<option name="progress" value="1.0" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
57
.idea/flutter_common.iml
generated
57
.idea/flutter_common.iml
generated
@@ -6,6 +6,63 @@
|
|||||||
<excludeFolder url="file://$MODULE_DIR$/.dart_tool" />
|
<excludeFolder url="file://$MODULE_DIR$/.dart_tool" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/.pub" />
|
<excludeFolder url="file://$MODULE_DIR$/.pub" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build" />
|
<excludeFolder url="file://$MODULE_DIR$/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/device_info_plus/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/device_info_plus/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/device_info_plus/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/device_info_plus/example/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/device_info_plus/example/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/device_info_plus/example/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/file_selector_linux/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/file_selector_linux/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/file_selector_linux/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/file_selector_linux/example/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/file_selector_linux/example/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/file_selector_linux/example/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/image_picker_linux/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/image_picker_linux/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/image_picker_linux/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/image_picker_linux/example/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/image_picker_linux/example/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/image_picker_linux/example/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/package_info_plus/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/package_info_plus/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/package_info_plus/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/package_info_plus/example/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/package_info_plus/example/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/package_info_plus/example/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/path_provider_linux/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/path_provider_linux/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/path_provider_linux/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/path_provider_linux/example/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/path_provider_linux/example/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/path_provider_linux/example/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/shared_preferences_linux/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/shared_preferences_linux/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/shared_preferences_linux/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/shared_preferences_linux/example/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/shared_preferences_linux/example/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/shared_preferences_linux/example/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/url_launcher_linux/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/url_launcher_linux/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/url_launcher_linux/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/url_launcher_linux/example/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/url_launcher_linux/example/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/url_launcher_linux/example/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/wakelock_plus/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/wakelock_plus/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/wakelock_plus/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/wakelock_plus/example/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/wakelock_plus/example/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/wakelock_plus/example/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/volume_controller/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/volume_controller/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/volume_controller/build" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/volume_controller/example/.dart_tool" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/volume_controller/example/.pub" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/example/linux/flutter/ephemeral/.plugin_symlinks/volume_controller/example/build" />
|
||||||
</content>
|
</content>
|
||||||
<orderEntry type="inheritedJdk" />
|
<orderEntry type="inheritedJdk" />
|
||||||
<orderEntry type="sourceFolder" forTests="false" />
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
|||||||
1476
.idea/libraries/Dart_Packages.xml
generated
Normal file
1476
.idea/libraries/Dart_Packages.xml
generated
Normal file
File diff suppressed because it is too large
Load Diff
52
.idea/libraries/Flutter_Plugins.xml
generated
52
.idea/libraries/Flutter_Plugins.xml
generated
@@ -3,49 +3,53 @@
|
|||||||
<CLASSES>
|
<CLASSES>
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/path_provider-2.1.5" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/path_provider-2.1.5" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_windows-0.2.2" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_windows-0.2.2" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/path_provider_foundation-2.4.1" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness-2.1.7" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/screen_brightness-2.1.7" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_macos-3.2.2" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_gallery_saver_plus-4.0.1" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_gallery_saver_plus-4.0.1" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/video_player_web-2.4.0" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/video_player_web-2.4.0" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_macos-0.2.2" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_android-0.8.13" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_android-6.3.17" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/permission_handler_html-0.1.3+5" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/permission_handler_html-0.1.3+5" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview-6.1.5" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview-6.1.5" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_ios-1.1.2" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_ios-1.1.2" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_for_web-3.1.0" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/file_selector_macos-0.9.4+3" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher-6.3.2" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher-6.3.2" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_web-2.4.1" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_windows-2.4.1" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_windows-2.4.1" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_windows-3.1.4" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/path_provider_android-2.2.17" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/package_info_plus-9.0.0" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/package_info_plus-9.0.0" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_ios-0.8.13" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_web-2.4.3" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_web-2.4.3" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_linux-3.2.1" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_android-2.4.11" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/file_selector_linux-0.9.3+2" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/video_player-2.10.0" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_linux-2.4.1" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_linux-2.4.1" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_foundation-2.5.4" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/file_selector_windows-0.9.3+4" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/wakelock_plus-1.4.0" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/wakelock_plus-1.4.0" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/path_provider_linux-2.2.1" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/path_provider_linux-2.2.1" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_ios-6.3.3" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-2.5.3" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_linux-0.2.2" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_linux-0.2.2" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker-1.2.0" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/permission_handler-11.4.0" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/device_info_plus-11.3.0" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/video_player_avfoundation-2.8.4" />
|
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_windows-0.6.0" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_windows-0.6.0" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/path_provider_windows-2.3.0" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/path_provider_windows-2.3.0" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_macos-1.1.2" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_macos-1.1.2" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_android-1.1.3" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_android-1.1.3" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_web-1.1.2" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/flutter_inappwebview_web-1.1.2" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/video_player_android-2.8.4" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/video_player-2.10.1" />
|
||||||
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/permission_handler-11.4.0" />
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/volume_controller-3.4.1" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/video_player_android-2.9.1" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_macos-3.2.5" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/file_selector_macos-0.9.5" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_for_web-3.1.1" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_android-2.4.18" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_windows-3.1.5" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_linux-3.2.2" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_macos-0.2.2+1" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/file_selector_windows-0.9.3+5" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/device_info_plus-11.5.0" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_ios-6.3.6" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker-1.2.1" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences-2.5.4" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_ios-0.8.13+3" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_android-6.3.28" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/file_selector_linux-0.9.4" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/shared_preferences_foundation-2.5.6" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/path_provider_android-2.2.22" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/sqflite-2.4.2" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/sqflite_android-2.4.2+2" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/sqflite_darwin-2.4.2" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/image_picker_android-0.8.13+12" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/url_launcher_web-2.4.2" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/path_provider_foundation-2.6.0" />
|
||||||
|
<root url="file://$USER_HOME$/.pub-cache/hosted/pub.flutter-io.cn/video_player_avfoundation-2.9.0" />
|
||||||
</CLASSES>
|
</CLASSES>
|
||||||
<JAVADOC />
|
<JAVADOC />
|
||||||
<SOURCES />
|
<SOURCES />
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ pluginManagement {
|
|||||||
plugins {
|
plugins {
|
||||||
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
|
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
|
||||||
id "com.android.application" version "8.1.0" apply false
|
id "com.android.application" version "8.1.0" apply false
|
||||||
id "org.jetbrains.kotlin.android" version "1.8.22" apply false
|
id "org.jetbrains.kotlin.android" version "2.2.21" apply false
|
||||||
}
|
}
|
||||||
|
|
||||||
include ":app"
|
include ":app"
|
||||||
|
|||||||
62
example/lib/exif/customer_exif_Page.dart
Normal file
62
example/lib/exif/customer_exif_Page.dart
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
import 'package:dio/dio.dart';
|
||||||
|
// import 'package:exif/exif.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:image_picker/image_picker.dart';
|
||||||
|
|
||||||
|
|
||||||
|
class CustomerExifPage extends StatefulWidget {
|
||||||
|
const CustomerExifPage({super.key});
|
||||||
|
|
||||||
|
@override
|
||||||
|
State<CustomerExifPage> createState() => _CustomerExifPageState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class _CustomerExifPageState extends State<CustomerExifPage> {
|
||||||
|
XFile? pickedFile;
|
||||||
|
Map<String, Object>? attributes;
|
||||||
|
DateTime? shootingDate;
|
||||||
|
|
||||||
|
@override
|
||||||
|
void initState() {
|
||||||
|
// TODO: implement initState
|
||||||
|
super.initState();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Scaffold(
|
||||||
|
appBar: AppBar(
|
||||||
|
backgroundColor: Theme.of(context).colorScheme.inversePrimary,
|
||||||
|
title: Text('图片信息'),
|
||||||
|
), //
|
||||||
|
body: Center(
|
||||||
|
child: TextButton(
|
||||||
|
onPressed: () async {
|
||||||
|
var response = await Dio().get('https://static.cop.jingheyijia.com/wxapp-map2/upload/moment/2025625/app-yctgxYDwcPkh.jpg');
|
||||||
|
print('response========= $response');
|
||||||
|
if (response.statusCode == 200) {
|
||||||
|
// final data = await readExifFromBytes(response.data);
|
||||||
|
// print('照片信息========= $data');
|
||||||
|
// setState(() {
|
||||||
|
// exifData = data;
|
||||||
|
// });
|
||||||
|
}
|
||||||
|
// pickedFile =
|
||||||
|
// await ImagePicker().pickImage(source: ImageSource.gallery);
|
||||||
|
// if (pickedFile == null) {
|
||||||
|
// return;
|
||||||
|
// }
|
||||||
|
// print('照片信息========= ${pickedFile?.path}/');
|
||||||
|
// exif = await Exif.fromPath(pickedFile!.path);
|
||||||
|
// coordinates = await exif!.getLatLong();
|
||||||
|
// print('地位信息========= $coordinates');
|
||||||
|
// attributes = await exif!.getAttributes();
|
||||||
|
// print('attributes========= $attributes');
|
||||||
|
// shootingDate = await exif!.getOriginalDate();
|
||||||
|
// print('shootingDate========= $shootingDate');
|
||||||
|
},
|
||||||
|
child: Text('IMAGES')),
|
||||||
|
), // This trailing comma makes auto-formatting nicer for build methods.
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,6 +1,10 @@
|
|||||||
import 'package:dio/dio.dart';
|
import 'package:dio/dio.dart';
|
||||||
|
import 'package:example/exif/customer_exif_Page.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
|
import 'package:flutter_common/upload_image/look_images_widget.dart';
|
||||||
|
import 'package:flutter_common/upload_image/upload_images_tool.dart';
|
||||||
|
import 'package:get/get.dart';
|
||||||
import 'package:image_editor_plus/image_editor_plus.dart';
|
import 'package:image_editor_plus/image_editor_plus.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
@@ -13,33 +17,21 @@ class MyApp extends StatelessWidget {
|
|||||||
// This widget is the root of your application.
|
// This widget is the root of your application.
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return MaterialApp(
|
return GetMaterialApp(
|
||||||
title: 'Flutter Demo',
|
title: '熊猫文旅通',
|
||||||
|
debugShowCheckedModeBanner: false,
|
||||||
theme: ThemeData(
|
theme: ThemeData(
|
||||||
// This is the theme of your application.
|
appBarTheme: AppBarTheme(surfaceTintColor: Colors.transparent),
|
||||||
//
|
scaffoldBackgroundColor: const Color(0xffF5F5F5),
|
||||||
// TRY THIS: Try running your application with "flutter run". You'll see
|
// useMaterial3: true,
|
||||||
// the application has a purple toolbar. Then, without quitting the app,
|
// colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple)
|
||||||
// try changing the seedColor in the colorScheme below to Colors.green
|
// .copyWith(background: const Color(0xffF5F5F5)),
|
||||||
// and then invoke "hot reload" (save your changes or press the "hot
|
|
||||||
// reload" button in a Flutter-supported IDE, or press "r" if you used
|
|
||||||
// the command line to start the app).
|
|
||||||
//
|
|
||||||
// Notice that the counter didn't reset back to zero; the application
|
|
||||||
// state is not lost during the reload. To reset the state, use hot
|
|
||||||
// restart instead.
|
|
||||||
//
|
|
||||||
// This works for code too, not just values: Most code changes can be
|
|
||||||
// tested with just a hot reload.
|
|
||||||
colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
|
|
||||||
useMaterial3: true,
|
|
||||||
),
|
),
|
||||||
home: const MyHomePage(title: 'Flutter Demo Home Page'),
|
home: const MyHomePage(title: '编辑图片'),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// Dio 最简版:网络图片转 Uint8List
|
/// Dio 最简版:网络图片转 Uint8List
|
||||||
Future<Uint8List?> networkImageToUint8ListWithDio(String imageUrl) async {
|
Future<Uint8List?> networkImageToUint8ListWithDio(String imageUrl) async {
|
||||||
final dio = Dio(); // 初始化 Dio 实例
|
final dio = Dio(); // 初始化 Dio 实例
|
||||||
@@ -50,16 +42,13 @@ Future<Uint8List?> networkImageToUint8ListWithDio(String imageUrl) async {
|
|||||||
options: Options(responseType: ResponseType.bytes),
|
options: Options(responseType: ResponseType.bytes),
|
||||||
);
|
);
|
||||||
// 响应成功且数据非空时,直接转为 Uint8List
|
// 响应成功且数据非空时,直接转为 Uint8List
|
||||||
return response.statusCode == 200 && response.data != null
|
return response.statusCode == 200 && response.data != null ? Uint8List.fromList(response.data!) : null;
|
||||||
? Uint8List.fromList(response.data!)
|
|
||||||
: null;
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
print('图片转换失败:$e'); // 捕获网络错误、URL 非法等异常
|
print('图片转换失败:$e'); // 捕获网络错误、URL 非法等异常
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class MyHomePage extends StatefulWidget {
|
class MyHomePage extends StatefulWidget {
|
||||||
const MyHomePage({super.key, required this.title});
|
const MyHomePage({super.key, required this.title});
|
||||||
|
|
||||||
@@ -81,16 +70,15 @@ class MyHomePage extends StatefulWidget {
|
|||||||
class _MyHomePageState extends State<MyHomePage> {
|
class _MyHomePageState extends State<MyHomePage> {
|
||||||
final int _counter = 0;
|
final int _counter = 0;
|
||||||
|
|
||||||
Future<void> _incrementCounter()async {
|
Future<Uint8List?> editImage({required String url})async{
|
||||||
String imageUrl = 'https://static.cop.jingheyijia.com/wxapp-map2/upload/moment/20251029/app-bpItvFOQufCL.jpg';
|
Uint8List? imageBytes = await networkImageToUint8ListWithDio(url);
|
||||||
Uint8List? imageBytes = await networkImageToUint8ListWithDio(imageUrl);
|
|
||||||
ImageEditor.setI18n({
|
ImageEditor.setI18n({
|
||||||
'crop': '裁剪',
|
'crop': '裁剪',
|
||||||
'rotate left': '左旋转',
|
'rotate left': '左旋转',
|
||||||
'rotate right': '右旋转',
|
'rotate right': '右旋转',
|
||||||
'flip': '水平翻转',
|
'flip': '水平翻转',
|
||||||
'brush': '涂抹',
|
'brush': '涂抹',
|
||||||
'link':'链接',
|
'link': '链接',
|
||||||
'save': '保存',
|
'save': '保存',
|
||||||
'text': '文本',
|
'text': '文本',
|
||||||
'blur': '模糊',
|
'blur': '模糊',
|
||||||
@@ -107,8 +95,8 @@ class _MyHomePageState extends State<MyHomePage> {
|
|||||||
'color opacity': '透明度',
|
'color opacity': '透明度',
|
||||||
'blur radius': '模糊半径',
|
'blur radius': '模糊半径',
|
||||||
});
|
});
|
||||||
if(mounted){
|
if (mounted) {
|
||||||
final editedImage = await Navigator.push(
|
Uint8List? editedImage = await Navigator.push(
|
||||||
context,
|
context,
|
||||||
MaterialPageRoute(
|
MaterialPageRoute(
|
||||||
builder: (context) => ImageEditor(
|
builder: (context) => ImageEditor(
|
||||||
@@ -121,11 +109,16 @@ class _MyHomePageState extends State<MyHomePage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
print(editedImage);
|
return editedImage;
|
||||||
}
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Future<void> _incrementCounter() async {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
// This method is rerun every time setState is called, for instance as done
|
// This method is rerun every time setState is called, for instance as done
|
||||||
@@ -180,4 +173,4 @@ class _MyHomePageState extends State<MyHomePage> {
|
|||||||
), // This trailing comma makes auto-formatting nicer for build methods.
|
), // This trailing comma makes auto-formatting nicer for build methods.
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,9 +7,17 @@
|
|||||||
#include "generated_plugin_registrant.h"
|
#include "generated_plugin_registrant.h"
|
||||||
|
|
||||||
#include <file_selector_linux/file_selector_plugin.h>
|
#include <file_selector_linux/file_selector_plugin.h>
|
||||||
|
#include <url_launcher_linux/url_launcher_plugin.h>
|
||||||
|
#include <volume_controller/volume_controller_plugin.h>
|
||||||
|
|
||||||
void fl_register_plugins(FlPluginRegistry* registry) {
|
void fl_register_plugins(FlPluginRegistry* registry) {
|
||||||
g_autoptr(FlPluginRegistrar) file_selector_linux_registrar =
|
g_autoptr(FlPluginRegistrar) file_selector_linux_registrar =
|
||||||
fl_plugin_registry_get_registrar_for_plugin(registry, "FileSelectorPlugin");
|
fl_plugin_registry_get_registrar_for_plugin(registry, "FileSelectorPlugin");
|
||||||
file_selector_plugin_register_with_registrar(file_selector_linux_registrar);
|
file_selector_plugin_register_with_registrar(file_selector_linux_registrar);
|
||||||
|
g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar =
|
||||||
|
fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin");
|
||||||
|
url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar);
|
||||||
|
g_autoptr(FlPluginRegistrar) volume_controller_registrar =
|
||||||
|
fl_plugin_registry_get_registrar_for_plugin(registry, "VolumeControllerPlugin");
|
||||||
|
volume_controller_plugin_register_with_registrar(volume_controller_registrar);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
list(APPEND FLUTTER_PLUGIN_LIST
|
list(APPEND FLUTTER_PLUGIN_LIST
|
||||||
file_selector_linux
|
file_selector_linux
|
||||||
|
url_launcher_linux
|
||||||
|
volume_controller
|
||||||
)
|
)
|
||||||
|
|
||||||
list(APPEND FLUTTER_FFI_PLUGIN_LIST
|
list(APPEND FLUTTER_FFI_PLUGIN_LIST
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -28,6 +28,8 @@ environment:
|
|||||||
# the latest version available on pub.dev. To see which dependencies have newer
|
# the latest version available on pub.dev. To see which dependencies have newer
|
||||||
# versions available, run `flutter pub outdated`.
|
# versions available, run `flutter pub outdated`.
|
||||||
dependencies:
|
dependencies:
|
||||||
|
flutter_common:
|
||||||
|
path: ../
|
||||||
flutter:
|
flutter:
|
||||||
sdk: flutter
|
sdk: flutter
|
||||||
|
|
||||||
@@ -35,7 +37,11 @@ dependencies:
|
|||||||
# Use with the CupertinoIcons class for iOS style icons.
|
# Use with the CupertinoIcons class for iOS style icons.
|
||||||
cupertino_icons: ^1.0.8
|
cupertino_icons: ^1.0.8
|
||||||
image_editor_plus: ^1.0.6
|
image_editor_plus: ^1.0.6
|
||||||
|
get: ^4.6.5
|
||||||
dio: ^5.9.0
|
dio: ^5.9.0
|
||||||
|
image_picker: ^1.1.0 #相册单选
|
||||||
|
# native_exif: ^0.6.2
|
||||||
|
# exif: ^3.3.0
|
||||||
|
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
flutter_test:
|
flutter_test:
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import 'package:flutter/services.dart';
|
|||||||
///日期弹窗显示
|
///日期弹窗显示
|
||||||
class CustomDatePicker extends StatefulWidget {
|
class CustomDatePicker extends StatefulWidget {
|
||||||
CustomDatePicker(
|
CustomDatePicker(
|
||||||
{Key? key,
|
{super.key,
|
||||||
required DateTime initialDate,
|
required DateTime initialDate,
|
||||||
required DateTime firstDate,
|
required DateTime firstDate,
|
||||||
required DateTime lastDate,
|
required DateTime lastDate,
|
||||||
@@ -31,8 +31,7 @@ class CustomDatePicker extends StatefulWidget {
|
|||||||
lastDate = DateUtils.dateOnly(lastDate),
|
lastDate = DateUtils.dateOnly(lastDate),
|
||||||
currentDate = DateUtils.dateOnly(currentDate ?? DateTime.now()),
|
currentDate = DateUtils.dateOnly(currentDate ?? DateTime.now()),
|
||||||
assert(onDateChanged != null),
|
assert(onDateChanged != null),
|
||||||
assert(initialCalendarMode != null),
|
assert(initialCalendarMode != null) {
|
||||||
super(key: key) {
|
|
||||||
assert(
|
assert(
|
||||||
!this.lastDate.isBefore(this.firstDate),
|
!this.lastDate.isBefore(this.firstDate),
|
||||||
'lastDate ${this.lastDate} must be on or after firstDate ${this.firstDate}.',
|
'lastDate ${this.lastDate} must be on or after firstDate ${this.firstDate}.',
|
||||||
|
|||||||
@@ -216,6 +216,7 @@ class HttpUtils {
|
|||||||
* Dio库error统一处理
|
* Dio库error统一处理
|
||||||
*/
|
*/
|
||||||
static void _formatError(DioException error) {
|
static void _formatError(DioException error) {
|
||||||
|
EasyLoading.dismiss();
|
||||||
switch (error.type) {
|
switch (error.type) {
|
||||||
case DioExceptionType.cancel:
|
case DioExceptionType.cancel:
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -1,21 +1,43 @@
|
|||||||
|
import 'dart:io';
|
||||||
|
|
||||||
|
import 'package:dio/dio.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter/services.dart';
|
||||||
|
import 'package:flutter_common/upload_image/ossUtil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:photo_view/photo_view.dart';
|
import 'package:image_editor_plus/image_editor_plus.dart';
|
||||||
|
import 'package:path_provider/path_provider.dart';
|
||||||
import 'package:photo_view/photo_view_gallery.dart';
|
import 'package:photo_view/photo_view_gallery.dart';
|
||||||
|
|
||||||
class LookImagesTool {
|
class LookImagesTool {
|
||||||
static lookImages({
|
static lookImages({
|
||||||
required List<String> listData,
|
required List<String> listData,
|
||||||
int? currentPage,
|
int? currentPage,
|
||||||
|
void Function(String)? onCallBack,
|
||||||
|
String? oSSAccessKeyId,
|
||||||
|
Function? callBack,
|
||||||
|
bool? isShowEdit,
|
||||||
|
String? policy,
|
||||||
|
String? callback,
|
||||||
|
String? signature,
|
||||||
|
String? ossDirectory,
|
||||||
|
String? ossHost,
|
||||||
}) async {
|
}) async {
|
||||||
showDialog(
|
showDialog(
|
||||||
context: Get.context!,
|
context: Get.context!,
|
||||||
useSafeArea: false,
|
useSafeArea: false,
|
||||||
builder: (_) {
|
builder: (_) {
|
||||||
return LookImagesWidget(
|
return LookImagesWidget(
|
||||||
listData: listData,
|
listData: listData,
|
||||||
currentPage: currentPage,
|
currentPage: currentPage,
|
||||||
);
|
onCallBack: onCallBack,
|
||||||
|
oSSAccessKeyId: oSSAccessKeyId,
|
||||||
|
policy: policy,
|
||||||
|
callback: callback,
|
||||||
|
isShowEdit: isShowEdit,
|
||||||
|
signature: signature,
|
||||||
|
ossDirectory: ossDirectory,
|
||||||
|
ossHost: ossHost);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -23,11 +45,27 @@ class LookImagesTool {
|
|||||||
class LookImagesWidget extends StatefulWidget {
|
class LookImagesWidget extends StatefulWidget {
|
||||||
final List<String> listData;
|
final List<String> listData;
|
||||||
final int? currentPage;
|
final int? currentPage;
|
||||||
|
final String? oSSAccessKeyId;
|
||||||
|
final String? policy;
|
||||||
|
final String? callback;
|
||||||
|
final String? signature;
|
||||||
|
final String? ossDirectory;
|
||||||
|
final String? ossHost;
|
||||||
|
final void Function(String)? onCallBack;
|
||||||
|
final bool? isShowEdit;
|
||||||
|
|
||||||
const LookImagesWidget({
|
const LookImagesWidget({
|
||||||
super.key,
|
super.key,
|
||||||
required this.listData,
|
required this.listData,
|
||||||
this.currentPage,
|
this.currentPage,
|
||||||
|
this.oSSAccessKeyId,
|
||||||
|
this.policy,
|
||||||
|
this.callback,
|
||||||
|
this.signature,
|
||||||
|
this.ossDirectory,
|
||||||
|
this.ossHost,
|
||||||
|
this.onCallBack,
|
||||||
|
this.isShowEdit,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -39,6 +77,132 @@ class _LookImagesWidgetState extends State<LookImagesWidget> {
|
|||||||
late int currentPage;
|
late int currentPage;
|
||||||
late int initialPage = 0;
|
late int initialPage = 0;
|
||||||
|
|
||||||
|
/// Dio 最简版:网络图片转 Uint8List
|
||||||
|
Future<Uint8List?> networkImageToUint8ListWithDio(String imageUrl) async {
|
||||||
|
final dio = Dio(); // 初始化 Dio 实例
|
||||||
|
try {
|
||||||
|
// 发起 GET 请求,响应类型设为字节数组(关键)
|
||||||
|
final response = await dio.get<List<int>>(
|
||||||
|
imageUrl,
|
||||||
|
options: Options(responseType: ResponseType.bytes),
|
||||||
|
);
|
||||||
|
// 响应成功且数据非空时,直接转为 Uint8List
|
||||||
|
return response.statusCode == 200 && response.data != null ? Uint8List.fromList(response.data!) : null;
|
||||||
|
} catch (e) {
|
||||||
|
print('图片转换失败:$e'); // 捕获网络错误、URL 非法等异常
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Future<Uint8List?> editImage({required String url}) async {
|
||||||
|
Uint8List? imageBytes = await networkImageToUint8ListWithDio(url);
|
||||||
|
ImageEditor.setI18n({
|
||||||
|
'crop': '裁剪',
|
||||||
|
'rotate left': '左旋转',
|
||||||
|
'rotate right': '右旋转',
|
||||||
|
'flip': '水平翻转',
|
||||||
|
'brush': '涂抹',
|
||||||
|
'link': '链接',
|
||||||
|
'save': '保存',
|
||||||
|
'text': '文本',
|
||||||
|
'blur': '模糊',
|
||||||
|
'filter': '滤镜',
|
||||||
|
'size': '大小',
|
||||||
|
'color': '颜色',
|
||||||
|
'background color': '背景颜色',
|
||||||
|
'background opacity': '背景透明度',
|
||||||
|
'reset': '重置',
|
||||||
|
'freeform': '自由裁剪',
|
||||||
|
'remove': '移除',
|
||||||
|
'emoji': '表情',
|
||||||
|
'slider color': '滑块颜色',
|
||||||
|
'color opacity': '透明度',
|
||||||
|
'blur radius': '模糊半径',
|
||||||
|
});
|
||||||
|
if (mounted) {
|
||||||
|
Uint8List? editedImage = await Navigator.push(
|
||||||
|
context,
|
||||||
|
MaterialPageRoute(
|
||||||
|
builder: (context) => ImageEditor(
|
||||||
|
image: imageBytes,
|
||||||
|
blurOption: null,
|
||||||
|
filtersOption: null,
|
||||||
|
brushOption: null,
|
||||||
|
textOption: null,
|
||||||
|
emojiOption: null,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
return editedImage;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// 可选:根据字节头自动识别文件后缀(如图片、视频)
|
||||||
|
String getExtension(Uint8List uint8List) {
|
||||||
|
if (uint8List.length < 4) return "bin"; // 无法识别时返回二进制后缀
|
||||||
|
|
||||||
|
// PNG 头:89 50 4E 47
|
||||||
|
if (uint8List[0] == 0x89 && uint8List[1] == 0x50 && uint8List[2] == 0x4E && uint8List[3] == 0x47) {
|
||||||
|
return "png";
|
||||||
|
}
|
||||||
|
// JPG 头:FF D8 FF
|
||||||
|
else if (uint8List[0] == 0xFF && uint8List[1] == 0xD8 && uint8List[2] == 0xFF) {
|
||||||
|
return "jpg";
|
||||||
|
}
|
||||||
|
// MP4 头:00 00 00 18 66 74 79 70
|
||||||
|
else if (uint8List.length >= 8 &&
|
||||||
|
uint8List[0] == 0x00 &&
|
||||||
|
uint8List[1] == 0x00 &&
|
||||||
|
uint8List[2] == 0x00 &&
|
||||||
|
uint8List[3] == 0x18 &&
|
||||||
|
uint8List[4] == 0x66 &&
|
||||||
|
uint8List[5] == 0x74 &&
|
||||||
|
uint8List[6] == 0x79 &&
|
||||||
|
uint8List[7] == 0x70) {
|
||||||
|
return "mp4";
|
||||||
|
}
|
||||||
|
// 其他格式可自行扩展(如 GIF、PDF 等)
|
||||||
|
else {
|
||||||
|
return "bin";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Uint8List 转临时 File 并且上传到oss并返回访问路径
|
||||||
|
Future<String?> uint8ListToTempFile(Uint8List uint8List, {String fileName = "temp_file"}) async {
|
||||||
|
if (uint8List.isEmpty) return null;
|
||||||
|
try {
|
||||||
|
// 1. 获取临时存储目录(跨平台兼容)
|
||||||
|
Directory tempDir = await getTemporaryDirectory();
|
||||||
|
|
||||||
|
String tempPath = tempDir.path;
|
||||||
|
|
||||||
|
// 2. 拼接文件路径(可自定义后缀,如 .png、.mp4 等)
|
||||||
|
File tempFile = File("$tempPath/$fileName.${getExtension(uint8List)}"); // 自动识别后缀(可选)
|
||||||
|
|
||||||
|
// 3. 将 Uint8List 写入文件
|
||||||
|
await tempFile.writeAsBytes(uint8List);
|
||||||
|
|
||||||
|
// print("临时文件路径:${tempFile.path}");
|
||||||
|
|
||||||
|
String imageUrl = await UploadOss.upload(
|
||||||
|
tempFile.path,
|
||||||
|
fileType: getExtension(uint8List),
|
||||||
|
oSSAccessKeyId: widget.oSSAccessKeyId ?? '',
|
||||||
|
ossHost: widget.ossHost ?? '',
|
||||||
|
ossDirectory: widget.ossDirectory ?? '',
|
||||||
|
policy: widget.policy ?? '',
|
||||||
|
callback: widget.callback ?? '',
|
||||||
|
signature: widget.signature ?? '',
|
||||||
|
);
|
||||||
|
// print("上传后的访问路径:$imageUrl");
|
||||||
|
return imageUrl;
|
||||||
|
} catch (e) {
|
||||||
|
print("转换临时文件失败:$e");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
listData = widget.listData;
|
listData = widget.listData;
|
||||||
@@ -46,7 +210,6 @@ class _LookImagesWidgetState extends State<LookImagesWidget> {
|
|||||||
initialPage = 0;
|
initialPage = 0;
|
||||||
currentPage = 0;
|
currentPage = 0;
|
||||||
} else {
|
} else {
|
||||||
// initialPage = 0;
|
|
||||||
currentPage = widget.currentPage ?? 0;
|
currentPage = widget.currentPage ?? 0;
|
||||||
}
|
}
|
||||||
super.initState();
|
super.initState();
|
||||||
@@ -77,6 +240,20 @@ class _LookImagesWidgetState extends State<LookImagesWidget> {
|
|||||||
left: 15,
|
left: 15,
|
||||||
top: 50,
|
top: 50,
|
||||||
child: GestureDetector(onTap: () => Get.back(), child: Icon(Icons.arrow_back_ios, color: Colors.white))),
|
child: GestureDetector(onTap: () => Get.back(), child: Icon(Icons.arrow_back_ios, color: Colors.white))),
|
||||||
|
Positioned(
|
||||||
|
right: 15,
|
||||||
|
top: 50,
|
||||||
|
child: GestureDetector(
|
||||||
|
onTap: () async {
|
||||||
|
Uint8List? imageFile = await editImage(url: listData[currentPage]);
|
||||||
|
String? url = await uint8ListToTempFile(imageFile ?? Uint8List(0));
|
||||||
|
if(widget.onCallBack != null){
|
||||||
|
widget.onCallBack!(url??'');
|
||||||
|
}
|
||||||
|
},
|
||||||
|
child: Visibility(
|
||||||
|
visible: widget.isShowEdit??false,
|
||||||
|
child: Icon(Icons.edit, color: Colors.white)))),
|
||||||
//图片张数指示器
|
//图片张数指示器
|
||||||
Positioned(
|
Positioned(
|
||||||
left: 0,
|
left: 0,
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ class UploadImagesTool {
|
|||||||
}) async {
|
}) async {
|
||||||
await chooseCamera(
|
await chooseCamera(
|
||||||
context: context,
|
context: context,
|
||||||
max: max ?? 9,
|
max: max??9,
|
||||||
oSSAccessKeyId: oSSAccessKeyId ?? '',
|
oSSAccessKeyId: oSSAccessKeyId ?? '',
|
||||||
ossHost: ossHost ?? '',
|
ossHost: ossHost ?? '',
|
||||||
ossDirectory: ossDirectory ?? '',
|
ossDirectory: ossDirectory ?? '',
|
||||||
|
|||||||
@@ -1,12 +1,11 @@
|
|||||||
|
import 'package:cached_network_image/cached_network_image.dart';
|
||||||
|
import 'package:easy_debounce/easy_debounce.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart';
|
import 'package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart';
|
||||||
// import 'package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart';
|
// import 'package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart';
|
||||||
import 'package:transparent_image/transparent_image.dart';
|
import 'package:transparent_image/transparent_image.dart';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
///字体样式
|
///字体样式
|
||||||
class CustomerTextStyle extends TextStyle {
|
class CustomerTextStyle extends TextStyle {
|
||||||
final Color? customerColor;
|
final Color? customerColor;
|
||||||
@@ -97,13 +96,12 @@ class CustomerImagesNetworking extends StatelessWidget {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Image.network(
|
return CachedNetworkImage(
|
||||||
key: Key(imageUrl),
|
imageUrl: imageUrl,
|
||||||
imageUrl,
|
|
||||||
width: width,
|
width: width,
|
||||||
height: height,
|
height: height,
|
||||||
fit: fit,
|
fit: fit,
|
||||||
errorBuilder: (_, object, s) {
|
errorWidget: (_, object, s) {
|
||||||
return Container(
|
return Container(
|
||||||
width: width,
|
width: width,
|
||||||
height: height,
|
height: height,
|
||||||
@@ -119,22 +117,44 @@ class CustomerImagesNetworking extends StatelessWidget {
|
|||||||
);
|
);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
return imageUrl.contains('http') == true
|
// return Image.network(
|
||||||
? FadeInImage.memoryNetwork(
|
// key: Key(imageUrl),
|
||||||
placeholder: kTransparentImage,
|
// imageUrl,
|
||||||
width: width,
|
// width: width,
|
||||||
height: height,
|
// height: height,
|
||||||
image: imageUrl,
|
// fit: fit,
|
||||||
fit: fit,
|
// errorBuilder: (_, object, s) {
|
||||||
placeholderErrorBuilder:
|
// return Container(
|
||||||
(_, Object object, StackTrace? stackTrace) {
|
// width: width,
|
||||||
return errorWidget ?? const SizedBox();
|
// height: height,
|
||||||
},
|
// padding: EdgeInsets.all((width ?? 0) / 2),
|
||||||
imageErrorBuilder: (_, Object object, StackTrace? stackTrace) {
|
// child: Center(
|
||||||
return errorWidget ?? const SizedBox();
|
// child: Image.asset(
|
||||||
},
|
// 'assets/images/noContainer.png',
|
||||||
)
|
// // width: width /2,
|
||||||
: errorWidget ?? const SizedBox();
|
// // height: width /2,
|
||||||
|
// fit: fit ?? BoxFit.contain,
|
||||||
|
// ),
|
||||||
|
// ),
|
||||||
|
// );
|
||||||
|
// },
|
||||||
|
// );
|
||||||
|
// return imageUrl.contains('http') == true
|
||||||
|
// ? FadeInImage.memoryNetwork(
|
||||||
|
// placeholder: kTransparentImage,
|
||||||
|
// width: width,
|
||||||
|
// height: height,
|
||||||
|
// image: imageUrl,
|
||||||
|
// fit: fit,
|
||||||
|
// placeholderErrorBuilder:
|
||||||
|
// (_, Object object, StackTrace? stackTrace) {
|
||||||
|
// return errorWidget ?? const SizedBox();
|
||||||
|
// },
|
||||||
|
// imageErrorBuilder: (_, Object object, StackTrace? stackTrace) {
|
||||||
|
// return errorWidget ?? const SizedBox();
|
||||||
|
// },
|
||||||
|
// )
|
||||||
|
// : errorWidget ?? const SizedBox();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_common/utils/file/video/lib/chewie.dart';
|
import 'package:flutter_common/utils/file/video/lib/chewie.dart';
|
||||||
import 'package:video_player/video_player.dart';
|
import 'package:video_player/video_player.dart';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class VideoPlayPage extends StatefulWidget {
|
class VideoPlayPage extends StatefulWidget {
|
||||||
final String? videoUrl;
|
final String? videoUrl;
|
||||||
const VideoPlayPage({super.key, this.videoUrl});
|
const VideoPlayPage({super.key, this.videoUrl});
|
||||||
|
|||||||
@@ -40,96 +40,99 @@ class _CustomerWebViewState extends State<CustomerWebView> {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual,
|
// SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual,
|
||||||
overlays: [SystemUiOverlay.bottom]);
|
// overlays: [SystemUiOverlay.bottom]);
|
||||||
return Stack(
|
return Stack(
|
||||||
alignment: Alignment.topLeft,
|
alignment: Alignment.topLeft,
|
||||||
children: [
|
children: [
|
||||||
InAppWebView(
|
Padding(
|
||||||
key: webViewKey,
|
padding: const EdgeInsets.only(top: 16,bottom: 16),
|
||||||
// webViewEnvironment: webViewEnvironment,
|
child: InAppWebView(
|
||||||
initialUrlRequest: URLRequest(url: WebUri(widget.url)),
|
key: webViewKey,
|
||||||
// initialUrlRequest:
|
// webViewEnvironment: webViewEnvironment,
|
||||||
// URLRequest(url: WebUri(Uri.base.toString().replaceFirst("/#/", "/") + 'page.html')),
|
initialUrlRequest: URLRequest(url: WebUri(widget.url)),
|
||||||
// initialFile: "assets/index.html",
|
// initialUrlRequest:
|
||||||
initialUserScripts: UnmodifiableListView<UserScript>([]),
|
// URLRequest(url: WebUri(Uri.base.toString().replaceFirst("/#/", "/") + 'page.html')),
|
||||||
initialSettings: settings,
|
// initialFile: "assets/index.html",
|
||||||
// contextMenu: contextMenu,
|
initialUserScripts: UnmodifiableListView<UserScript>([]),
|
||||||
// pullToRefreshController: pullToRefreshController,
|
initialSettings: settings,
|
||||||
onWebViewCreated: (controller) async {
|
// contextMenu: contextMenu,
|
||||||
webViewController = controller;
|
// pullToRefreshController: pullToRefreshController,
|
||||||
},
|
onWebViewCreated: (controller) async {
|
||||||
onLoadStart: (controller, url) {
|
webViewController = controller;
|
||||||
setState(() {
|
},
|
||||||
// this.url = url.toString();
|
onLoadStart: (controller, url) {
|
||||||
// urlController.text = this.url;
|
setState(() {
|
||||||
});
|
// this.url = url.toString();
|
||||||
},
|
// urlController.text = this.url;
|
||||||
// onPermissionRequest: (controller, request) {
|
});
|
||||||
// return PermissionResponse(
|
},
|
||||||
// resources: request.resources,
|
// onPermissionRequest: (controller, request) {
|
||||||
// action: PermissionResponseAction.GRANT);
|
// return PermissionResponse(
|
||||||
// },
|
// resources: request.resources,
|
||||||
// shouldOverrideUrlLoading:
|
// action: PermissionResponseAction.GRANT);
|
||||||
// (controller, navigationAction) async {
|
// },
|
||||||
// var uri = navigationAction.request.url!;
|
// shouldOverrideUrlLoading:
|
||||||
//
|
// (controller, navigationAction) async {
|
||||||
// if (![
|
// var uri = navigationAction.request.url!;
|
||||||
// "http",
|
//
|
||||||
// "https",
|
// if (![
|
||||||
// "file",
|
// "http",
|
||||||
// "chrome",
|
// "https",
|
||||||
// "data",
|
// "file",
|
||||||
// "javascript",
|
// "chrome",
|
||||||
// "about"
|
// "data",
|
||||||
// ].contains(uri.scheme)) {
|
// "javascript",
|
||||||
// if (await canLaunchUrl(uri)) {
|
// "about"
|
||||||
// // Launch the App
|
// ].contains(uri.scheme)) {
|
||||||
// await launchUrl(
|
// if (await canLaunchUrl(uri)) {
|
||||||
// uri,
|
// // Launch the App
|
||||||
// );
|
// await launchUrl(
|
||||||
// // and cancel the request
|
// uri,
|
||||||
// return NavigationActionPolicy.CANCEL;
|
// );
|
||||||
// }
|
// // and cancel the request
|
||||||
// }
|
// return NavigationActionPolicy.CANCEL;
|
||||||
//
|
// }
|
||||||
// return NavigationActionPolicy.ALLOW;
|
// }
|
||||||
// },
|
//
|
||||||
// onLoadStop: (controller, url) {
|
// return NavigationActionPolicy.ALLOW;
|
||||||
// pullToRefreshController?.endRefreshing();
|
// },
|
||||||
// setState(() {
|
// onLoadStop: (controller, url) {
|
||||||
// this.url = url.toString();
|
// pullToRefreshController?.endRefreshing();
|
||||||
// urlController.text = this.url;
|
// setState(() {
|
||||||
// });
|
// this.url = url.toString();
|
||||||
// },
|
// urlController.text = this.url;
|
||||||
// onReceivedError: (controller, request, error) {
|
// });
|
||||||
// pullToRefreshController?.endRefreshing();
|
// },
|
||||||
// },
|
// onReceivedError: (controller, request, error) {
|
||||||
// onProgressChanged: (controller, progress) {
|
// pullToRefreshController?.endRefreshing();
|
||||||
// if (progress == 100) {
|
// },
|
||||||
// pullToRefreshController?.endRefreshing();
|
// onProgressChanged: (controller, progress) {
|
||||||
// }
|
// if (progress == 100) {
|
||||||
// setState(() {
|
// pullToRefreshController?.endRefreshing();
|
||||||
// this.progress = progress / 100;
|
// }
|
||||||
// urlController.text = this.url;
|
// setState(() {
|
||||||
// });
|
// this.progress = progress / 100;
|
||||||
// },
|
// urlController.text = this.url;
|
||||||
// onUpdateVisitedHistory: (controller, url, isReload) {
|
// });
|
||||||
// setState(() {
|
// },
|
||||||
// this.url = url.toString();
|
// onUpdateVisitedHistory: (controller, url, isReload) {
|
||||||
// urlController.text = this.url;
|
// setState(() {
|
||||||
// });
|
// this.url = url.toString();
|
||||||
// },
|
// urlController.text = this.url;
|
||||||
onConsoleMessage: (controller, consoleMessage) {
|
// });
|
||||||
print(consoleMessage);
|
// },
|
||||||
},
|
onConsoleMessage: (controller, consoleMessage) {
|
||||||
|
print(consoleMessage);
|
||||||
|
},
|
||||||
|
),
|
||||||
),
|
),
|
||||||
Visibility(
|
Visibility(
|
||||||
visible: widget.hideBack != true,
|
visible: widget.hideBack != true,
|
||||||
child: GestureDetector(
|
child: GestureDetector(
|
||||||
onTap: () => Navigator.pop(context),
|
onTap: () => Navigator.pop(context),
|
||||||
child: Container(
|
child: Container(
|
||||||
margin: const EdgeInsets.only(left: 16, top: 16),
|
margin: const EdgeInsets.only(left: 16, top: 28),
|
||||||
width: 44,
|
width: 44,
|
||||||
height: 44,
|
height: 44,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
|
|||||||
65
lib/utils/play_video.dart
Normal file
65
lib/utils/play_video.dart
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
|
import 'package:omni_video_player/omni_video_player.dart';
|
||||||
|
|
||||||
|
class PlayVideoPage extends StatefulWidget {
|
||||||
|
|
||||||
|
final String videoUrl;
|
||||||
|
|
||||||
|
const PlayVideoPage({super.key, required this.videoUrl});
|
||||||
|
|
||||||
|
@override
|
||||||
|
State<PlayVideoPage> createState() => _PlayVideoPageState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class _PlayVideoPageState extends State<PlayVideoPage> {
|
||||||
|
OmniPlaybackController? _controller;
|
||||||
|
@override
|
||||||
|
void initState() {
|
||||||
|
// TODO: implement initState
|
||||||
|
super.initState();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void dispose() {
|
||||||
|
// TODO: implement dispose
|
||||||
|
super.dispose();
|
||||||
|
_controller?.dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Scaffold(
|
||||||
|
body: Stack(
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
padding: EdgeInsets.only(bottom: 50.h,top: 150.h),
|
||||||
|
color: Colors.black,
|
||||||
|
child: OmniVideoPlayer(
|
||||||
|
configuration: VideoPlayerConfiguration(
|
||||||
|
videoSourceConfiguration: VideoSourceConfiguration.network(
|
||||||
|
videoUrl: Uri.parse(widget.videoUrl),
|
||||||
|
preferredQualities: [OmniVideoQuality.high1080],
|
||||||
|
),
|
||||||
|
), callbacks: VideoPlayerCallbacks(
|
||||||
|
onControllerCreated: (controller) {
|
||||||
|
setState(() {
|
||||||
|
controller.play();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Positioned(
|
||||||
|
top: 60.h,
|
||||||
|
left: 20.w,
|
||||||
|
child: IconButton(
|
||||||
|
icon: Icon(Icons.arrow_back_ios, color: Colors.white,),
|
||||||
|
onPressed: () => Navigator.of(context).pop(),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -65,7 +65,7 @@ class PullRefreshListWidget extends StatelessWidget {
|
|||||||
footer: footer ??
|
footer: footer ??
|
||||||
ClassicFooter(
|
ClassicFooter(
|
||||||
loadingText: '正在加载...',
|
loadingText: '正在加载...',
|
||||||
noDataText: '没有更多数据',
|
noDataText: '暂无更多数据~',
|
||||||
idleText: '加载更多',
|
idleText: '加载更多',
|
||||||
failedText: '加载失败',
|
failedText: '加载失败',
|
||||||
canLoadingText: '松开加载更多',
|
canLoadingText: '松开加载更多',
|
||||||
|
|||||||
@@ -59,9 +59,11 @@ class ToastUtils {
|
|||||||
bool isShowConfirm = false,
|
bool isShowConfirm = false,
|
||||||
Color? barrierColor,
|
Color? barrierColor,
|
||||||
EdgeInsetsGeometry? padding,
|
EdgeInsetsGeometry? padding,
|
||||||
|
bool useSafeArea = true,
|
||||||
}) {
|
}) {
|
||||||
cancelToast();
|
cancelToast();
|
||||||
return showDialog(
|
return showDialog(
|
||||||
|
useSafeArea: useSafeArea,
|
||||||
context: context,
|
context: context,
|
||||||
builder: (BuildContext ctx) {
|
builder: (BuildContext ctx) {
|
||||||
return Container(
|
return Container(
|
||||||
|
|||||||
598
pubspec.lock
598
pubspec.lock
File diff suppressed because it is too large
Load Diff
@@ -15,6 +15,7 @@ dependencies:
|
|||||||
flutter_easyloading: ^3.0.0
|
flutter_easyloading: ^3.0.0
|
||||||
sticky_headers: ^0.3.0+2 #日历需要
|
sticky_headers: ^0.3.0+2 #日历需要
|
||||||
get: ^4.6.5
|
get: ^4.6.5
|
||||||
|
easy_debounce: ^2.0.3
|
||||||
flutter_screenutil: ^5.9.0
|
flutter_screenutil: ^5.9.0
|
||||||
flustars_flutter3: ^3.0.0 #工具类 SpUtil,ScreenUtil, DirectoryUtil等等。
|
flustars_flutter3: ^3.0.0 #工具类 SpUtil,ScreenUtil, DirectoryUtil等等。
|
||||||
pull_to_refresh: ^2.0.0
|
pull_to_refresh: ^2.0.0
|
||||||
@@ -29,7 +30,7 @@ dependencies:
|
|||||||
transparent_image: ^2.0.1 #图片懒加载
|
transparent_image: ^2.0.1 #图片懒加载
|
||||||
# flutter_cached_pdfview: ^0.4.3 #pdf文件
|
# flutter_cached_pdfview: ^0.4.3 #pdf文件
|
||||||
# webview_flutter: ^4.8.0
|
# webview_flutter: ^4.8.0
|
||||||
video_player: ^2.6.1 #视频
|
video_player: ^2.10.0 #视频
|
||||||
# perfect_volume_control: ^1.0.5 #声音
|
# perfect_volume_control: ^1.0.5 #声音
|
||||||
screen_brightness: ^2.1.7 #亮度
|
screen_brightness: ^2.1.7 #亮度
|
||||||
provider: ^6.0.3
|
provider: ^6.0.3
|
||||||
@@ -38,6 +39,10 @@ dependencies:
|
|||||||
url_launcher: ^6.1.10
|
url_launcher: ^6.1.10
|
||||||
flutter_inappwebview: ^6.1.5
|
flutter_inappwebview: ^6.1.5
|
||||||
device_info_plus: ^11.3.0
|
device_info_plus: ^11.3.0
|
||||||
|
image_editor_plus: ^1.0.6
|
||||||
|
path_provider: ^2.1.5
|
||||||
|
omni_video_player: ^3.5.3
|
||||||
|
cached_network_image: ^3.4.1
|
||||||
|
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
flutter_test:
|
flutter_test:
|
||||||
|
|||||||
Reference in New Issue
Block a user