Импортированная библиотека 'package: geolocator / model / position.dart' не может иметь часть директивы - PullRequest
0 голосов
/ 30 января 2019

В моем приложении для флаттера я использовал следующие плагины license_handler , geolocator и google_api_availibility .Я мог бы добавить этот плагин из пакета flutter из pubspec.yml , однако в моем приложении я использую плагин google_map_flutter , который использует библиотеки поддержки AndroidX.По этой причине я добавил эти библиотеки локально с некоторыми изменениями для работы с AndroidX.Итак, структура моего приложения и pubspecs выглядит следующим образом.enter image description here

Итак, в моем приложении pubspecs.yml

dev_dependencies:
  flutter_test:
    sdk: flutter
permission_handler:
  path: my_permission_handler
geolocator:
  path: flutter-geolocator

pubspecs.yml моего my_permission_handler

flutter:
 plugin:
   androidPackage: com.baseflow.permissionhandler
   pluginClass: PermissionHandlerPlugin

pubspec.yml моего api_availibility

flutter:
  plugin:
    androidPackage: com.baseflow.googleapiavailability
    pluginClass: GoogleApiAvailabilityPlugin

pubspec.yml моего геолокации

dependencies:
  meta: "^1.0.5"
  flutter:
    sdk: flutter
  permission_handler:
    path: ../my_permission_handler
  google_api_availability:
    path: ../flutter-google-api-availability

Теперь, когда в одном из классов проекта я попытался импортировать класс модели из геолокации, как этот enter image description here

но он показывает эту ошибку Импортированная библиотека 'package: geolocator / model / position.dart' не может иметь директиву part-of

У меня нетПредставьте, что я делаю не так, пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 30 января 2019

Сначала давайте рассмотрим код для пакета : geolocator / modles / position.dart

В самом начале файла написано part of geolocator;, означающее, что этот класс является частьюплагина, который доступен в файле package: geolocator / вот так part 'models/position.dart';.Поэтому здесь, в вашем клиентском коде, вам не нужно импортировать класс Position таким образом.

если вы так измените оператор импорта, ошибка исчезнет

import 'package:geolocator/geolocator.dart';

Надеюсь, это поможет.

...