programing

플러그인 프로젝트: firebase_core_web을 찾을 수 없습니다.

magicmemo 2023. 6. 10. 08:43
반응형

플러그인 프로젝트: firebase_core_web을 찾을 수 없습니다.

Android 프로젝트를 Firebase에 연결하려고 하는데 다음을 pubsec.yaml에 추가하면서 이 오류가 발생합니다.

firebase_auth: ^0.16.0
cloud_firestore: ^0.13.5

내가 천천히 달리고 그것이 작동하지 않을 때.

Plugin project :firebase_core_web not found. Please update settings.gradle.
Plugin project :firebase_auth_web not found. Please update settings.gradle.
Plugin project :cloud_firestore_web not found. Please update settings.gradle.

그것에 대한 해결책이 있습니까?

당신의android/app/build.gradle다음을 업데이트합니다.

android {
    // ...
    defaultConfig {
        // ...
        minSdkVersion 16
    }
}

대상:

android {
    // ...
    defaultConfig {
        // ...
        minSdkVersion 23
    }
}

참고:

사용해야 합니다.minSdkVersion 23Floating에서 Firebase를 사용할 때.

문서에서:

Flutter는 기본적으로 Android SDK v16(Jelly Bean, 2012년 출시)을 지원하지만, 멀티덱스는 실제로 Jelly Bean과 함께 작동하지 않습니다(하지만 가능합니다).젤리빈이 작동하도록 구성하는 것은 이 코드랩의 범위를 벗어나므로 최소 대상 SDK 버전을 v16에서 v21(Lollipop, 2014년 출시)로 변경합니다.

최소 대상 SDK 버전을 변경하는 방법

  • Android/app/build.gradle을 열고 minSdkVersion 16이라고 적힌 줄을 찾습니다.
  • 해당 행을 minSdkVersion 21로 변경합니다.
  • 파일을 저장합니다.

업그레이드 후에는 정상적으로 작동할 것입니다.이 파일은 새 플러터 프로젝트를 만들제공됩니다.참고로, 이것이 당신의 방식입니다.settings.gradlefile은 다음과 같아야 합니다(기본 파일 변경 없음).

include ':app'

def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()

def plugins = new Properties()
def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
if (pluginsFile.exists()) {
    pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }
}

plugins.each { name, path ->
    def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
    include ":$name"
    project(":$name").projectDir = pluginDirectory
}

https://github.com/PeterHdd/Firebase-Flutter-tutorials/blob/master/firebase_storage_tutorial/android/settings.gradle


설명:settings.gradle:

Gradle안드로이드 프로젝트에 사용되는 빌드 도구입니다.ant또는maven스크립팅을 위해 그루비 언어나 코틀린을 사용합니다.이 경우 위의 코드는 다음을 사용하여 작성됩니다.groovy그 이후로groovy이다.jvm언어는 사용할 수 있습니다.Java도서관따라서 기본적으로 프로젝트를 빌드에 추가합니다(groovy에서는 메서드에 대한 괄호를 생략할 수 있습니다).

다음 줄:

def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()

사용자가 기계에서 만든 Floating 프로젝트의 경로를 얻는 것입니다.참조용:

https://docs.gradle.org/current/javadoc/org/gradle/api/initialization/ProjectDescriptor.html#getProjectDir-- https://docs.oracle.com/javase/8/docs/api/java/io/File.html#toPath-- https://docs.oracle.com/javase/7/docs/api/java/util/Properties.html

다음 줄:

def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')

다음과 같은 빈 파일을(를).flutter-plugins당신의 플래터 프로젝트의 뿌리 아래에.그리고나서plugins.each{ name, path ->이것은 기본적으로 플러그인 이름과 플러그인의 경로를 파일에 추가하는 반복입니다..flutter_plugins해당 파일에서 플러그인을 찾을없으면질문에 오류가 표시됩니다.

.flutter-plugins파일 이름:

# This is a generated file; do not edit or check into version control.
cloud_firestore=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.13.6/
cloud_firestore_web=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/cloud_firestore_web-0.1.1+2/
firebase_auth=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_auth-0.16.1/
firebase_auth_web=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_auth_web-0.1.2/
firebase_core=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_core-0.4.4+3/
firebase_core_web=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_core_web-0.1.1+2/
firebase_database=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_database-3.1.5/
firebase_storage=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_storage-3.1.5/

변경하기settings.gradle

include ':app'

def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()

def plugins = new Properties()
def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
if (pluginsFile.exists()) {
    pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }
}

plugins.each { name, path ->
    def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
    include ":$name"
    project(":$name").projectDir = pluginDirectory
}

이 infloat 앱 -> 안드로이드 -> settings.grade를 추가해주세요.

def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()

    def plugins = new Properties()

    def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
    if (pluginsFile.exists()) {

        pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }
    }

    plugins.each { name, path ->
        def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
        include ":$name"
        project(":$name").projectDir = pluginDirectory
    }

내 설정은 다음 버전에서 작동했습니다.

pubspec.sl

firebase_auth: ^0.14.0+5
^ cloud_firestore: ^0.12.9+5

경고를 잠재우기 위해 (pubspec.yaml)도 추가했습니다.
firebase_core: ^0.4.5
^ firebase_firebase: ^5.0.2

build.gradle(루트 dir)
3' 파일 이름 'com.google.gms:google-services:4.3.3'

build.gradle(app dir)
버전 23minSdk 버전 23
targetSdkVersion 28

그런 다음 build.gradle아래에 이것을 추가했습니다.
plugin 파일: 'com.google.gms.google-services'

마지막으로 터미널 명령을 실행합니다.
get $185$

프로젝트를 구축한 후 - 15초 동안 기다리면 다음과 같은 메시지가 표시됩니다.
"축하합니다, Firebase를 앱에 성공적으로 추가했습니다!"
메시지가 표시됩니다.

여기에 이미지 설명 입력

이것을 당신의 settings.gradle 파일에 추가하기만 하면 됩니다.

def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()

def plugins = new Properties()

def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
if (pluginsFile.exists()) {

    pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }

}

plugins.each { name, path ->
    def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
    include ":$name"
    project(":$name").projectDir = pluginDirectory
}

그냥 만들어 보세요.

minSdk 버전 21

피터의 대답에 덧붙여 나는 이 대사를 잘못 배치했습니다.올바른 것은 파일의 맨 아래에 있습니다.

apply plugin: 'com.google.gms.google-services'

이것은 종속성 버전이 일치하지 않는 것 중 하나일 수 있습니다.pubspec.yaml에 있는 모든 최신 버전의 lib를 사용하고 있는지 확인하십시오.

PubDev에서 최신 버전의 종속성을 참조할 수 있습니다.

저도 같은 오류가 발생했습니다.

플러그인 프로젝트 firebase_core_web을 찾을 수 없습니다.settings.gradle을 지정합니다. 프로젝트 code 파일:cloud_fire 파일입니다.enter code heretore_web을 찾을 수 없습니다.settings.gradle을 지정합니다. 프로젝트 파일:firebas 프로젝트enter code here 수 없습니다. e_auth_web 파일입니다.settings.gradle을 지정합니다.

저는 다음과 같은 과정을 통해 이 문제를 해결했습니다.

앱 레벨 그래들 파일로 이동하여 타겟 SdkVersion이 16개 이하인 경우 이 링크 https://developer.android.com/guide/topics/manifest/uses-sdk-element 에서 검색하는 최신 버전으로 업데이트하십시오.도움이 될 것입니다.

언급URL : https://stackoverflow.com/questions/61732409/plugin-project-firebase-core-web-not-found

반응형