Flutter Firebase Bildirim Mesajı
Flutter uygulamamda firebase_messaging'i uygulamaya çalışıyorum. Android Entegrasyonunda yerel Uygulama düzeyinde kod yazdığımda yinelenen sınıflar için bir hata aldım ancak nedenini bilmiyorum.
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;
class Application: FlutterApplication(), PluginRegistrantCallback {
override fun onCreate() {
super.onCreate()
FlutterFirebaseMessagingService.setPluginRegistrant(this)
}
override fun registerWith(registry: PluginRegistry?) {
io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin.registerWith(registry?.registrarFor("io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin"));
}
}
D8: Program türü zaten mevcut: com.project.my_project.Application com.android.builder.dexing.DexArchiveMergerException: dex arşivleri birleştirilirken hata: Sorunun nasıl çözüleceğini şuradan öğrenin: https://developer.android.com/studio/build/dependencies#duplicate_classes. Program türü zaten mevcut: com.android.builder.dexing.D8DexArchiveMerger.getExceptionToRethrow adresinde com.project.my_project.Application com.android.build.gradle.internal.transforms.DexMergerTransformCallable.call adresinde (DexMergerTransformCallable.java:102) com.android.build.gradle.internal.tasks.DexMergingTaskRunnable.run (DexMergingTask.kt: 444) ...
- Ne yanlış gitti: ': app: mergeProjectDexDebug' görevi için yürütme başarısız oldu.
Com.android.build.gradle.internal.tasks.Workers $ ActionFacade com.android.builder.dexing.DexArchiveMergerException yürütülürken bir hata oluştu: dex arşivlerini birleştirirken hata oluştu: Sorunun nasıl çözüleceğini şuradan öğrenin: https://developer.android.com/studio/build/dependencies#duplicate_classes. Program türü zaten mevcut: com.project.my_project.Application <
flutter doctor [✓] Flutter (Kanal kararlı, 1.22.3, Mac OS X 10.15.7 19H2, yerel ayar pt-BR'de) • Flutter sürüm 1.22.3 / Kullanıcılar / geliştirici / Belgeler / Belgeler / Geliştirme / flutter • Çerçeve revizyonu 8874f21e79 (8 gün önce), 2020-10-29 14:14:35 -0700 • Motor revizyonu a1440ca392 • Dart sürümü 2.10.3
[✓] Android araç zinciri - Android cihazlar için geliştirin (Android SDK sürüm 30.0.2) • / Kullanıcılar / geliştirici / Kitaplık / Android / sdk adresinde Android SDK • Android-30 platformu, derleme araçları 30.0.2 • Java ikili dosyası: / Uygulamalar / Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java • Java sürümü OpenJDK Runtime Environment (derleme 1.8.0_242-release-1644-b3-6222593) • Tüm Android lisansları kabul edildi.
[✓] Xcode - iOS ve macOS (Xcode 12.1) için geliştirin • /Applications/Xcode.app/Contents/Developer adresinde Xcode • Xcode 12.1, Derleme sürümü 12A7403 • CocoaPods sürüm 1.10.0
[!] Android Studio (sürüm 4.1) • / Applications / Android Studio.app/Contents adresindeki Android Studio ✗ Flutter eklentisi yüklü değil; bu, Flutter'a özgü işlevsellik ekler. (Yüklü çalıştığını bilseniz bile) ✗ Dart eklentisi kurulu değil; bu, Dart'a özel işlevler ekler. (Yüklendiğini ve çalıştığını bile bilir) • Java sürümü OpenJDK Runtime Environment (derleme 1.8.0_242-release-1644-b3-6222593)
[✓] VS Code (sürüm 1.50.1) • VS Code / Applications / Visual Studio Code.app/Contents • Flutter uzantısı sürüm 3.16.0
[✓] Bağlı cihaz (1 adet mevcut) • sdk gphone x86 kolu (mobil) • emülatör-5554 • android-x86 • Android 11 (API 30) (emülatör)
Yanıtlar
Bu benim projemden çalışan bir örnek. Böyle bir şeye rastladığımı hatırlıyorum. Sadece hızlı bir yanıt vermek için yazıyorum, bunun doğru çözüm olup olmadığından emin değilim.
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) {
registry.registrarFor("io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin");
}
}
Flutter eklentisinin bir güncellemesini alarak çözüyorum. ne olacağını bilmiyorum.