10
0

[MWA-5265] Meta Demo: Theming via xml testen

{Update dependencies and plugin initialization}
This commit is contained in:
andre 2025-11-17 15:18:07 +01:00
parent 994ea9768d
commit e847e303ba
9 changed files with 121 additions and 28 deletions

56
ahoy_rtc_sdk/build.gradle Normal file
View File

@ -0,0 +1,56 @@
apply plugin: "maven-publish"
configurations.maybeCreate("default")
def publishArtifact = artifacts.add("default", file('src/lib/ahoysdk.aar'))
// set maven repository URL
ext.isSnapshot = ahoy_library_versionName.endsWith("-SNAPSHOT")
def mavenUrl = isSnapshot ? ahoy_publish_snapshotRepositoryUrl : ahoy_publish_releaseRepositoryUrl
if (ahoy_publish_toBuildDir.toBoolean()) {
mavenUrl = "file://$buildDir/repos/" + isSnapshot ? 'snapshots' : 'releases'
}
publishing {
publications {
aar(MavenPublication) {
groupId = ahoy_library_groupId
artifactId = ahoy_library_artifactId
version = ahoy_library_versionName
artifact publishArtifact
pom.withXml {
// 2. add dependencies
def dependenciesNode = asNode().appendNode('dependencies')
def node = dependenciesNode.appendNode('dependency')
node.appendNode('groupId', 'org.java-websocket')
node.appendNode('artifactId', 'Java-WebSocket')
node.appendNode('version', '1.5.7')
node.appendNode('scope', 'compile')
// 3. configure pom.xml extra information
asNode().children().last() + {
resolveStrategy = Closure.DELEGATE_FIRST
name ahoy_library_name
url ahoy_library_url
description ahoy_library_description
}
}
}
}
// Config maven repository
repositories {
maven {
url mavenUrl
credentials {
username = ahoy_publish_username
password = ahoy_publish_password
}
}
}
}
repositories {
google()
mavenCentral()
}

View File

@ -0,0 +1,19 @@
ahoy_library_name = Ahoy's native android SDK
ahoy_library_description = Ahoy's mobile app SDK for android.
ahoy_library_url = https://ahoyrtc.com/
ahoy_library_groupId = com.ahoyrtc
ahoy_library_artifactId= sdk
ahoy_library_versionName = 1.47
# url including scheme, host and port
ahoy_publish_toBuildDir = false
ahoy_publish_snapshotRepositoryUrl=https://api.webid-solutions.de/releases/android/maven/repository/snapshots
ahoy_publish_releaseRepositoryUrl=https://api.webid-solutions.de/releases/android/maven/repository/internal
# Do not put real credentials here!
# Instead, copy to ~/.gradle/gradle.properties and set the values there.
ahoy_publish_username =
ahoy_publish_password =

View File

@ -0,0 +1 @@

Binary file not shown.

View File

