[Flutter] Android, Application.java:16: error: cannot find symbol FlutterFirebaseMessagingService.setPluginRegistrant(this);

flutter, dart, gradle 을 업데이트 이후 cannot find symbol FlutterFirebaseMessagingService.setPluginRegistrant(this); 에러가 발생하였다. 원인은 기존 io.flutter.plugins.firebasemessaging을 찾을 수 없는 것이다. 그래서 글래스에 Command + Enter을 했을 경우 “Import Class” 떠 시도 해보니 io.flutter.plugins.firebase.messaging으로 경로가 잡혀 1차 문제는 해결되었다.


Application.java

package you.package.name;

import io.flutter.app.FlutterApplication;
import io.flutter.plugin.common.PluginRegistry;
import io.flutter.plugin.common.PluginRegistry.PluginRegistrantCallback;
import io.flutter.plugins.GeneratedPluginRegistrant;
import io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService;

public class Application extends FlutterApplication implements PluginRegistrantCallback {

    @Override
    public void onCreate() {
        super.onCreate();
        FlutterFirebaseMessagingService.setPluginRegistrant(this);
    }

    @Override
    public void registerWith(PluginRegistry registry) {
        FirebaseMessagingPluginRegistrant.registerWith(registry);
    }
}

코드 수정 후

import io.flutter.app.FlutterApplication;
import io.flutter.plugin.common.PluginRegistry;
import io.flutter.plugin.common.PluginRegistry.PluginRegistrantCallback;
import io.flutter.plugins.firebase.messaging.FlutterFirebaseMessagingBackgroundService;

public class Application extends FlutterApplication implements PluginRegistrantCallback {

    @Override
    public void onCreate() {
        super.onCreate();
    FlutterFirebaseMessagingBackgroundService.setPluginRegistrant(this);
    }

    @Override
    public void registerWith(PluginRegistry registry) {
        //FirebaseMessagingPluginRegistrant.registerWith(registry);
    }
}

답글 남기기

이메일 주소는 공개되지 않습니다.