mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-03 16:10:00 +00:00
Read versionCode from the Manifest, since BuildConfig.VERSION_CODE does not contain the correct last digit.
This commit is contained in:
@@ -26,6 +26,7 @@ import dagger.Provides
|
|||||||
import io.element.android.appconfig.ApplicationConfig
|
import io.element.android.appconfig.ApplicationConfig
|
||||||
import io.element.android.features.messages.impl.timeline.components.customreaction.DefaultEmojibaseProvider
|
import io.element.android.features.messages.impl.timeline.components.customreaction.DefaultEmojibaseProvider
|
||||||
import io.element.android.features.messages.impl.timeline.components.customreaction.EmojibaseProvider
|
import io.element.android.features.messages.impl.timeline.components.customreaction.EmojibaseProvider
|
||||||
|
import io.element.android.libraries.androidutils.system.getVersionCodeFromManifest
|
||||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||||
import io.element.android.libraries.core.meta.BuildMeta
|
import io.element.android.libraries.core.meta.BuildMeta
|
||||||
import io.element.android.libraries.core.meta.BuildType
|
import io.element.android.libraries.core.meta.BuildType
|
||||||
@@ -87,7 +88,7 @@ object AppModule {
|
|||||||
// TODO EAx Config.LOW_PRIVACY_LOG_ENABLE,
|
// TODO EAx Config.LOW_PRIVACY_LOG_ENABLE,
|
||||||
lowPrivacyLoggingEnabled = false,
|
lowPrivacyLoggingEnabled = false,
|
||||||
versionName = BuildConfig.VERSION_NAME,
|
versionName = BuildConfig.VERSION_NAME,
|
||||||
versionCode = BuildConfig.VERSION_CODE,
|
versionCode = context.getVersionCodeFromManifest(),
|
||||||
gitRevision = BuildConfig.GIT_REVISION,
|
gitRevision = BuildConfig.GIT_REVISION,
|
||||||
gitBranchName = BuildConfig.GIT_BRANCH_NAME,
|
gitBranchName = BuildConfig.GIT_BRANCH_NAME,
|
||||||
flavorDescription = BuildConfig.FLAVOR_DESCRIPTION,
|
flavorDescription = BuildConfig.FLAVOR_DESCRIPTION,
|
||||||
|
|||||||
+14
@@ -28,6 +28,7 @@ import android.widget.Toast
|
|||||||
import androidx.activity.result.ActivityResultLauncher
|
import androidx.activity.result.ActivityResultLauncher
|
||||||
import androidx.annotation.ChecksSdkIntAtLeast
|
import androidx.annotation.ChecksSdkIntAtLeast
|
||||||
import androidx.annotation.RequiresApi
|
import androidx.annotation.RequiresApi
|
||||||
|
import androidx.core.content.pm.PackageInfoCompat
|
||||||
import io.element.android.libraries.androidutils.R
|
import io.element.android.libraries.androidutils.R
|
||||||
import io.element.android.libraries.androidutils.compat.getApplicationInfoCompat
|
import io.element.android.libraries.androidutils.compat.getApplicationInfoCompat
|
||||||
import io.element.android.libraries.core.mimetype.MimeTypes
|
import io.element.android.libraries.core.mimetype.MimeTypes
|
||||||
@@ -47,6 +48,19 @@ fun Context.getApplicationLabel(packageName: String): String {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve the versionCode from the Manifest.
|
||||||
|
* The value is more accurate than BuildConfig.VERSION_CODE, as it is correct according to the
|
||||||
|
* computation in the `androidComponents` block of the app build.gradle.kts file.
|
||||||
|
* In other words, the last digit (for the architecture) will be set, whereas BuildConfig.VERSION_CODE
|
||||||
|
* last digit will always be 0.
|
||||||
|
*/
|
||||||
|
fun Context.getVersionCodeFromManifest(): Long {
|
||||||
|
return PackageInfoCompat.getLongVersionCode(
|
||||||
|
packageManager.getPackageInfo(packageName, 0)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
// ==============================================================================================================
|
// ==============================================================================================================
|
||||||
// Clipboard helper
|
// Clipboard helper
|
||||||
// ==============================================================================================================
|
// ==============================================================================================================
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ data class BuildMeta(
|
|||||||
val applicationId: String,
|
val applicationId: String,
|
||||||
val lowPrivacyLoggingEnabled: Boolean,
|
val lowPrivacyLoggingEnabled: Boolean,
|
||||||
val versionName: String,
|
val versionName: String,
|
||||||
val versionCode: Int,
|
val versionCode: Long,
|
||||||
val gitRevision: String,
|
val gitRevision: String,
|
||||||
val gitBranchName: String,
|
val gitBranchName: String,
|
||||||
val flavorDescription: String,
|
val flavorDescription: String,
|
||||||
|
|||||||
+1
-1
@@ -28,7 +28,7 @@ fun aBuildMeta(
|
|||||||
applicationId: String = "",
|
applicationId: String = "",
|
||||||
lowPrivacyLoggingEnabled: Boolean = true,
|
lowPrivacyLoggingEnabled: Boolean = true,
|
||||||
versionName: String = "",
|
versionName: String = "",
|
||||||
versionCode: Int = 0,
|
versionCode: Long = 0,
|
||||||
gitRevision: String = "",
|
gitRevision: String = "",
|
||||||
gitBranchName: String = "",
|
gitBranchName: String = "",
|
||||||
flavorDescription: String = "",
|
flavorDescription: String = "",
|
||||||
|
|||||||
Reference in New Issue
Block a user