@ -64,24 +64,27 @@ dependencies {
// webid product-plugin
//noinspection GradleDependency
def product_catalog_version = "15.1.1"
def product_catalog_version = "21.1.1-a-SNAPSHOT"
implementation ("de.webid-solutions:android_meta_plugin:$product_catalog_version") {
changing = true
}
implementation ("de.webid-solutions:android_auto_ident_on_server_product_plugin:$product_catalog_version") {
implementation ("de.webid-solutions:android_auto_ident_product_plugin:$product_catalog_version") {
changing = true
}
implementation ("de.webid-solutions:android_pay_on_server_product_plugin:$product_catalog_version") {
implementation ("de.webid-solutions:android_pay_ident_product_plugin:$product_catalog_version") {
changing = true
}
implementation ("de.webid-solutions:android_video_ident_product_plugin:$product_catalog_version") {
changing = true
}
implementation ("de.webid-solutions:android_eid_on_server_product_plugin:$product_catalog_version") {
implementation ("de.webid-solutions:android_eid_product_plugin:$product_catalog_version") {
changing = true
}
implementation("de.webid-solutions:android_document_scanner:20.3.0-SNAPSHOT")
def composeBom = platform('androidx.compose:compose-bom:2025.11.00')
implementation composeBom
androidTestImplementation composeBom

View File

@ -7,6 +7,7 @@ package de.webidsolutions.metaplugindemo
import android.annotation.SuppressLint
import android.content.Intent
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.result.ActivityResult
import androidx.activity.result.contract.ActivityResultContracts
@ -15,8 +16,8 @@ import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.setValue
import de.webidsolutions.auto_ident_on_server_product_plugin.AutoIdentOnServerProductPlugin
import de.webidsolutions.eid_on_server_product_plugin.EIdOnServerProductPlugin
import de.webidsolutions.auto_ident_product_plugin.AutoIdProductPlugin
import de.webidsolutions.eid_product_plugin.EIdProductPlugin
import de.webidsolutions.meta_plugin.EMetaPluginFailReason
import de.webidsolutions.meta_plugin.WebIdMetaPlugin
import de.webidsolutions.metaplugindemo.scenes.MetaPluginDemoScreen
@ -27,7 +28,7 @@ import de.webidsolutions.mobile_app.sdk.WebIdMobileAppSdkException
import de.webidsolutions.mobile_app.sdk.WebIdSdkEnvironment
import de.webidsolutions.mobile_app.sdk.domain.VerifyActionIdResult
import de.webidsolutions.mobile_app.sdk.impl.AsyncTaskResultGeneric
import de.webidsolutions.pay_on_server_product_plugin.PayOnServerProductPlugin
import de.webidsolutions.pay_ident_product_plugin.AccountIdProductPlugin
import de.webidsolutions.plugin_core.EProductPluginErrors
import de.webidsolutions.plugin_core.IEPluginError
import de.webidsolutions.plugin_core.IProductPluginWebId
@ -36,8 +37,8 @@ import de.webidsolutions.plugin_core.ProductPluginErrorResult
import de.webidsolutions.plugin_core.ProductPluginResult
import de.webidsolutions.plugin_core.WebIdPluginInterruptedException
import de.webidsolutions.video_ident.plugin.videocall.VideoOptionsConfig
import de.webidsolutions.video_ident_product_plugin.EVideoIdentProductPluginFailReasons
import de.webidsolutions.video_ident_product_plugin.VideoIdentProductPlugin
import de.webidsolutions.video_ident_product_plugin.VideoIdProductFailReason
import de.webidsolutions.video_ident_product_plugin.VideoIdProductPlugin
import java.lang.Integer.parseInt
import java.net.URI
@ -58,7 +59,8 @@ private val chosenEnvironment: EWebIDEnv = EWebIDEnv.TEST
/**
* Demo App which starts the [MetaPlugin] and handles its result.
*/
internal class MainActivity : AppCompatActivity() {
internal class MainActivity : ComponentActivity
() {
private var logText by mutableStateOf("")
@ -165,10 +167,10 @@ internal class MainActivity : AppCompatActivity() {
): ArrayList<IProductPluginWebId> {
return ArrayList(
listOfNotNull(
if (useAutoIdent) AutoIdentOnServerProductPlugin() else null,
if (usePayOnServer) PayOnServerProductPlugin() else null,
if (useEidOnServer) EIdOnServerProductPlugin() else null,
if (useVideo) VideoIdentProductPlugin(config) else null,
if (useAutoIdent) AutoIdProductPlugin() else null,
if (usePayOnServer) AccountIdProductPlugin() else null,
if (useEidOnServer) EIdProductPlugin() else null,
if (useVideo) VideoIdProductPlugin(config) else null,
)
)
}
@ -180,7 +182,7 @@ internal class MainActivity : AppCompatActivity() {
metaPlugin.startPlugin(
this,
activityResultLauncher,
R.style.CustomizedPluginTheme,
true,
)
} catch (e: WebIdMobileAppSdkException) {
e.printStackTrace()
@ -229,8 +231,8 @@ internal class MainActivity : AppCompatActivity() {
}
} else {
// handle EVideoIdentProductPluginFailReasons
if (specificResult is EVideoIdentProductPluginFailReasons) {
if (specificResult == EVideoIdentProductPluginFailReasons.CALL_CENTER_CLOSED) {
if (specificResult is VideoIdProductFailReason) {
if (specificResult == VideoIdProductFailReason.CALL_CENTER_CLOSED) {
// handle CALL_CENTER_CLOSED as described in code documentation
writeLog("CALL_CENTER_CLOSED")
} else {

View File

@ -5,9 +5,10 @@
<item name="colorPrimary">#05b1fb</item>
</style>
<style name="CustomizedPluginTheme" parent="WebId.PluginTheme.Dark">
<!--
Implement your customized style attributes here for standard and/or light theme.
-->
<!-- Fallback theme for XML-based theming option in dark mode -->
<style name="CustomizedPluginTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
<item name="colorPrimary">#05b1fb</item>
<item name="colorPrimaryDark">#0490d0</item>
<item name="colorAccent">#05b1fb</item>
</style>
</resources>
</resources>

View File

@ -5,9 +5,10 @@
<item name="colorPrimary">#05b1fb</item>
</style>
<style name="CustomizedPluginTheme" parent="WebId.PluginTheme.Light">
<!--
Implement your customized style attributes here for standard and/or light theme.
-->
<!-- Fallback theme for XML-based theming option -->
<style name="CustomizedPluginTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
<item name="colorPrimary">#05b1fb</item>
<item name="colorPrimaryDark">#0490d0</item>
<item name="colorAccent">#05b1fb</item>
</style>
</resources>
</resources>

View File

@ -14,7 +14,17 @@ dependencyResolutionManagement {
// add the webid repo to receive the plugin
maven {
url 'https://api.webid-solutions.de/releases/android/maven/repository/internal'
url "https://api.webid-solutions.de/releases/android/maven/repository/snapshots"
}
maven {
url "https://api.webid-solutions.de/releases/android/maven2/snapshots"
}
// use our release repository for releases
maven {
url "https://api.webid-solutions.de/releases/android/maven/repository/internal"
}
maven {
url "https://api.webid-solutions.de/releases/android/maven2/releases"
}
}
}