File tree Expand file tree Collapse file tree 4 files changed +95
-0
lines changed
Expand file tree Collapse file tree 4 files changed +95
-0
lines changed Original file line number Diff line number Diff line change @@ -11,6 +11,7 @@ import firebase_analytics
1111import firebase_core
1212import firebase_crashlytics
1313import firebase_messaging
14+ import flutter_image_compress_macos
1415import geolocator_apple
1516import package_info_plus
1617import path_provider_foundation
@@ -25,6 +26,7 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
2526 FLTFirebaseCorePlugin . register ( with: registry. registrar ( forPlugin: " FLTFirebaseCorePlugin " ) )
2627 FLTFirebaseCrashlyticsPlugin . register ( with: registry. registrar ( forPlugin: " FLTFirebaseCrashlyticsPlugin " ) )
2728 FLTFirebaseMessagingPlugin . register ( with: registry. registrar ( forPlugin: " FLTFirebaseMessagingPlugin " ) )
29+ FlutterImageCompressMacosPlugin . register ( with: registry. registrar ( forPlugin: " FlutterImageCompressMacosPlugin " ) )
2830 GeolocatorPlugin . register ( with: registry. registrar ( forPlugin: " GeolocatorPlugin " ) )
2931 FPPPackageInfoPlusPlugin . register ( with: registry. registrar ( forPlugin: " FPPPackageInfoPlusPlugin " ) )
3032 PathProviderPlugin . register ( with: registry. registrar ( forPlugin: " PathProviderPlugin " ) )
Original file line number Diff line number Diff line change @@ -431,6 +431,54 @@ packages:
431431 url: "https://pub.dev"
432432 source: hosted
433433 version: "3.3.1"
434+ flutter_image_compress:
435+ dependency: transitive
436+ description:
437+ name: flutter_image_compress
438+ sha256: "45a3071868092a61b11044c70422b04d39d4d9f2ef536f3c5b11fb65a1e7dd90"
439+ url: "https://pub.dev"
440+ source: hosted
441+ version: "2.3.0"
442+ flutter_image_compress_common:
443+ dependency: transitive
444+ description:
445+ name: flutter_image_compress_common
446+ sha256: c5c5d50c15e97dd7dc72ff96bd7077b9f791932f2076c5c5b6c43f2c88607bfb
447+ url: "https://pub.dev"
448+ source: hosted
449+ version: "1.0.6"
450+ flutter_image_compress_macos:
451+ dependency: transitive
452+ description:
453+ name: flutter_image_compress_macos
454+ sha256: "20019719b71b743aba0ef874ed29c50747461e5e8438980dfa5c2031898f7337"
455+ url: "https://pub.dev"
456+ source: hosted
457+ version: "1.0.3"
458+ flutter_image_compress_ohos:
459+ dependency: transitive
460+ description:
461+ name: flutter_image_compress_ohos
462+ sha256: e76b92bbc830ee08f5b05962fc78a532011fcd2041f620b5400a593e96da3f51
463+ url: "https://pub.dev"
464+ source: hosted
465+ version: "0.0.3"
466+ flutter_image_compress_platform_interface:
467+ dependency: transitive
468+ description:
469+ name: flutter_image_compress_platform_interface
470+ sha256: "579cb3947fd4309103afe6442a01ca01e1e6f93dc53bb4cbd090e8ce34a41889"
471+ url: "https://pub.dev"
472+ source: hosted
473+ version: "1.0.5"
474+ flutter_image_compress_web:
475+ dependency: transitive
476+ description:
477+ name: flutter_image_compress_web
478+ sha256: f02fe352b17f82b72f481de45add240db062a2585850bea1667e82cc4cd6c311
479+ url: "https://pub.dev"
480+ source: hosted
481+ version: "0.1.4+1"
434482 flutter_keyboard_visibility:
435483 dependency: transitive
436484 description:
Original file line number Diff line number Diff line change 1+ import 'dart:io' ;
2+
3+ import 'package:fa_flutter_core/fa_flutter_core.dart' ;
4+ import 'package:flutter_image_compress/flutter_image_compress.dart' ;
5+
6+ class ImageUtils {
7+ Future <Directory > getCompressedImagesDirectory () async {
8+ final tempDir = await getTemporaryDirectory ();
9+ final compressedImageDir = Directory ('${tempDir .path }/compressed_images' );
10+ if (! compressedImageDir.existsSync ()) {
11+ compressedImageDir.createSync ();
12+ }
13+ return compressedImageDir;
14+ }
15+
16+ Future <void > removedCompressedImagesFromDirectory (String path) async {
17+ await File (path).delete ();
18+ }
19+
20+ Future <File ?> getCompressedImage (
21+ File xFile,
22+ Directory compressedImageDir, {
23+ int quality = 60 ,
24+ bool enforceDelete = false ,
25+ }) async {
26+ try {
27+ final comprssesedFile = await FlutterImageCompress .compressAndGetFile (
28+ xFile.path,
29+ "${compressedImageDir .path }/${DateTime .now ().millisecondsSinceEpoch }.jpg" ,
30+ quality: quality,
31+ );
32+ if (enforceDelete) {
33+ await xFile.delete ();
34+ }
35+ if (comprssesedFile != null ) {
36+ return File (comprssesedFile.path);
37+ }
38+ } catch (e, stk) {
39+ print (e);
40+ print (stk);
41+ return null ;
42+ }
43+ }
44+ }
Original file line number Diff line number Diff line change @@ -70,6 +70,7 @@ dependencies:
7070 url_launcher : ^6.2.5
7171 uuid : ^4.3.3
7272 provider : ^6.1.2
73+ flutter_image_compress : ^2.3.0
7374
7475dev_dependencies :
7576 flutter_test :
You can’t perform that action at this time.
0 commit comments