Fix Crash for low end devices.

Used Coil instead of Glide to load Image.
This commit is contained in:
Yogesh Choudhary Paliyal 2021-12-02 22:29:33 +05:30
parent 87b79e5bca
commit 0c24210719
3 changed files with 32 additions and 29 deletions

View file

@ -48,6 +48,7 @@ dependencies {
implementation "androidx.compose.foundation:foundation-layout:$compose_version" implementation "androidx.compose.foundation:foundation-layout:$compose_version"
implementation "androidx.activity:activity-compose:$compose_activity_version" implementation "androidx.activity:activity-compose:$compose_activity_version"
implementation "com.github.skydoves:landscapist-glide:$landscapist_version"
implementation "com.mxalbert.zoomable:zoomable:$zoomable_version" implementation "com.mxalbert.zoomable:zoomable:$zoomable_version"
implementation("io.coil-kt:coil-compose:1.4.0")
} }

View file

@ -19,53 +19,55 @@ package io.getstream.androiddeveloperroadmap
import android.os.Bundle import android.os.Bundle
import androidx.activity.ComponentActivity import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent import androidx.activity.compose.setContent
import androidx.compose.foundation.Image
import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.height
import androidx.compose.material.MaterialTheme import androidx.compose.material.MaterialTheme
import androidx.compose.material.Surface import androidx.compose.material.Surface
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import coil.compose.rememberImagePainter
import com.mxalbert.zoomable.Zoomable import com.mxalbert.zoomable.Zoomable
import com.skydoves.landscapist.glide.GlideImage
import io.getstream.androiddeveloperroadmap.ui.theme.AndroidDeveloperRoadmapTheme import io.getstream.androiddeveloperroadmap.ui.theme.AndroidDeveloperRoadmapTheme
class MainActivity : ComponentActivity() { class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
setContent { setContent {
AndroidDeveloperRoadmapTheme { AndroidDeveloperRoadmapTheme {
Surface( Surface(
color = MaterialTheme.colors.background color = MaterialTheme.colors.background
) { ) {
Roadmap() Roadmap()
}
}
} }
}
} }
}
} }
@Composable @Composable
private fun Roadmap() { private fun Roadmap() {
Zoomable( Zoomable(
modifier = Modifier.height(3200.dp) modifier = Modifier.fillMaxSize(),
) { ) {
GlideImage( Image(
imageModel = "https://user-images.githubusercontent.com/24237865/144350753-5a52e6e5-3517-476c-8e5c-adad919abe8e.png", painter = rememberImagePainter("https://user-images.githubusercontent.com/24237865/144350753-5a52e6e5-3517-476c-8e5c-adad919abe8e.png",
modifier = Modifier.fillMaxSize(), builder = {
previewPlaceholder = R.drawable.roadmap_preview, placeholder(R.drawable.roadmap_preview)
contentScale = ContentScale.Fit }),
) modifier = Modifier.fillMaxSize(),
} contentScale = ContentScale.Fit,
contentDescription = null
)
}
} }
@Preview(showBackground = true) @Preview(showBackground = true)
@Composable @Composable
private fun DefaultPreview() { private fun DefaultPreview() {
AndroidDeveloperRoadmapTheme { AndroidDeveloperRoadmapTheme {
Roadmap() Roadmap()
} }
} }

View file

@ -5,8 +5,8 @@ pluginManagement {
mavenCentral() mavenCentral()
} }
plugins { plugins {
id 'com.android.application' version '7.1.0-alpha13' id 'com.android.application' version '7.1.0-beta03'
id 'com.android.library' version '7.1.0-alpha13' id 'com.android.library' version '7.1.0-beta03'
id 'org.jetbrains.kotlin.android' version '1.5.31' id 'org.jetbrains.kotlin.android' version '1.5.31'
} }
} }