DownloadService$ForegroundNotificationUpdater.smali
.class final Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;
.super Ljava/lang/Object;
.source "DownloadService.java"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/exoplayer2/offline/DownloadService;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x12
name = "ForegroundNotificationUpdater"
.end annotation
# instance fields
.field private final handler:Landroid/os/Handler;
.field private notificationDisplayed:Z
.field private final notificationId:I
.field private periodicUpdatesStarted:Z
.field final synthetic this$0:Lcom/google/android/exoplayer2/offline/DownloadService;
.field private final updateInterval:J
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(Lcom/google/android/exoplayer2/offline/DownloadService;IJ)V
.registers 6
.param p2, "notificationId" # I
.param p3, "updateInterval" # J
.line 395
iput-object p1, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->this$0:Lcom/google/android/exoplayer2/offline/DownloadService;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 396
iput p2, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->notificationId:I
.line 397
iput-wide p3, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->updateInterval:J
.line 398
new-instance p1, Landroid/os/Handler;
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v0
invoke-direct {p1, v0}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
iput-object p1, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->handler:Landroid/os/Handler;
.line 399
return-void
.end method
# virtual methods
.method public run()V
.registers 1
.line 429
invoke-virtual {p0}, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->update()V
.line 430
return-void
.end method
.method public showNotificationIfNotAlready()V
.registers 2
.line 422
iget-boolean v0, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->notificationDisplayed:Z
if-nez v0, :cond_7
.line 423
invoke-virtual {p0}, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->update()V
.line 425
:cond_7
return-void
.end method
.method public startPeriodicUpdates()V
.registers 2
.line 402
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->periodicUpdatesStarted:Z
.line 403
invoke-virtual {p0}, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->update()V
.line 404
return-void
.end method
.method public stopPeriodicUpdates()V
.registers 2
.line 407
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->periodicUpdatesStarted:Z
.line 408
iget-object v0, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->handler:Landroid/os/Handler;
invoke-virtual {v0, p0}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V
.line 409
return-void
.end method
.method public update()V
.registers 5
.line 412
iget-object v0, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->this$0:Lcom/google/android/exoplayer2/offline/DownloadService;
invoke-static {v0}, Lcom/google/android/exoplayer2/offline/DownloadService;->access$200(Lcom/google/android/exoplayer2/offline/DownloadService;)Lcom/google/android/exoplayer2/offline/DownloadManager;
move-result-object v0
invoke-virtual {v0}, Lcom/google/android/exoplayer2/offline/DownloadManager;->getAllDownloadStates()[Lcom/google/android/exoplayer2/offline/DownloadState;
move-result-object v0
.line 413
.local v0, "downloadStates":[Lcom/google/android/exoplayer2/offline/DownloadState;
iget-object v1, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->this$0:Lcom/google/android/exoplayer2/offline/DownloadService;
iget v2, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->notificationId:I
invoke-virtual {v1, v0}, Lcom/google/android/exoplayer2/offline/DownloadService;->getForegroundNotification([Lcom/google/android/exoplayer2/offline/DownloadState;)Landroid/app/Notification;
move-result-object v3
invoke-virtual {v1, v2, v3}, Lcom/google/android/exoplayer2/offline/DownloadService;->startForeground(ILandroid/app/Notification;)V
.line 414
const/4 v1, 0x1
iput-boolean v1, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->notificationDisplayed:Z
.line 415
iget-boolean v1, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->periodicUpdatesStarted:Z
if-eqz v1, :cond_28
.line 416
iget-object v1, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->handler:Landroid/os/Handler;
invoke-virtual {v1, p0}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V
.line 417
iget-object v1, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->handler:Landroid/os/Handler;
iget-wide v2, p0, Lcom/google/android/exoplayer2/offline/DownloadService$ForegroundNotificationUpdater;->updateInterval:J
invoke-virtual {v1, p0, v2, v3}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
.line 419
:cond_28
return-void
.end method