diff --git a/app/src/main/java/org/fdroid/fdroid/net/DownloaderService.java b/app/src/main/java/org/fdroid/fdroid/net/DownloaderService.java
index 152f881e4..f72ec99c5 100644
--- a/app/src/main/java/org/fdroid/fdroid/net/DownloaderService.java
+++ b/app/src/main/java/org/fdroid/fdroid/net/DownloaderService.java
@@ -45,6 +45,8 @@ import org.fdroid.fdroid.FDroid;
import org.fdroid.fdroid.Preferences;
import org.fdroid.fdroid.R;
import org.fdroid.fdroid.Utils;
+import org.fdroid.fdroid.data.App;
+import org.fdroid.fdroid.data.AppProvider;
import org.fdroid.fdroid.data.SanitizedFile;
import java.io.File;
@@ -168,12 +170,29 @@ public class DownloaderService extends Service {
return new NotificationCompat.Builder(this)
.setAutoCancel(true)
.setContentIntent(createAppDetailsIntent(this, 0, packageName))
- .setContentTitle(getString(R.string.downloading))
+ .setContentTitle(getNotificationTitle(packageName))
.setSmallIcon(android.R.drawable.stat_sys_download)
.setContentText(urlString)
.setProgress(100, 0, true);
}
+ /**
+ * If downloading an apk (i.e. packageName != null
) then the title will indicate
+ * the name of the app which the apk belongs to. Otherwise, it will be a generic "Downloading..."
+ * message.
+ */
+ private String getNotificationTitle(@Nullable String packageName) {
+ String title;
+ if (packageName != null) {
+ App app = AppProvider.Helper.findByPackageName(
+ getContentResolver(), packageName, new String[] { AppProvider.DataColumns.NAME });
+ title = getString(R.string.downloading_apk, app.name);
+ } else {
+ title = getString(R.string.downloading);
+ }
+ return title;
+ }
+
public static PendingIntent createAppDetailsIntent(@NonNull Context context, int requestCode, @Nullable String packageName) {
TaskStackBuilder stackBuilder;
if (packageName != null) {
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 29a42b952..20d0988a3 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -372,6 +372,7 @@
New:
Provided by %1$s.
Downloading…
+ Downloading %1$s
Never
Hourly