在我的flutter应用程序中,我一直在使用以下以下插件permission_handlergeolocatorgoogle_api_availibility
我可以从pubspec.yml 的flott软件包中添加此插件,但是,在我的应用中,我使用的google_map_flutter插件一直在使用AndroidX支持库。由于这个原因,我在本地添加了这些库,并进行了一些更改以使用AndroidX。所以我的应用程序结构和pubspecs看起来像这样。
dart - 导入的库 'package:geolocator/model/position.dart'不能有部分指令-LMLPHP

所以在我的应用程序pubspecs.yml中

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

我的my_permission_handler的pubspecs.yml
flutter:
 plugin:
   androidPackage: com.baseflow.permissionhandler
   pluginClass: PermissionHandlerPlugin

我的api_availibility的pubspec.yml
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

现在,当在项目的某个类中时,我试图像这样从geolocator导入模型类
dart - 导入的库 'package:geolocator/model/position.dart'不能有部分指令-LMLPHP

但它显示此错误导入的库'package:geolocator / model / position.dart'不能具有部分指令

我不知道我在做什么错,请帮帮我。

最佳答案

首先,让我们研究软件包的代码:geolocator / modles / position.dart

它在文件的最开始显示part of geolocator;,表示该类是插件的一部分,该插件在文件 package:geolocator / 中公开,类似于part 'models/position.dart';。因此,在您的客户端代码中,您无需以这种方式导入位置类。

如果您以此方式修改导入语句,错误将消失

import 'package:geolocator/geolocator.dart';

希望对您有所帮助。

08-05 11:19