# 配置

根据编译出来的unpackage/resource/app-android/{appid}/www/manifest.jsonapp->distribute->modules节点的模块配置,在下方的API与对应的库参照表中找到对应模块,完成以下配置。

注意:配置本地依赖库和配置线上依赖库都需要配置。

# 配置本地依赖库

将参照表中本地依赖库对应的aar拷贝到app模块的libs目录下。

# 配置线上依赖库

将参照表中的线上依赖库添加到app模块的build.gradle中。以uni-network为例,参考:

build.gradle

build.gradle.kts

	dependencies {
		implementation 'com.squareup.okhttp3:okhttp:3.12.12'
	}

# 插件注册

将参照表中的插件注册内容拷贝到build.gradle的defaultConfig节点下。以uni-previewImage为例,参考:

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniPreviewImage.UniPreviewImageExtApiPagesRegister\",\"method\":\"register\"}]"'
}

注意

如果多个模块需要配置同名的buildConfigField,不能分别声明(后声明的会覆盖先声明的),需要将这些配置的JSON合并到同一个数组中。以uni-picker为例,参考:

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniPicker.UniPickerExtApiComponentsRegister\",\"method\":\"register\"},{\"class\":\"uts.sdk.modules.DCloudUniPicker.UniPickerExtApiPagesRegister\",\"method\":\"register\"}]"'
}

# API与对应的库参照表

# uni-createRequestPermissionListener

属性内容
本地依赖库uni-createRequestPermissionListener-release.aar

# uni-createWebviewContext

属性内容
本地依赖库uni-createWebviewContext-release.aar

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'androidx.webkit:webkit:1.6.0'
}

# uni-fileSystemManager

属性内容
本地依赖库uni-fileSystemManager-release.aar

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'org.brotli:dec:0.1.2'
}

# uni-getNetworkType

属性内容
本地依赖库uni-getNetworkType-release.aar

# uni-installApk

属性内容
本地依赖库uni-installApk-release.aar

# uni-network

属性内容
本地依赖库uni-network-release.aar

enableQuic 配置

当使用 uni.requestenableQuic 属性开启 Quic/h3 协议时,需要根据发布渠道额外引入对应的 cronet 库(拷贝到 app 模块的 libs 目录下):

发布渠道 本地依赖库
谷歌渠道(GMS) uni-network-cronet-gms-release.aar
非谷歌渠道 uni-network-cronet-release.aar

注意

谷歌渠道与非谷歌渠道的 cronet 库不能同时引入。

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'com.squareup.okhttp3:okhttp:3.12.12'
}

# uni-websocket

属性内容
本地依赖库uni-websocket-release.aar

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'com.squareup.okhttp3:okhttp:3.12.12'
}

# uni-cloud-client

注意

该模块仅支持 VDOM模式,蒸汽模式(Vapor)已移除,无需配置。

属性内容
本地依赖库uni-cloud-client-release.aar
依赖的模块uni-network
uni-storage
uni-prompt
uni-media
uni-websocket
uni-secure-network
uni-modal
uni-showLoading

# uni-media

属性内容
本地依赖库uni-media-release.aar
nativeobj-preview-release.aar
依赖的模块uni-prompt
uni-actionSheet

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'com.github.bumptech.glide:glide:4.9.0'
    implementation 'androidx.recyclerview:recyclerview:1.0.0'
    implementation 'androidx.appcompat:appcompat:1.6.1'
    implementation 'androidx.activity:activity-ktx:1.9.2'
}

# uni-privacy

属性内容
本地依赖库uni-privacy-release.aar

# uni-getProvider

属性内容
本地依赖库uni-getProvider-release.aar

# uni-shareWithSystem

属性内容
本地依赖库uni-shareWithSystem-release.aar

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String[]', 'UTSHooksClassArray', '{"uts.sdk.modules.uniShareWithSystem.ShareWithSystemHook"}'
}

# uni-createInnerAudioContext

