在我的flutter应用程序中,我一直在使用以下以下插件permission_handler,geolocator和google_api_availibility。
我可以从pubspec.yml 的flott软件包中添加此插件,但是,在我的应用中,我使用的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.ymlflutter:
plugin:
androidPackage: com.baseflow.permissionhandler
pluginClass: PermissionHandlerPlugin
我的api_availibility的pubspec.ymlflutter:
plugin:
androidPackage: com.baseflow.googleapiavailability
pluginClass: GoogleApiAvailabilityPlugin
我的地理定位器的pubspec.ymldependencies:
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'不能具有部分指令
我不知道我在做什么错,请帮帮我。
最佳答案
首先,让我们研究软件包的代码:geolocator / modles / position.dart
它在文件的最开始显示part of geolocator;
,表示该类是插件的一部分,该插件在文件 package:geolocator / 中公开,类似于part 'models/position.dart';
。因此,在您的客户端代码中,您无需以这种方式导入位置类。
如果您以此方式修改导入语句,错误将消失
import 'package:geolocator/geolocator.dart';
希望对您有所帮助。