locale_plus

Creator: coderz1093

Last updated:

Add to Cart

Description:

locale plus

Locale Plus #
LocalePlus allows easy access to native device locale data in Flutter apps. Includes language, country code, time zone, and number formatting preferences.
Table of Content #

Overview
Requirements
Installation
Usage
Author
Contributors
LICENSE

Overview #
LocalePlus is a Flutter package that allows developers to easily retrieve data from the native device locale settings. With LocalePlus, developers can access information such as the device's language, country code, and time zone, as well as the device's number formatting preferences such as grouping and decimal separator. This makes it easy to build internationalized apps that provide a personalized experience for each user. Whether you're building a financial app that needs to display numbers in the user's local format or a social media app that needs to display timestamps in the user's time zone, LocalePlus has you covered. With a simple and intuitive API, LocalePlus is the perfect tool for any Flutter developer looking to add localization to their app.
Requirements #

Dart sdk: ">=3.0.0 <4.0.0"
Flutter: ">=3.10.0"
Android: minSdkVersion 16
iOS 9.0+

Installation #
with Flutter:
$ flutter pub add locale_plus
copied to clipboard
This will add a line like this to your package's pubspec.yaml (and run an implicit flutter pub get):
dependencies:
locale_plus: ^1.6.0
copied to clipboard
Usage #
Patch the locales with the users' group and decimal seperators #
This function patches all locales in flutter, so that you can use the decimal seperator and group seperator from numberFormatSymbols after the patch is complete.
The patchNumberSeperators function patches the locales on android and ios.
The shouldPatchForSamsungKeyboard can be enabled, to patch for Samsung keyboards on android phones (they only allow for a . as input).
It is safe to call on MacOS, Windows, Linux and web, but it does not patch the locales.
import 'package:locale_plus/locale_plus.dart';

Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await PatchAllLocales.patchNumberSeperators(
shouldPatchForSamsungKeyboard: true,
);
runApp(const MyApp());
}
copied to clipboard
Get if the user is using a samsung keyboard #
final decimalSeparator = await LocalePlus().isUsingSamsungKeyboard();
copied to clipboard
Get Decimal & Grouping Separator #
final decimalSeparator = await LocalePlus().getDecimalSeparator();
final groupingSeparator = await LocalePlus().getGroupingSeparator();
copied to clipboard
Get Language & Region Code #
final regionCode = await LocalePlus().getRegionCode();
final languageCode = await LocalePlus().getLanguageCode();
copied to clipboard
Get Seconds from GMT #
final secondsFromGMT = await LocalePlus().getSecondsFromGMT();
copied to clipboard
Is Device Using 24 hour time and Current Locale AM PM Symbols #
final is24HourTime = await LocalePlus().is24HourTime();
final amSymbol = await LocalePlus().getAmSymbol();
final pmSymbol = await LocalePlus().getPmSymbol();
copied to clipboard
Is Device Using Metric System #
final usesMetricSystem = await LocalePlus().usesMetricSystem();
copied to clipboard
Get TimeZone Identifier #
final timeZoneIdentifier = await LocalePlus().getTimeZoneIdentifier();
copied to clipboard
Get First Day Of Week #
final firstDayOfWeek = await LocalePlus().getFirstDayOfWeek();
copied to clipboard
Author #
Gökberk Bardakçı, Uygar İşiçelik
Contributors #
Bent Engbers, Renat Shakhmatov, Giovanni Lattanzio, Gökhan Çavuş
License #
LocalePlus is available under the MIT license. See the LICENSE file for more info.

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.