属性内容
本地依赖库uni-createInnerAudioContext-release.aar

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'com.google.android.exoplayer:exoplayer-core:2.18.0'
}

# uni-getBackgroundAudioManager

属性内容
本地依赖库uni-getBackgroundAudioManager-release.aar
依赖的模块uni-network

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'com.google.android.exoplayer:exoplayer-core:2.18.0'
}

# uni-chooseLocation

属性内容
本地依赖库uni-chooseLocation-release.aar
依赖的模块uni-theme
uni-getLocation
uni-cloud-client
uni-getLocation
uni-map-tencent

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniChooseLocation.UniChooseLocationExtApiPagesRegister\",\"method\":\"register\"}]"'
}

# uni-actionSheet

属性内容
本地依赖库uni-actionSheet-release.aar

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniActionSheet.UniActionSheetExtApiPagesRegister\",\"method\":\"register\"}]"'
}

# uni-previewImage

属性内容
本地依赖库uni-previewImage-release.aar
依赖的模块uni-media
uni-network
uni-fileSystemManager
uni-storage
uni-prompt
uni-modal
uni-actionSheet

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniPreviewImage.UniPreviewImageExtApiPagesRegister\",\"method\":\"register\"}]"'
}

# uni-chooseMedia

属性内容
本地依赖库uni-chooseMedia-release.aar
依赖的模块uni-modal
uni-actionSheet

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'androidx.appcompat:appcompat:1.6.1'
    implementation 'androidx.activity:activity-ktx:1.9.2'
}

# uni-arrayBufferToBase64

属性内容
本地依赖库uni-arrayBufferToBase64-release.aar

# uni-base64ToArrayBuffer

属性内容
本地依赖库uni-base64ToArrayBuffer-release.aar

# uni-sse

属性内容
本地依赖库uni-sse-release.aar

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'com.squareup.okhttp3:okhttp-sse:3.12.12'
}

# uni-modal

属性内容
本地依赖库uni-modal-release.aar

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniModal.UniModalExtApiPagesRegister\",\"method\":\"register\"}]"'
}

# uni-camera

属性内容
本地依赖库uni-camera-release.aar
依赖的模块uni-media

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'androidx.camera:camera-core:1.4.1'
    implementation 'androidx.camera:camera-camera2:1.4.1'
    implementation 'androidx.camera:camera-lifecycle:1.4.1'
    implementation 'androidx.camera:camera-view:1.4.1'
    implementation 'androidx.appcompat:appcompat:1.7.0'
}

插件注册

build.gradle(VDOM模式)

build.gradle.kts(VDOM模式)

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniCamera.UniCameraExtApiComponentsRegister\",\"method\":\"register\"}]"'
}

# uni-requestMerchantTransfer

属性内容
本地依赖库uni-requestMerchantTransfer-release.aar

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'com.tencent.mm.opensdk:wechat-sdk-android:6.8.0'
}

# uni-recorder

属性内容
本地依赖库uni-recorder-release.aar
audio-mp3aac-release.aar

# uni-makePhoneCall

属性内容
本地依赖库uni-makePhoneCall-release.aar

# uni-clipboard

属性内容
本地依赖库uni-clipboard-release.aar

# uni-keyboard

属性内容
本地依赖库uni-keyboard-release.aar

# uni-openDocument

属性内容
本地依赖库uni-openDocument-release.aar
依赖的模块uni-fileSystemManager

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String[]', 'UTSHooksClassArray', '{"uts.sdk.modules.DCloudUniOpenDocument.UniOpenDocumentHookProxy"}'
}

# uni-barcode-scanning

属性内容
本地依赖库uni-barcode-scanning-release.aar
依赖的模块uni-camera
uni-getSystemInfo

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'androidx.camera:camera-core:1.4.1'
    implementation 'com.google.mlkit:barcode-scanning:17.2.0'
    implementation 'com.github.albfernandez:juniversalchardet:2.0.4'
}

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String[]', 'UTSHooksClassArray', '{"uts.sdk.modules.DCloudUniBarcodeScanning.AppHookProxy"}'
}

