Ошибка компиляции после добавления сообщений Firebase - PullRequest
3 голосов
/ 01 октября 2019

Для разработки приложений мне нужен Firebase облачных сообщений. В моем pubsepc.yaml я добавляю следующие зависимости: firebase_messaging: ^ 5.1.6

На данный момент у меня нет кода для добавления.

После этого я строю код и у меня появляется ошибка:

flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-5.1.6/android/src/main/java/io/flutter/plugins/firebasemessaging/FlutterFirebaseMessagingService.java:143: error: method findAppBundlePath in class FlutterMain cannot be applied to given types;
    String appBundlePath = FlutterMain.findAppBundlePath();
                                      ^
  required: Context
  found: no arguments
  reason: actual and formal argument lists differ in length
1 error

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':firebase_messaging: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.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s
Finished with error: Gradle task assembleDebug failed with exit code 1

Ответы [ 2 ]

6 голосов
/ 04 октября 2019

Если вы зайдете на Java и отметите FlutterFirebaseMessagingService.java

FlutterMain.findAppBundlePath()

, здесь необходим контекст в аргументе, поэтому первое решение здесь - вы можете добавить контекст в аргумент, например,

FlutterMain.findAppBundlePath(context)

Второе решение удаляет firebase_messaging: ^5.1.6 зависимость от pubspac.yaml и нажимает flutter clean в терминале для очистки, теперь добавьте firebase_messaging: 5.1.6 (без ^) и нажмите flutter pub get в терминале. Это решение работает для меня.

Второе решение - лучшая практика.

0 голосов
/ 15 октября 2019

Ответ @Maddy ясен. Но если кто-то не решил проблему.

Пожалуйста, попробуйте: flutter upgrade и сделайте ответ @Maddy

Это работает для меня. Извините за ответ в новой ветке, мне не хватает репутации

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...