Mon projet utilise kotlin et quand je veux utiliser le plugin Local_auth, j'obtiens l'erreur ci-dessous:
package io.flutter.plugins.localauthexample;
import android.os.Bundle;
import io.flutter.app.FlutterFragmentActivity;
import io.flutter.plugins.GeneratedPluginRegistrant;
public class EmbeddingV1Activity extends FlutterFragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
GeneratedPluginRegistrant.registerWith(this);
}
}
ce que dit l'exemple de local_auth, c'est:
package io.flutter.plugins.localauthexample;
import io.flutter.embedding.android.FlutterFragmentActivity;
import io.flutter.embedding.engine.FlutterEngine;
import io.flutter.plugins.localauth.LocalAuthPlugin;
public class MainActivity extends FlutterFragmentActivity {
// TODO(bparrishMines): Remove this once v2 of GeneratedPluginRegistrant rolls to stable. https://github.com/flutter/flutter/issues/42694
@Override
public void configureFlutterEngine(FlutterEngine flutterEngine) {
flutterEngine.getPlugins().add(new LocalAuthPlugin());
}
}
et
PlatformException(no_fragment_activity, local_auth plugin requires activity to be a FragmentActivity., null)
mais le problème est que je ne connais pas kotlin et que je ne sais pas comment créer mon fichier kotlin. p>
aussi, je suppose (je ne suis pas sûr) que, cela peut être un bug de scintillement dans sa nouvelle version.
3 Réponses :
J'ai corrigé le mien en changeant FlutterActivity en FlutterFragmentActivity
dans:
/android/app/src/main/kotlin/../MainActivity.kt
J'obtiens l'erreur de construction "'configureFlutterEngine' ne remplace rien" ÉCHEC: la construction a échoué avec une exception. * Qu'est-ce qui s'est mal passé: l'exécution de la tâche ': app: compileDebugKotlin' a échoué. > Erreur de compilation. Voir le journal pour plus de détails. Je ne parviens pas à trouver l'emplacement du fichier journal Gradle. Donc, ne peut pas attacher ici.
Remplacez le code du fichier MainActivity.kt par ce
import androidx.annotation.NonNull;
import io.flutter.embedding.android.FlutterFragmentActivity
import io.flutter.embedding.android.FlutterActivity
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugins.GeneratedPluginRegistrant
class MainActivity: FlutterFragmentActivity() {
override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
}
}
J'obtiens l'erreur de construction "'configureFlutterEngine' ne remplace rien" ÉCHEC: la construction a échoué avec une exception. * Qu'est-ce qui s'est mal passé: l'exécution de la tâche ': app: compileDebugKotlin' a échoué. > Erreur de compilation. Voir le journal pour plus de détails
Je ne parviens pas à trouver l'emplacement du fichier journal Gradle. Donc, ne peut pas attacher ici.
@Plasmatiger avez-vous trouvé une solution à ce problème?
@KamranBashir désolé pour la réponse tardive. J'ai pu le résoudre mais je ne me souviens pas pour le moment.
Ouvrez MainActivity.kt et modifiez comme ci-dessous.
package com.[your.package]
import androidx.annotation.NonNull;
import io.flutter.embedding.android.FlutterFragmentActivity
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugins.GeneratedPluginRegistrant
class MainActivity: FlutterFragmentActivity() {
override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
}
}
Pour plus d'informations, consultez:
https://gist.github.com/akifarhan/f70a2c777651f2ea61a15eb92a5939c1
Reportez-vous à ce commentaire: github.com/flutter/flutter/issues/33429#issuecomment -4965989 97