# uni-match-media

注意

该模块仅支持 VDOM模式,蒸汽模式(Vapor)已移除,无需配置。

属性内容
本地依赖库uni-match-media-release.aar
依赖的模块uni-getDeviceInfo

插件注册

HBuilderX 5.0及之后版本配置:

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"type\":\"customElement\",\"name\":\"match-media\",\"class\":\"uts.sdk.modules.DCloudUniMatchMedia.UniMatchMediaElementRegister\",\"method\":\"register\"}]"'
}

# uni-scanCode

属性内容
本地依赖库uni-scanCode-release.aar
依赖的模块uni-camera
uni-barcode-scanning
uni-media
uni-getSystemInfo

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'androidx.camera:camera-core:1.4.1'
    implementation 'androidx.appcompat:appcompat:1.7.0'
}

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniScanCode.UniScanCodeExtApiPagesRegister\",\"method\":\"register\"}]"'
}

# uni-rich-text

属性内容
本地依赖库(蒸汽模式)richtext-release.aar
本地依赖库(VDOM模式)uni-rich-text-release.aar
依赖的模块uni-arrayBufferToBase64
uni-web-view

插件注册(VDOM模式)

HBuilderX 5.0之前版本配置:

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"type\":\"customElement\",\"name\":\"rich-text\",\"class\":\"uts.sdk.modules.DCloudUniRichText.UniRichTextElementRegister\",\"method\":\"register\"}]"'
}

HBuilderX 5.0及之后版本配置:

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniRichText.UniRichTextExtApiComponentsRegister\",\"method\":\"register\"}]"'
}

蒸汽模式(Vapor)说明

蒸汽模式(Vapor)下对应模块为 uni-rich-text-native,本地依赖库为 richtext-release.aar,无需插件注册。支持的 ABI 架构:armeabi-v7aarm64-v8ax86x86_64

# uni-live-player

属性内容
本地依赖库uni-live-player-release.aar

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'com.qiniu:qplayer2-core:1.5.0'
}

插件注册

build.gradle(VDOM模式)

build.gradle.kts(VDOM模式)

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniLivePlayer.UniLivePlayerExtApiComponentsRegister\",\"method\":\"register\"}]"'
}

# uni-live-pusher

属性内容
本地依赖库uni-live-pusher-release.aar
pldroid-media-streaming-3.1.6.jar
依赖的模块uni-fileSystemManager
uni-network

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'androidx.core:core:1.10.1'
    implementation 'android.arch.lifecycle:extensions:1.1.1'
    implementation 'com.qiniu:happy-dns:1.0.0'
}

插件注册

build.gradle(VDOM模式)

build.gradle.kts(VDOM模式)

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniLivePusher.UniLivePusherExtApiComponentsRegister\",\"method\":\"register\"}]"'
}

# uni-loading

属性内容
本地依赖库uni-loading-release.aar

插件注册

build.gradle(VDOM模式)

build.gradle.kts(VDOM模式)

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniLoading.UniLoadingExtApiComponentsRegister\",\"method\":\"register\"}]"'
}

# uni-showLoading

属性内容
本地依赖库uni-showLoading-release.aar
依赖的模块uni-theme
uni-getSystemInfo
uni-loading

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniShowLoading.UniShowLoadingExtApiPagesRegister\",\"method\":\"register\"}]"'
}

# uni-web-view

属性内容
本地依赖库uni-web-view-release.aar

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'androidx.webkit:webkit:1.6.0'
    implementation 'androidx.appcompat:appcompat:1.1.0'
}

插件注册

build.gradle(VDOM模式)

build.gradle.kts(VDOM模式)

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniWebView.UniWebViewExtApiComponentsRegister\",\"method\":\"register\"}]"'
}

