0

在我的颤振应用程序中,我一直在使用以下插件permission_handlergeolocatorgoogle_api_availibility。我本可以从 pubspec.yml的颤振包中添加这个插件,但是,在我的应用程序中,我使用的是google_map_flutter插件,该插件一直在使用 AndroidX 支持库。由于这个原因,我在本地添加了这些库,并对 AndroidX 进行了一些更改。所以我的应用程序结构和 pubspecs 看起来像这样。 在此处输入图像描述

所以在我的应用程序 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 导入模型类时,像这样 在此处输入图像描述

但它显示此错误导入的库 'package:geolocator/model/position.dart' can't have a part-of 指令

我不知道我在这里做错了什么,请帮助我。

4

1 回答 1

4

首先让我们看一下package:geolocator/models/position.dart的代码

part of geolocator;在文件的开头说,这意味着这个类是插件的一部分,它暴露在文件package:geolocator/中,就像这样part 'models/position.dart';。因此,在您的客户端代码中,您不需要以这种方式导入类 Position。

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

import 'package:geolocator/geolocator.dart';

我希望它有所帮助。

于 2019-01-30T06:49:02.387 回答