From 0c24210719e9979bd2cf9e1813879c0ff6f9387c Mon Sep 17 00:00:00 2001 From: Yogesh Choudhary Paliyal Date: Thu, 2 Dec 2021 22:29:33 +0530 Subject: [PATCH] Fix Crash for low end devices. Used Coil instead of Glide to load Image. --- app/build.gradle | 3 +- .../androiddeveloperroadmap/MainActivity.kt | 54 ++++++++++--------- settings.gradle | 4 +- 3 files changed, 32 insertions(+), 29 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 35b898b..2806edb 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -48,6 +48,7 @@ dependencies { implementation "androidx.compose.foundation:foundation-layout:$compose_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("io.coil-kt:coil-compose:1.4.0") } diff --git a/app/src/main/kotlin/io/getstream/androiddeveloperroadmap/MainActivity.kt b/app/src/main/kotlin/io/getstream/androiddeveloperroadmap/MainActivity.kt index 10d852e..a3378b2 100644 --- a/app/src/main/kotlin/io/getstream/androiddeveloperroadmap/MainActivity.kt +++ b/app/src/main/kotlin/io/getstream/androiddeveloperroadmap/MainActivity.kt @@ -19,53 +19,55 @@ package io.getstream.androiddeveloperroadmap import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent +import androidx.compose.foundation.Image import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.layout.height import androidx.compose.material.MaterialTheme import androidx.compose.material.Surface import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.tooling.preview.Preview -import androidx.compose.ui.unit.dp +import coil.compose.rememberImagePainter import com.mxalbert.zoomable.Zoomable -import com.skydoves.landscapist.glide.GlideImage import io.getstream.androiddeveloperroadmap.ui.theme.AndroidDeveloperRoadmapTheme class MainActivity : ComponentActivity() { - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) - setContent { - AndroidDeveloperRoadmapTheme { - Surface( - color = MaterialTheme.colors.background - ) { - Roadmap() + setContent { + AndroidDeveloperRoadmapTheme { + Surface( + color = MaterialTheme.colors.background + ) { + Roadmap() + } + } } - } } - } } @Composable private fun Roadmap() { - Zoomable( - modifier = Modifier.height(3200.dp) - ) { - GlideImage( - imageModel = "https://user-images.githubusercontent.com/24237865/144350753-5a52e6e5-3517-476c-8e5c-adad919abe8e.png", - modifier = Modifier.fillMaxSize(), - previewPlaceholder = R.drawable.roadmap_preview, - contentScale = ContentScale.Fit - ) - } + Zoomable( + modifier = Modifier.fillMaxSize(), + ) { + Image( + painter = rememberImagePainter("https://user-images.githubusercontent.com/24237865/144350753-5a52e6e5-3517-476c-8e5c-adad919abe8e.png", + builder = { + placeholder(R.drawable.roadmap_preview) + }), + modifier = Modifier.fillMaxSize(), + contentScale = ContentScale.Fit, + contentDescription = null + ) + } } @Preview(showBackground = true) @Composable private fun DefaultPreview() { - AndroidDeveloperRoadmapTheme { - Roadmap() - } + AndroidDeveloperRoadmapTheme { + Roadmap() + } } diff --git a/settings.gradle b/settings.gradle index f20e4a4..7b04270 100644 --- a/settings.gradle +++ b/settings.gradle @@ -5,8 +5,8 @@ pluginManagement { mavenCentral() } plugins { - id 'com.android.application' version '7.1.0-alpha13' - id 'com.android.library' version '7.1.0-alpha13' + id 'com.android.application' version '7.1.0-beta03' + id 'com.android.library' version '7.1.0-beta03' id 'org.jetbrains.kotlin.android' version '1.5.31' } }