# uni-page-container(hx5.15起不需要配)

属性内容
本地依赖库uni-page-container-release.aar

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniPageContainer.UniPageContainerExtApiComponentsRegister\",\"method\":\"register\"}]"'
}

# uni-accelerometer

属性内容
本地依赖库uni-accelerometer-release.aar

# uni-authentication

属性内容
本地依赖库uni-authentication-release.aar

# uni-calendar

属性内容
本地依赖库uni-calendar-release.aar

# uni-compass

属性内容
本地依赖库uni-compass-release.aar

# uni-editor

属性内容
本地依赖库uni-editor-release.aar
依赖的模块uni-web-view

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniEditor.UniEditorExtApiComponentsRegister\",\"method\":\"register\"}]"'
}

# uni-gyroscope

属性内容
本地依赖库uni-gyroscope-release.aar

# uni-memory

属性内容
本地依赖库uni-memory-release.aar

# uni-phoneContact

属性内容
本地依赖库uni-phoneContact-release.aar
依赖的模块uni-media
uni-getAppBaseInfo
uni-actionSheet

# uni-picker

注意

该模块仅支持 VDOM模式,蒸汽模式(Vapor)已移除,无需配置。

属性内容
本地依赖库uni-picker-release.aar
依赖的模块uni-theme
uni-getSystemInfo
uni-getAppBaseInfo
uni-getDeviceInfo

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniPicker.UniPickerExtApiComponentsRegister\",\"method\":\"register\"},{\"class\":\"uts.sdk.modules.DCloudUniPicker.UniPickerExtApiPagesRegister\",\"method\":\"register\"}]"'
}

# uni-screenBrightness

属性内容
本地依赖库uni-screenBrightness-release.aar

# uni-vibrate

属性内容
本地依赖库uni-vibrate-release.aar

# uni-openLocation

属性内容
本地依赖库uni-openLocation-release.aar
依赖的模块uni-actionSheet
uni-getAppBaseInfo
uni-theme
uni-prompt
uni-getSystemInfo
uni-map-tencent

插件注册

build.gradle

build.gradle.kts

defaultConfig {
    buildConfigField 'String', 'UTSEasyCom', '"[{\"class\":\"uts.sdk.modules.DCloudUniOpenLocation.UniOpenLocationExtApiPagesRegister\",\"method\":\"register\"}]"'
}

# 仅蒸汽模式(Vapor)支持的模块

以下模块仅支持 蒸汽模式(Vapor),VDOM模式不包含。

# uni-form

属性内容
本地依赖库uni-form-release.aar
依赖的模块uni-theme
uni-getSystemInfo
uni-dialogPage
uni-event

# uni-requestSystemPermission

属性内容
本地依赖库uni-requestSystemPermission-release.aar

配置线上依赖库

build.gradle

build.gradle.kts

dependencies {
    implementation 'com.github.getActivity:XXPermissions:18.63'
}

各模块对应的API可参考文档App端支持的内置模块列表

# 其他模块

# canvas

本地依赖库

模式 名称
蒸汽模式(Vapor) uni-canvas-dom2-release.aar
uni-canvas-component-release.aar
VDOM模式 uni-canvas-release.aar
uni-canvas-component-release.aar

组件注册

将以下内容添加到主模块的build.gradle,详见根据configjson配置应用

build.gradle(VDOM模式)

build.gradle.kts(VDOM模式)

defaultConfig {
    buildConfigField "String", "UTSRegisterComponents", "\"[{\\\"name\\\":\\\"canvas\\\",\\\"class\\\":\\\"io.dcloud.canvas.CanvasComponent\\\",\\\"node\\\":\\\"io.dcloud.canvas.UniCanvasElementImpl\\\"}]\""
}

uni-ad

uni-video

uni-push

uni-facialRecognitionVerify

uni-verify

uni-payment

uni-map-tencent

uni-getLocation

uni-oauth

uni-share