From cc0302cbe9eecaf79e5553f1e6a9098143970faa Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Thu, 14 Dec 2023 14:59:00 +0530 Subject: [PATCH] NotificationUtil: Load app's icon into big icon Signed-off-by: Aayush Gupta --- .../java/com/aurora/store/util/NotificationUtil.kt | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/app/src/main/java/com/aurora/store/util/NotificationUtil.kt b/app/src/main/java/com/aurora/store/util/NotificationUtil.kt index 54f98929b..c31f3fba2 100644 --- a/app/src/main/java/com/aurora/store/util/NotificationUtil.kt +++ b/app/src/main/java/com/aurora/store/util/NotificationUtil.kt @@ -7,8 +7,10 @@ import android.app.NotificationManager import android.app.PendingIntent import android.content.Context import android.content.Intent +import android.graphics.BitmapFactory import android.graphics.Color import android.os.Build +import android.util.Log import androidx.core.app.NotificationCompat import androidx.core.content.ContextCompat import androidx.core.os.bundleOf @@ -29,10 +31,13 @@ import com.aurora.store.data.receiver.DownloadResumeReceiver import com.tonyodev.fetch2.Download import com.tonyodev.fetch2.FetchGroup import com.tonyodev.fetch2.Status +import java.net.URL import java.util.UUID object NotificationUtil { + private const val TAG = "NotificationUtil" + fun createNotificationChannel(context: Context) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { val notificationManager = @@ -209,6 +214,14 @@ object NotificationUtil { builder.color = ContextCompat.getColor(context, R.color.colorAccent) builder.setContentIntent(getContentIntentForDownloads(context)) + // Set big icon for download + try { + val bitmap = BitmapFactory.decodeStream(URL(download.iconURL).openStream()) + builder.setLargeIcon(bitmap) + } catch (exception: Exception) { + Log.i(TAG, "Failed to set big icon", exception) + } + when (download.status) { DownloadStatus.CANCELLED -> { builder.setSmallIcon(R.drawable.ic_download_cancel)