alí hassan
to migrate your project. You may also pass the --ignore-deprecation flag to
ignore this check and continue with the deprecated v1 embedding. However,
the v1 Android embedding will be removed in future versions of Flutter.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
The detected reason was:
C:\Users\ALI HASSAN\OneDrive\Desktop\New folder\arcore_app\example\android\app\src\main\AndroidManifest.xml uses
`android:name="io.flutter.app.FutterApplication"`
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Build failed due to use of deprecated Android v1 embedding.
Ahmed El Rhaouti
Necesitas cambiar el android\aplicación\src\principal\AndroidManifest.xml expediente.
De :
<application
android:name="io.flutter.app.FlutterApplication"
...
A :
<application
android:name="${applicationName}"
...
agregue estas tres líneas si no existe:
<meta-data
android:name="flutterEmbedding"
android:value="2" />
...
Esto lo utiliza la herramienta Flutter para generar GeneratedPluginRegistrant.java.
-
este es solo el paso 3 de la migración de la aplicación Full-Flutter github.com/flutter/flutter/wiki/…
– Adel Ben Hamadi
13/03/2022 a las 15:55
Cambie el archivo android AndroidManifest.xml
<application
android:name="io.flutter.app.FlutterApplication"
...
</application>
A
android:name="${applicationName}"
También se agregaron estas dos líneas
<meta-data
android:name="flutterEmbedding"
android:value="2" />
-
¿Leíste la primera respuesta a esta publicación antes de comentar? stackoverflow.com/a/71457907/7969733
– sgrysoft
21 de junio de 2022 a las 20:33
Dependiendo de lo que esté haciendo, puede optar por ignorar el error.
Yo, por ejemplo, estoy siguiendo una clase en línea que proporciona un código de plantilla para cada lección. Sin embargo, el código de la plantilla está desactualizado y realmente no necesito migrarlo para continuar.
En Android Studio esto se puede lograr agregando el --ignore-deprecation
marca al campo ‘Argumentos de ejecución adicionales:’:
Si dejaste tu proyecto hace mucho tiempo y regresaste ahora, tienes algunas cosas que cambiar, pero son simples si las conoces:
Manifiesto
Cambia lo que hayas escrito antes aquí con:
<application android:name="${applicationName}"
añadir
<application android:exported="true"...>
<meta-data
android:name="flutterEmbedding"
android:value="2" />..
En el tema principal de la actividad principal atención a corregir con:
<meta-data android:name="io.flutter.embedding.android.NormalTheme" android:resource="your theme" />
Espero que tengas el kotlin clase como referencia, para que pueda ir en el caso de MainActivity.kt:
package com.yourpackage.....
import io.flutter.embedding.android.FlutterActivity
class MainActivity: FlutterActivity() {
//If you have some native code put it back
}
Si usted tiene Java Actividad principal:
package com.yourpackage.....
import io.flutter.embedding.android.FlutterActivity;
public class MainActivity extends FlutterActivity {
// You can keep this empty class or remove it.
}
También vale la pena actualizar targetSdkVersion y compilarSdkVersionen mi caso en: 31
Puede encontrar la solución creando un nuevo proyecto con el SDK más reciente y comparando el archivo android\app\src\main\AndroidManifest.xml de los dos proyectos.
-
Imagina que estás en un ambiente de producción y se lo sugieres al gerente.
– sgrysoft
21/06/2022 a las 20:31
Devdip rachchh
en el archivo principal Manifest.xml,
establecer android: exportado = “falso”.
otra solución es,
en la aplicación gradle,
cambie Targetsdkversion a 30 y Compilesdkversion a 31
trabajó para mi
-
Imagina que estás en un ambiente de producción y se lo sugieres al gerente.
– sgrysoft
21/06/2022 a las 20:31
Miguel
Exactamente como el error le indica que está utilizando una versión de incrustación obsoleta. Para actualizar a una versión más nueva, haga lo siguiente:
-
Vaya a android/app/src/main/java/[your/package/name]/MainActivity.java abre MainActivity.java o MainActivity.kt.
-
Eliminar las siguientes dependencias
import android.os.Bundle; import io.flutter.app.FlutterActivity; import io.flutter.plugins.GeneratedPluginRegistrant;
y reemplácelos con la siguiente línea
import io.flutter.embedding.android.FlutterActivity;
-
Abra android/app/src/main/AndroidManifest.xml.
-
Reemplace la referencia a FlutterApplication en la etiqueta de la aplicación con ${applicationName} de la siguiente manera
<application android:name="${applicationName}" > <!-- code omitted --> </application>
5.Elimine todas las etiquetas con la clave android:name=”io.flutter.app.android.SplashScreenUntilFirstFrame”. y agregue una nueva etiqueta en la aplicación.
<meta-data
android:name="flutterEmbedding"
android:value="2" />
después de eso todo debería funcionar bien
Aclare su problema específico o proporcione detalles adicionales para resaltar exactamente lo que necesita. Tal como está escrito actualmente, es difícil decir exactamente lo que está preguntando.
– Comunidad
Bot
9 de marzo de 2022 a las 17:53