【问题标题】:Flutter geolocator package not giving location in English颤振地理定位器包没有用英语给出位置
【发布时间】:2020-07-09 07:06:53
【问题描述】:

我正在使用 Flutter geolocator 软件包的最新版本,它为大多数国家/地区提供了英文位置和国家名称,但对于德国、西班牙、法国等一些国家/地区,它不是以英文提供名称,而是以母语提供名称的用户。我该如何更改?

Position position = await geolocator.getCurrentPosition(
    desiredAccuracy: LocationAccuracy.medium);

List<Placemark> placemark =
    await geolocator.placemarkFromCoordinates(
        position.latitude, position.longitude);
_location = {
  'country': placemark[0].country,
  'postalCode': placemark[0].postalCode,
  'state': placemark[0].administrativeArea,
  'city': placemark[0].subAdministrativeArea,
  'latitude': placemark[0].position.latitude,
  'longitude': placemark[0].position.latitude
};
_city = placemark[0].subAdministrativeArea;

【问题讨论】:

    标签: flutter dart flutter-dependencies


    【解决方案1】:

    placemarkFromAddress 和 placemarkFromCoordinates 都接受可选的 localeIdentifier 参数。此参数可用于强制根据指定的语言环境对生成的地标进行格式化(和翻译)。 localeIdentifier 应使用以下语法进行格式化:[languageCode]_[countryCode]。语言代码使用 ISO 639-1 或 ISO 639-2 标准,国家代码使用 2 字母 ISO 3166-1 标准。

    意思:

    List<Placemark> placemark =
        await geolocator.placemarkFromCoordinates(
            position.latitude, position.longitude);
    

    应该是:

    List<Placemark> placemark =
        await geolocator.placemarkFromCoordinates(
            position.latitude, position.longitude, localeIdentifier: localeIdentifierValue);
    

    https://pub.dev/packages/geolocator 了解有关 localeIdentifierValue 选项的更多信息

    【讨论】:

    • 那么localeIdentifierValue 应该是什么英语语言,以便该地方自动转换为英语?。
    • 包装里有提到 -> zh
    【解决方案2】:

    Placemark 已从 geolacator 库中分离出来,目前位于地理编码库中

    确保您从 pub.dev 获得各自的库

    import 'package:geocoding/geocoding.dart';
    import 'package:geolocator/geolocator.dart';
    
    Position position = await Geolocator.getCurrentPosition(
            desiredAccuracy: LocationAccuracy.high);
        List<Placemark> placemark =
            await placemarkFromCoordinates(position.latitude, position.longitude);
    

    【讨论】:

      猜你喜欢
      • 2021-09-15
      • 2023-03-13
      • 2020-11-02
      • 2021-02-06
      • 2023-03-25
      • 1970-01-01
      • 1970-01-01
      • 2021-04-21
      • 1970-01-01
      相关资源
      最近更新 更多