Aus öffentlichen Paketdaten erstellte Orientierung.
Master_Utility ist ein umfassendes Flutter-Paket, das eine Vielzahl grundlegender Werkzeuge in einer Lösung bietet. Es vereinfacht die Entwicklung durch Bereitstellung von Tools für Bildschirmgrößenanpassung, Navigation, Bildauswahl, Datums- und Zeitverwaltung, automatische Textgröße-Anpassung, Toast-Nachrichten, E-Mail-Integration, Protokollierung, Dialogverwaltung, Cached-Bild-Ladung, Formularvalidierung, API-Aufrufe und gemeinsame Einstellungen. Auf Effizienz ausgelegt, reduziert es Boilerplate-Code und beschleunigt die App-Entwicklung auf Android und iOS. Das Paket ist ideal für Entwickler, die ein einheitliches Toolkit suchen, um alltägliche Aufgaben zu vereinfachen, ohne sich auf mehrere separate Pakete verlassen zu müssen.
Anwendungsfälle
Schnellprototypen
Plattformübergreifende mobile Entwicklung
Verbesserte Benutzeroberfläche und Zustandsverwaltung
Einfache Formularvalidierung
Effiziente Datenpersistenz
Einheitlicher Zugriff auf Hilfsfunktionen
Hauptmerkmale
All-in-One-Utility-Paket
Eingebaute Navigationshilfen
Bild-Caching und Picker
Text-Widgets mit automatischer Größenanpassung
Toast- und Dialogkomponenten
Freigegebene Einstellungen und API-Integration
Geeignet für
Anfänger bis fortgeschrittene Flutter-Entwickler
Apps mit schneller Einrichtung
Projekte mit häufigen UI- und Datenoperationen
Teams, die darauf abzielen, die Abhängigkeitsausbreitung zu reduzieren
Entwickler, die Entwicklungsbeschleunigung priorisieren
Hinweise
Kann ungenutzte Funktionen für einfache Apps enthalten
Möglicher Größenoverhead durch gebündelte Hilfsprogramme
Eingeschränkte Anpassungsmöglichkeiten in einigen Modulen
Hängt von externen Abhängigkeiten für bestimmte Funktionen ab
Am besten geeignet für Projekte, die eine breite Nutzenabdeckung erfordern
Original-README
Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.
Master Utility Package
A package that enables you to use a comprehensive set of utilities in a single package with customization. It includes features like Done Keyboard View For Android and IOS, Size Helper, Navigation Helper, Image Picker Helper, Date Time Helper, Auto Size Text Helper, Toast Helper, Email Dispose, Log Helper, Dialog Helper, Cache Network Image Helper, Validation Helper, Api Helper, Shared Preference Helper,image cropper helper, Debounce helper, Read more Text Helper, duble click redundant Helper and Permission handler with custom type Helper.
Support
- Android
- iOS
How to add this package to your project add this dependencies inside your pubspec.yaml file
MasterUtilityMaterialApp()
Use this as a MaterialApp();
This package contains the below points as of now. We can improve and add new points as per requirements in the future
Done Keyboard View For Android and IOS
You need to add the below line into FocusNode, which you can manage with Custom Text Filed. You have the option to hide the done keyboard, and you can enable the previous and next buttons to focus on the next and previous fields.
add below line inside your first widget build method
SizeHelper.setMediaQuerySize();
Container(
width: 0.03.w, //It will take a 30% of screen width
height:0.03.h, //It will take a 30% of screen height
),
Padding(
padding: EdgeInsets.symmetric(vertical: 0.05.h, horizontal: 0.05.w),
child: Container(),
);
Text('Sizer Helper',style: TextStyle(fontSize: 5.5.fs));
Image picker helper
To use In [IOS] add this code in project_directory/ios/Runner/info.plist
`<key>`NSCameraUsageDescription `</key>`
`<string>`Upload image from camera for screen background `</string>`
`<key>`NSMicrophoneUsageDescription `</key>`
`<string>`Post videos to profile `</string>`
`<key>`NSPhotoLibraryUsageDescription `</key>`
`<string>`Upload images for screen background `</string>`
Multimedia picker
Take Photo
Photo from Gallery
Take a Video
Video from Gallery
Document
final result = await ImagePickerHelper.multiMediaPicker();
Custom media picker
final result = await ImagePickerHelper.customMediaPicker(
pickerActionType:PickerActionType.camera);
use below enum for custom media picker
PickerActionType.camera
PickerActionType.gallery,
PickerActionType.video,
PickerActionType.cameraVideo,
PickerActionType.document,
This initialization method must be called before any other methods in the PreferenceHelper class to ensure that the shared preferences instance and encryption key are properly set.
This extension provides tools to encrypt map data using RSA and AES encryption algorithms. Below is a quick guide on how to utilize this functionality in your project:
Load the Public Key:
Ensure you load the public key before using the encryption methods. Call EncryptionService.loadPublicKey() to load the key from preferences.
Encrypt Data:
Extend a Map object with the MapEncryption extension and call the encrypted() method to encrypt its contents. This method generates a random secret key and IV, encrypts the map data with AES, and then encrypts the secret key with RSA.
Access Encrypted Data:
The encrypted() method returns a map containing:
encryptedData: The AES-encrypted map data in base64 format.
encryptedKey: The RSA-encrypted secret key in base64 format.
iv: The IV used for AES encryption in base64 format.
By following these steps, you can securely encrypt your map data using the provided extension.
API Service Documentation
Overview
This document provides details on the getResponseWithMapper function, which is responsible for handling API requests and responses efficiently using the Dio package in Flutter. It also includes examples of how to fetch user data using this API service.
getResponseWithMapper<T>
Description
The getResponseWithMapper function handles API requests and responses while supporting JSON mapping for both objects and lists.
Always ensure that either jsonMapper or listJsonMapper is passed, but not both.
The function is designed to handle different API response types efficiently.
Proper error handling is included for a seamless user experience.
This function provides a robust and scalable approach to handling API calls in a Flutter application.
LOGARTE
Overview
Logarte is a powerful in-app console for Flutter that lets you monitor app logs, inspect network calls, and easily share debug info. Boost your development workflow with real-time insights, exportable logs, and seamless team collaboration.
dioClient.setConfiguration(AppEnv.baseUrl, logarteClient: logarte);
// enableFileLogger is mandatory to store logs in fileawaitLogHelper.setConfigurations(logarteClient: logarte, enableFileLogger: true);
// It will return logs filefinal file = awaitLogHelper.getLogsFile();