簡體   English   中英

FlutterFirebaseCorePlugin.java 使用或覆蓋已棄用的 API

[英]FlutterFirebaseCorePlugin.java uses or overrides a deprecated API

好的,所以我運行我的程序而不導入 firebase 核心、firebase auth 和 cloud firestore,我的代碼運行得很好,但我用 firebase 注冊了我的應用程序,它仍然運行良好,但只要我導入Firebase_authFirebase_corecloud_Firestore ...我得到以下錯誤

Note: C:\appflutter\flutter\.pub-cache\hosted\pub.dartlang.org\firebase_core-0.7.0\android\src\main\java\io\flutter\plugins\firebase\core\FlutterFirebaseCorePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: C:\appflutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.16.0\android\src\main\java\io\flutter\plugins\firebase\firestore\streamhandler\TransactionStreamHandler.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
D8: Cannot fit requested classes in a single dex file (# methods: 89543 > 65536)
com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives: 
The number of method references in a .dex file cannot exceed 64K.

請幫我。

我今天遇到了同樣的問題,我在Github上找到了解決方案

首先,從pub.dev獲取最新版本的依賴項

當前的最新版本是:

  1. firebase_auth: ^0.20.0+1
  2. firebase_core: ^0.7.0

然后在終端中運行這 3 個命令:

$ flutter pub upgrade

$ flutter pub get

$ flutter clean

然后運行你的項目

$ flutter run

希望這對您有所幫助。

似乎這是 Firebase 插件中的錯誤: https://github.com/FirebaseExtended/flutterfire/issues/3876 但是,將 min SDK 設置為 23 不會顯示警告。

將我的 sdkVersion 更改為 23 對我有用:

只需 go 到 android>app>build.gradle 並將 defaultConfig{} 中的 minSdkVersion 行更改為.. minSdkVersion 23

$ flutter pub get

只需在您的終端中執行即可

在 android 項目中啟用multidex並再次運行。 我是根據您發布的錯誤消息的最后一部分提出這一建議的。

根據本指南: https://firebase.flutter.dev/docs/installation/android#enabling-multidex

但是,如果您的 minSdkVersion 設置為 20 或更低,那么您必須使用 multidex 支持庫並對您的應用程序項目進行以下修改

在android-app-build.gradel文件中

  1. 添加 - 在依賴項部分實現'com.android.support:multidex:1.0.3'
  2. 在默認配置部分添加 - multiDexEnabled true 在此處輸入圖像描述

在此處輸入圖像描述

遇到 FlutterFirebaseCorePlugin.java 使用或覆蓋已棄用的 API的錯誤。 兩天。 最終通過在 app/build.gradle 中將 minSdkVersion 更改為 21 並使用flutter run --no-sound-null-safety運行應用程序來解決它。

發現錯誤來自聲音 null safety implementation which gray lists all incompatible API

對於這個錯誤:

注意:locationInD\flutter\plugins\firebase\core\FlutterFirebaseCorePlugin.java 使用或覆蓋已棄用的 API。注意:使用 -Xlint:deprecation 重新編譯以獲取詳細信息。

我找到的解決方案是替換 android/app/build.gradle 中的這一行:

implementation 'com.google.firebase:firebase-analytics-ktx'

implementation 'com.google.firebase:firebase-analytics'

這里有兩個問題,-Xlint 和 multidex。

對於-Xlint ,@Sarib 的解決方案對我有用,運行flutter pub upgradeflutter pub getflutter clean后,-Xlint 錯誤都消失了。 如果您不熟悉終端,可以在 Android Studio 的工具 > Flutter 下找到它們。

對於multidex ,根據 Android Studio User Guide ,如果您的 minSdkVersion 為 21 或更高版本,multidex 將默認啟用。 雖然@Joshi 建議啟用 multidex ,但我認為將 android/app/build.gradle 文件中的minSdkVersion更新為 21 或更高更簡單,而不是弄亂更多變量並添加更多依賴項,假設您正在構建一個目標應用程序安卓21以上。

對我來說,我將我的一個實現版本從實現平台('com.google.firebase:firebase-bom:27.1.0')更改為

實施平台('com.google.firebase:firebase-bom:26.6.0')目前當前版本“27.1.0”中存在一些錯誤,運行應用程序后它可以正常工作

//為了幫助某人,我的項目需要為我的廣告實施此實施#admob

在 android/app/build.gradle 中更改為 minSdkVersion 24

dependencies {
//add this in your dependencies
    implementation "androidx.multidex:multidex:2.0.0"
}

然后

$ flutter clean
$ flutter run

我遇到了同樣的問題並結合了兩個建議的修復方法以使其最終起作用:

minSdkVersion 21,更改為 23運行“flutter pub upgrade”=問題已修復!

要仔細檢查修復的內容:

我也恢復到 21 並使 + flutter 干凈無效,問題再次出現。 然后我改成23,警告就消失了!

Ok so I run my program without importing firebase core, firebase auth and cloud firestore, and my code runs just fine but I register my app with firebase and it still runs fine but as soon as I import Firebase_auth , Firebase_core and cloud_Firestore ... I得到以下錯誤

Note: C:\appflutter\flutter\.pub-cache\hosted\pub.dartlang.org\firebase_core-0.7.0\android\src\main\java\io\flutter\plugins\firebase\core\FlutterFirebaseCorePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: C:\appflutter\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.16.0\android\src\main\java\io\flutter\plugins\firebase\firestore\streamhandler\TransactionStreamHandler.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
D8: Cannot fit requested classes in a single dex file (# methods: 89543 > 65536)
com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives: 
The number of method references in a .dex file cannot exceed 64K.

請幫我。

檢查你的 minSDK,它適用於 23

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM