Element config (#4471)
* Add handy extension "VariantDimension.buildConfigFieldStr" * Update configuration for MapTiler. * Update configuration for Sentry. * Build AnalyticsConfig depending on analytics configuration. * Configure analytics policy url. * Add handy extension "VariantDimension.buildConfigFieldBoolean" * Configure legal urls. * Add a way to disable rageshake / reporting bugs. * Update screenshots * Quality * Fix test * Use `ifBlank` extension * Add missing configuration for PostHog * Update configuration for Rageshake. * Add build log. * Disable crash detection if rageshake feature is not available. Disabled twice. * Hide link to analytics policy if the link is missing. * Fix test when run in enterprise context. * Use RageshakeFeatureAvailability where appropriate. * Rename file. * Move some classes to their correct module. * Update screenshots --------- Co-authored-by: ElementBot <android@element.io>
This commit is contained in:
@@ -1,3 +1,6 @@
|
||||
import config.BuildTimeConfig
|
||||
import extension.buildConfigFieldStr
|
||||
|
||||
/*
|
||||
* Copyright 2022-2024 New Vector Ltd.
|
||||
*
|
||||
@@ -10,6 +13,37 @@ plugins {
|
||||
|
||||
android {
|
||||
namespace = "io.element.android.appconfig"
|
||||
|
||||
buildFeatures {
|
||||
buildConfig = true
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
buildConfigFieldStr(
|
||||
name = "URL_POLICY",
|
||||
value = if (isEnterpriseBuild) {
|
||||
BuildTimeConfig.URL_POLICY ?: ""
|
||||
} else {
|
||||
"https://element.io/cookie-policy"
|
||||
},
|
||||
)
|
||||
buildConfigFieldStr(
|
||||
name = "BUG_REPORT_URL",
|
||||
value = if (isEnterpriseBuild) {
|
||||
BuildTimeConfig.BUG_REPORT_URL ?: ""
|
||||
} else {
|
||||
"https://riot.im/bugreports/submit"
|
||||
},
|
||||
)
|
||||
buildConfigFieldStr(
|
||||
name = "BUG_REPORT_APP_NAME",
|
||||
value = if (isEnterpriseBuild) {
|
||||
BuildTimeConfig.BUG_REPORT_APP_NAME ?: ""
|
||||
} else {
|
||||
"element-x-android"
|
||||
},
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
@@ -8,5 +8,5 @@
|
||||
package io.element.android.appconfig
|
||||
|
||||
object AnalyticsConfig {
|
||||
const val POLICY_LINK = "https://element.io/cookie-policy"
|
||||
const val POLICY_LINK = BuildConfig.URL_POLICY
|
||||
}
|
||||
|
||||
@@ -11,17 +11,23 @@ object RageshakeConfig {
|
||||
/**
|
||||
* The URL to submit bug reports to.
|
||||
*/
|
||||
const val BUG_REPORT_URL = "https://riot.im/bugreports/submit"
|
||||
const val BUG_REPORT_URL = BuildConfig.BUG_REPORT_URL
|
||||
|
||||
/**
|
||||
* As per https://github.com/matrix-org/rageshake:
|
||||
* Identifier for the application (eg 'riot-web').
|
||||
* Should correspond to a mapping configured in the configuration file for github issue reporting to work.
|
||||
*/
|
||||
const val BUG_REPORT_APP_NAME = "element-x-android"
|
||||
const val BUG_REPORT_APP_NAME = BuildConfig.BUG_REPORT_APP_NAME
|
||||
|
||||
/**
|
||||
* The maximum size of the upload request. Default value is just below CloudFlare's max request size.
|
||||
*/
|
||||
const val MAX_LOG_UPLOAD_SIZE = 50 * 1024 * 1024L
|
||||
}
|
||||
|
||||
/**
|
||||
* Whether the rageshake feature is enabled.
|
||||
*/
|
||||
val RageshakeConfig.isEnabled: Boolean
|
||||
get() = BUG_REPORT_URL.isNotEmpty() && BUG_REPORT_APP_NAME.isNotEmpty()
|
||||
|
||||
Reference in New Issue
Block a user