【问题标题】:Biometric Auth in flutterFlutter 中的生物特征认证
【发布时间】:2020-05-05 19:57:25
【问题描述】:

在 IOS 中是可以的。 FaceId 正在工作。但在 Android 中,指纹不起作用。 错误:I/flutter (19430):[BiometricType.fingerprint] I/flutter (19430):PlatformException(no_fragment_activity,local_auth 插件要求活动是 FragmentActivity。,null)。我的代码没有 MainActivity.java。在下面嵌入

我的 AndroidManifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="io.flutter.examples.test">

    <!-- The INTERNET permission is required for development. Specifically,
         flutter needs it to communicate with the running application
         to allow setting breakpoints, to provide hot reload, etc.
    -->
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.USE_FINGERPRINT"/>
    <uses-permission android:name="android.permission.USE_BIOMETRIC"/>

    <application android:label="AY">
        <activity android:name="io.flutter.embedding.android.FlutterActivity"
                  android:theme="@android:style/Theme.Black.NoTitleBar"
                  android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
                  android:hardwareAccelerated="true"
                  android:windowSoftInputMode="adjustResize">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
   <!-- Don't delete the meta-data below.
        This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
        <meta-data
            android:name="flutterEmbedding"
            android:value="2" />
    </application>
</manifest>

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    权限

    <uses-permission android:name="android.permission.USE_FINGERPRINT" />
    

    如果你有java代码

    package yourpackagename;
    
    import android.os.Bundle;
    import io.flutter.app.FlutterActivity;
    import io.flutter.plugins.GeneratedPluginRegistrant;
    
    public class MainActivity extends FlutterActivity {
      @Override
      protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        GeneratedPluginRegistrant.registerWith(this);
      }
    }
    

    如果你有 kotlin 代码

    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);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2020-04-19
      • 2016-02-18
      • 1970-01-01
      • 2015-12-21
      • 1970-01-01
      • 2021-03-23
      • 1970-01-01
      • 2020-09-29
      • 1970-01-01
      相关资源
      最近更新 更多