Add message parameter to DownloadNotificationUtil.createNotification
DownloadNotificationUtil should not use getData(). ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=185002149
This commit is contained in:
parent
f432b52111
commit
0e51a77839
@ -20,7 +20,6 @@ import android.app.Notification.BigTextStyle;
|
|||||||
import android.app.Notification.Builder;
|
import android.app.Notification.Builder;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.support.annotation.Nullable;
|
import android.support.annotation.Nullable;
|
||||||
import com.google.android.exoplayer2.offline.DownloadAction;
|
|
||||||
import com.google.android.exoplayer2.offline.DownloadManager;
|
import com.google.android.exoplayer2.offline.DownloadManager;
|
||||||
import com.google.android.exoplayer2.offline.DownloadManager.DownloadState;
|
import com.google.android.exoplayer2.offline.DownloadManager.DownloadState;
|
||||||
import com.google.android.exoplayer2.util.ErrorMessageProvider;
|
import com.google.android.exoplayer2.util.ErrorMessageProvider;
|
||||||
@ -40,8 +39,10 @@ public final class DownloadNotificationUtil {
|
|||||||
* @param smallIcon A small icon for the notifications.
|
* @param smallIcon A small icon for the notifications.
|
||||||
* @param channelId The id of the notification channel to use. Only required for API level 26 and
|
* @param channelId The id of the notification channel to use. Only required for API level 26 and
|
||||||
* above.
|
* above.
|
||||||
|
* @param message An optional message to display on the notification.
|
||||||
* @param errorMessageProvider An optional {@link ErrorMessageProvider} for translating download
|
* @param errorMessageProvider An optional {@link ErrorMessageProvider} for translating download
|
||||||
* errors into readable error messages.
|
* errors into readable error messages. If not null and there is a download error then the
|
||||||
|
* error message is displayed instead of {@code message}.
|
||||||
* @return A notification for the given {@link DownloadState}, or null if no notification should
|
* @return A notification for the given {@link DownloadState}, or null if no notification should
|
||||||
* be displayed.
|
* be displayed.
|
||||||
*/
|
*/
|
||||||
@ -50,9 +51,10 @@ public final class DownloadNotificationUtil {
|
|||||||
Context context,
|
Context context,
|
||||||
int smallIcon,
|
int smallIcon,
|
||||||
String channelId,
|
String channelId,
|
||||||
|
@Nullable String message,
|
||||||
@Nullable ErrorMessageProvider<Throwable> errorMessageProvider) {
|
@Nullable ErrorMessageProvider<Throwable> errorMessageProvider) {
|
||||||
DownloadAction downloadAction = downloadState.downloadAction;
|
if (downloadState.downloadAction.isRemoveAction()
|
||||||
if (downloadAction.isRemoveAction() || downloadState.state == DownloadState.STATE_CANCELED) {
|
|| downloadState.state == DownloadState.STATE_CANCELED) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -72,18 +74,16 @@ public final class DownloadNotificationUtil {
|
|||||||
notificationBuilder.setProgress(100, indeterminate ? 0 : (int) percentage, indeterminate);
|
notificationBuilder.setProgress(100, indeterminate ? 0 : (int) percentage, indeterminate);
|
||||||
}
|
}
|
||||||
|
|
||||||
String message;
|
|
||||||
if (downloadState.error != null && errorMessageProvider != null) {
|
if (downloadState.error != null && errorMessageProvider != null) {
|
||||||
message = errorMessageProvider.getErrorMessage(downloadState.error).second;
|
message = errorMessageProvider.getErrorMessage(downloadState.error).second;
|
||||||
} else {
|
|
||||||
message = downloadAction.getData();
|
|
||||||
}
|
}
|
||||||
|
if (message != null) {
|
||||||
if (Util.SDK_INT >= 16) {
|
if (Util.SDK_INT >= 16) {
|
||||||
notificationBuilder.setStyle(new BigTextStyle().bigText(message));
|
notificationBuilder.setStyle(new BigTextStyle().bigText(message));
|
||||||
} else {
|
} else {
|
||||||
notificationBuilder.setContentText(message);
|
notificationBuilder.setContentText(message);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return notificationBuilder.getNotification();
|
return notificationBuilder.getNotification();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user