跳转至

开发环境指南

1.概述

介绍 Android 平台下 WECON SCL 库的调用方法、签名配置以及 SDK 库文件的集成方式。

2.准备工作

2.1 工程文件结构说明

WeconAppDemo/
├── app/                        ← 主应用模块(核心开发目录)
│   ├── src/
│   │   ├── main/
│   │   │   ├── java/           ← Java/Kotlin 源代码目录
│   │   │   ├── res/            ← 应用资源目录(布局、图片、字符串等)
│   │   │   ├── assets/         ← 资源文件(配置文件、测试数据等)
│   │   │   ├── jniLibs/        ← JNI 动态库文件目录(存放 .so 文件)
│   │   │   └── AndroidManifest.xml ← 应用清单文件
│   │   └── test/               ← 单元测试代码
│   ├── libs/                   ← 外部依赖库目录(.jar 或 .aar 文件)
│   ├── build.gradle            ← 模块级 Gradle 构建配置文件
│   └── proguard-rules.pro      ← 代码混淆配置文件
├── gradle/                     ← Gradle 构建工具配置目录
│   └── wrapper/                ← Gradle 包装器配置文件
├── build.gradle                ← 项目级 Gradle 配置文件
├── settings.gradle             ← 项目模块注册配置文件
├── local.properties            ← 本地环境配置文件(SDK 路径)
└── gradlew / gradlew.bat       ← Gradle 构建命令脚本(Linux / Windows)

2.2 Android Studio 视图说明

①:Android 视图:以模块化逻辑显示常用开发文件。Android视图会按照Android逻辑来显示文件,有被配置的文件一般会显示在其中,忽略其他的文件。

②:Project 视图:按文件系统层级展示所有文件。Project视图会显示项目的所有文件,并按照文件系统结构排列,适合看到项目完整的文件排列。

3.系统签名配置

3.1 签名文件说明

签名文件路径:GeneralAndroidSdk/Keystore/wecon.keystore
作用:赋予 App 系统级权限,确保能正常调用 SCL JNI 接口。

3.2 在配置文件中指定签名文件

①:将系统签名文件放置在app文件路径下。

②:在项目app对应的build.gradle.kts中添加字段,添加签名。

③:添加以下字段。

android {
    namespace = "com.example.weconappdemo"
    compileSdk = 35

    signingConfigs {
        // 创建一个名为 "customDebug" 的签名配置
        create("customDebug") {
            // 指定 keystore 文件的路径
            storeFile = file("wecon.keystore")
            // 指定 keystore 文件的密码
            storePassword = "android"
            // 指定密钥的别名
            keyAlias = "platform"
            // 指定密钥的密码
            keyPassword = "android"
        }
    }

    defaultConfig {
        applicationId = "com.example.weconappdemo"
        minSdk = 33
        targetSdk = 35
        versionCode = 1
        versionName = "1.0"

        testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
        ndk {
            abiFilters.addAll(listOf("arm64-v8a"))
        }
    }

    buildTypes {
        release {
            isMinifyEnabled = false
            proguardFiles(
                getDefaultProguardFile("proguard-android-optimize.txt"),
                "proguard-rules.pro"
            )
        }
        // 配置 debug 构建类型
        debug {
            // 指定 debug 构建类型使用的签名配置
            signingConfig = signingConfigs.getByName("customDebug")
        }
    }
    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_11
        targetCompatibility = JavaVersion.VERSION_11
    }
}

④:在项目的 AndroidManifest.xml 中修改 manifest 字段。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:sharedUserId="android.uid.system"
    android:sharedUserMaxSdkVersion="33">

3.3 手动指定签名文件生成 APK

①:打开 Android Studio 菜单,Build → Generate Signed App Bundle / APK...

②:选择APK

③:选择系统签名文件并输入相关字段

Key store password :android
Key alias :platform
Key password :android

④:构建 APK

⑤:生成路径在GeneralAndroidSdk(路径名)\WeconAppDemo\app\build\outputs\apk\debug

4.SCL 库集成与调用

4.1 导入 AAR 库

①:在Project视图中,在app目录下创建libs文件夹,存放aar库。

②:在 app/build.gradle 中配置依赖。

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
}

③:在 build.gradle.kts 中添加 aar 库的路径。

implementation(files("libs/scl-debug.aar"))

④:现在,我们在需要使用aar库的代码中,像库一样引入即可。