diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt b/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt index 2e64da5a9..08cb8e3eb 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt @@ -5,6 +5,8 @@ import android.app.Service import android.content.BroadcastReceiver import android.content.Context import android.content.Intent +import android.graphics.Bitmap +import android.graphics.BitmapFactory import android.os.IBinder import android.os.PowerManager import android.support.v4.app.NotificationCompat @@ -71,6 +73,8 @@ class LibraryUpdateService : Service() { private val notificationId: Int get() = Constants.NOTIFICATION_LIBRARY_ID + private var notificationBitmap: Bitmap? = null + companion object { /** @@ -137,6 +141,8 @@ class LibraryUpdateService : Service() { */ override fun onDestroy() { subscription?.unsubscribe() + notificationBitmap?.recycle() + notificationBitmap = null LibraryUpdateAlarm.startAlarm(this) destroyWakeLock() super.onDestroy() @@ -160,6 +166,10 @@ class LibraryUpdateService : Service() { override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int { if (intent == null) return Service.START_NOT_STICKY + if (notificationBitmap == null) { + notificationBitmap = BitmapFactory.decodeResource(resources, R.mipmap.ic_launcher) + } + // Unsubscribe from any previous subscription if needed. subscription?.unsubscribe() @@ -369,7 +379,8 @@ class LibraryUpdateService : Service() { */ private fun showNotification(title: String, body: String) { notificationManager.notify(notificationId, notification() { - setSmallIcon(R.drawable.ic_refresh_white_24dp_img) + setSmallIcon(R.drawable.notification_icon) + setLargeIcon(notificationBitmap) setContentTitle(title) setContentText(body) }) @@ -384,7 +395,8 @@ class LibraryUpdateService : Service() { */ private fun showProgressNotification(manga: Manga, current: Int, total: Int, cancelIntent: PendingIntent) { notificationManager.notify(notificationId, notification() { - setSmallIcon(R.drawable.ic_refresh_white_24dp_img) + setSmallIcon(R.drawable.notification_icon) + setLargeIcon(notificationBitmap) setContentTitle(manga.title) setProgress(total, current, false) setOngoing(true) @@ -404,7 +416,8 @@ class LibraryUpdateService : Service() { val body = getUpdatedMangasBody(updates, failed) notificationManager.notify(notificationId, notification() { - setSmallIcon(R.drawable.ic_refresh_white_24dp_img) + setSmallIcon(R.drawable.notification_icon) + setLargeIcon(notificationBitmap) setContentTitle(title) setStyle(NotificationCompat.BigTextStyle().bigText(body)) setContentIntent(notificationIntent) diff --git a/app/src/main/res/drawable-hdpi/notification_icon.png b/app/src/main/res/drawable-hdpi/notification_icon.png new file mode 100644 index 000000000..38957c4f4 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/notification_icon.png differ diff --git a/app/src/main/res/drawable-mdpi/notification_icon.png b/app/src/main/res/drawable-mdpi/notification_icon.png new file mode 100644 index 000000000..dfb2ded06 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/notification_icon.png differ diff --git a/app/src/main/res/drawable-xhdpi/notification_icon.png b/app/src/main/res/drawable-xhdpi/notification_icon.png new file mode 100644 index 000000000..25bd6e6bc Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/notification_icon.png differ diff --git a/app/src/main/res/drawable-xxhdpi/notification_icon.png b/app/src/main/res/drawable-xxhdpi/notification_icon.png new file mode 100644 index 000000000..c1a5f1b92 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/notification_icon.png differ