Flutter v1.71 на моем компьютере все еще использует старый Android Embedding v1 вместо v2 - PullRequest
1 голос
/ 27 мая 2020

У меня возникли проблемы с библиотекой barcode_scan в моем недавно созданном проекте Flutter. Страница предварительного просмотра камеры со штрих-кодом открыта, но после обнаружения QR-кода действие android не возвращает никаких данных в мой код Flutter. Итак, я использовал другую машину (MA C и Window) с такой же версией флаттера и попробовал barcode_scan, который работает. Это значит, что у меня есть проблема с проектом flutter. Поэтому я стараюсь отлаживать и сравнивать как рабочий, так и не рабочий проект. Я узнал, что рабочий проект флаттера MainActivity.kt и неработающий проект флаттера MainActivity.kt имеют другой код. Ниже приведен пример. Рабочий проект имеет пустой MainActivity.kt. После некоторого чтения я узнал, что это Android встраивание v1 и v2. V1 - это старое вложение android, а v2 - последнее вложение android. Но после Flutter 1.1.2 весь проект будет создаваться с v2. Но на моем компьютере, хотя я обновляю его до Flutter v1.7.1, он все еще использует v1. Все новые проекты, которые я создал, используют v1. Из-за этого некоторые пакеты не работают. Но как только я вручную обновил v1 до v2 с помощью этого do c (https://github.com/flutter/flutter/wiki/Upgrading-pre-1.12-Android-projects), сканер штрих-кода теперь работает. Как заставить мой новый проект Flutter автоматически использовать v2 вместо v1. Нужна помощь специалиста.

Рабочий проект флаттера

```package com.example.u_testing
   import io.flutter.embedding.android.FlutterActivity
   class MainActivity: FlutterActivity() {
   }
```

Не рабочий проект

```package com.example.testi
   import android.os.Bundle
   import io.flutter.app.FlutterActivity
   import io.flutter.plugins.GeneratedPluginRegistrant
   class MainActivity: FlutterActivity() {
      override fun onCreate(savedInstanceState: Bundle?) {
      super.onCreate(savedInstanceState)
      GeneratedPluginRegistrant.registerWith(this)
   }
  }
 ````

Проект флаттера

PS D:\Development\Mobile\Example\test\testAndv1> flutter doctor -v
[√] Flutter (Channel stable, v1.17.1, on Microsoft Windows [Version 10.0.17763.1217], locale en-MY)
    • Flutter version 1.17.1 at C:\flutter
    • Framework revision f7a6a7906b (2 weeks ago), 2020-05-12 18:39:00 -0700
    • Engine revision 6bc433c6b6
    • Dart version 2.8.2

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at C:\Users\Thiyraash David\AppData\Local\Android\sdk
    • Platform android-29, build-tools 29.0.3
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
    • All Android licenses accepted.

[√] Android Studio (version 3.6)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.8052
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

[√] VS Code (version 1.45.1)
    • VS Code at C:\Users\Thiyraash David\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.10.2

[!] Connected device
    ! No devices available```
...