flutter - 使用颤振的地图框
问题描述
我想使用flutter集成mapbox我正在做的只是在pubsec.yaml中安装我的sdk并将访问令牌放在Android Manifest文件和Info.plist中
这是我添加 mapbox_gl 的 pubsec.yaml
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
mapbox_gl: ^0.0.3
我还没有在 dart 文件中添加任何代码,只是试图运行应用程序,但它给了我错误
/flutter/.pub-cache/hosted/pub.dartlang.org/mapbox_gl-0.0.3/android/src/main/java/com/mapbox/mapboxgl/MapboxMapController.java:16: error: cannot find symbol
import androidx.annotation.NonNull;
^
symbol: class NonNull
location: package androidx.annotation
/flutter/.pub-cache/hosted/pub.dartlang.org/mapbox_gl-0.0.3/android/src/main/java/com/mapbox/mapboxgl/MapboxMapController.java:130: error: cannot find symbol
private static String getAccessToken(@NonNull Context context) {
^
symbol: class NonNull
location: class MapboxMapController
/flutter/.pub-cache/hosted/pub.dartlang.org/mapbox_gl-0.0.3/android/src/main/java/com/mapbox/mapboxgl/MapboxMapController.java:298: error: cannot find symbol
private void enableLocationComponent(@NonNull Style style) {
^
symbol: class NonNull
location: class MapboxMapController
/flutter/.pub-cache/hosted/pub.dartlang.org/mapbox_gl-0.0.3/android/src/main/java/com/mapbox/mapboxgl/MapboxMapController.java:315: error: cannot find symbol
private void enableSymbolManager(@NonNull Style style) {
^
symbol: class NonNull
location: class MapboxMapController
/flutter/.pub-cache/hosted/pub.dartlang.org/mapbox_gl-0.0.3/android/src/main/java/com/mapbox/mapboxgl/MapboxMapController.java:326: error: cannot find symbol
private void enableLineManager(@NonNull Style style) {
^
symbol: class NonNull
location: class MapboxMapController
/flutter/.pub-cache/hosted/pub.dartlang.org/mapbox_gl-0.0.3/android/src/main/java/com/mapbox/mapboxgl/MapboxMapController.java:333: error: cannot find symbol
private void enableCircleManager(@NonNull Style style) {
^
symbol: class NonNull
location: class MapboxMapController
/flutter/.pub-cache/hosted/pub.dartlang.org/mapbox_gl-0.0.3/android/src/main/java/com/mapbox/mapboxgl/MapboxMapController.java:556: error: cannot find symbol
public boolean onMapClick(@NonNull LatLng point) {
^
symbol: class NonNull
location: class MapboxMapController
/flutter/.pub-cache/hosted/pub.dartlang.org/mapbox_gl-0.0.3/android/src/main/java/com/mapbox/mapboxgl/MapboxMapController.java:286: error: cannot find symbol
public void onStyleLoaded(@NonNull Style style) {
^
symbol: class NonNull
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
8 errors
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':mapbox_gl:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
BUILD FAILED in 4s
*******************************************************************************************
The Gradle failure may have been because of AndroidX incompatibilities in this Flutter app.
*******************************************************************************************
Finished with error: Gradle task assembleDebug failed with exit code 1
任何帮助表示赞赏。
解决方案
这是一个 AndroidX 兼容性问题。
将此添加到您的android/gradle.properties
并尝试再次构建:
android.enableJetifier=true
android.useAndroidX=true
推荐阅读
- javascript - 类继承 - 正确调用方法
- reactjs - 如何在 React Native 中实现 DRM?
- javascript - 如何根据用户输入创建自动表单生成器
- python-3.x - 如何连接 .sql 数据库(存储在本地文件夹中)
- laravel - 错误预期响应代码 250 但得到代码“550”,消息“550 这是仅提交端口。您必须在发送邮件之前进行身份验证
- php - 如何修复 PHP 不从 mysql 数据库中获取数据?
- c++ - C ++创建具有可变模板方法的接口
- php - 如何在 MySqli & PHP 中结合 stmt 和多查询?
- google-sheets - 如何使用索引函数返回最后一个非空白单元格的值
- python - Python脚本随机冻结