Mikael Alfredsson
10/16/2020, 1:05 PM@Composable
fun versionText(){
val versionName = packageManager.getPackageInfo(packageName, 0).versionName
Text(text = versionName)
}
either this is the completely wrong way to do something like this, or I need some way to know if this composable is currently running in a preview, since the preview engine will not really show anything here (I think it even crashes silently somewhere)steelahhh
10/16/2020, 1:24 PMMikael Alfredsson
10/16/2020, 1:26 PMisInEditMode()
to create a ‘preview’ version of the output. Would be nice to have something similar for code executed under @previewsteelahhh
10/16/2020, 1:53 PM@Preview
@Composable
fun VersionTextPreview() {
VersionTextImpl("1.2.3")
}
@Composable
fun VersionText() {
val context = ContextAmbient.current.applicationContext
val packageName = context.packageName
val versionName = context.packageManager.getPackageInfo(packageName, 0).versionName
VersionTextImpl(versionName = versionName)
}
@Composable
private fun VersionTextImpl(
versionName: String
) {
Text(versionName)
}
That way you both get your preview working, and your public API stays the sameMikael Alfredsson
10/16/2020, 1:56 PM