AdvancedBiometricPromptCompat 项目教程
1. 项目的目录结构及介绍
AdvancedBiometricPromptCompat 项目的目录结构如下:
AdvancedBiometricPromptCompat/
├── app/
├── biometric-api/
├── biometric-ktx/
├── biometric/
├── common/
├── gradle/wrapper/
├── screenshots/
├── scripts/
├── .gitignore
├── DRAFT.md
├── LICENSE
├── README.md
├── build.gradle
├── current_logo.jpg
├── findbugs-android-exclude.xml
├── gradle.properties
├── gradlew
├── gradlew.bat
├── owasp-suppress.xml
目录介绍:
- app: 包含示例应用程序的代码。
- biometric-api: 包含生物识别 API 的核心实现。
- biometric-ktx: 包含 Kotlin 扩展函数。
- biometric: 包含生物识别功能的具体实现。
- common: 包含公共工具和辅助类。
- gradle/wrapper: 包含 Gradle 包装器文件。
- screenshots: 包含项目截图。
- scripts: 包含项目脚本。
- .gitignore: Git 忽略文件。
- DRAFT.md: 草稿文档。
- LICENSE: 项目许可证。
- README.md: 项目自述文件。
- build.gradle: 根目录的构建脚本。
- current_logo.jpg: 项目当前的 Logo。
- findbugs-android-exclude.xml: FindBugs 排除配置文件。
- gradle.properties: Gradle 属性文件。
- gradlew: Gradle 包装器脚本。
- gradlew.bat: Gradle 包装器脚本的 Windows 版本。
- owasp-suppress.xml: OWASP 抑制配置文件。
2. 项目的启动文件介绍
项目的启动文件主要位于 app
目录下,其中 MainActivity
是应用程序的主活动。
MainActivity.kt
package com.example.biometric
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}
启动流程:
- Application 类初始化: 在
Application
类的onCreate
方法中初始化BiometricPromptCompat
。 - MainActivity 启动: 应用程序启动时,
MainActivity
被创建并显示主界面。
3. 项目的配置文件介绍
build.gradle
根目录下的 build.gradle
文件包含了项目的全局配置,例如依赖管理、插件应用等。
// 根目录的 build.gradle 文件
buildscript {
ext.kotlin_version = '1.5.21'
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
allprojects {
repositories {
google()
mavenCentral()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
gradle.properties
gradle.properties
文件包含了 Gradle 构建系统的属性配置,例如 JVM 参数、项目版本等。
# gradle.properties 文件
org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
android.useAndroidX=true
android.nonTransitiveRClass=true
AndroidManifest.xml
app
目录下的 AndroidManifest.xml
文件包含了应用程序的配置信息,例如权限声明、活动声明等。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.biometric">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android: