.class public Lcn/jzvd/JZMediaSystem; .super Lcn/jzvd/JZMediaInterface; .source "JZMediaSystem.java" # interfaces .implements Landroid/media/MediaPlayer$OnPreparedListener; .implements Landroid/media/MediaPlayer$OnCompletionListener; .implements Landroid/media/MediaPlayer$OnBufferingUpdateListener; .implements Landroid/media/MediaPlayer$OnSeekCompleteListener; .implements Landroid/media/MediaPlayer$OnErrorListener; .implements Landroid/media/MediaPlayer$OnInfoListener; .implements Landroid/media/MediaPlayer$OnVideoSizeChangedListener; # instance fields .field public mediaPlayer:Landroid/media/MediaPlayer; # direct methods .method public constructor ()V .registers 1 .line 14 invoke-direct {p0}, Lcn/jzvd/JZMediaInterface;->()V return-void .end method # virtual methods .method public getCurrentPosition()J .registers 3 .line 79 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; if-eqz v0, :cond_a .line 80 invoke-virtual {v0}, Landroid/media/MediaPlayer;->getCurrentPosition()I move-result v0 int-to-long v0, v0 return-wide v0 :cond_a const-wide/16 v0, 0x0 return-wide v0 .end method .method public getDuration()J .registers 3 .line 88 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; if-eqz v0, :cond_a .line 89 invoke-virtual {v0}, Landroid/media/MediaPlayer;->getDuration()I move-result v0 int-to-long v0, v0 return-wide v0 :cond_a const-wide/16 v0, 0x0 return-wide v0 .end method .method public isPlaying()Z .registers 2 .line 59 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0}, Landroid/media/MediaPlayer;->isPlaying()Z move-result v0 return v0 .end method .method public onBufferingUpdate(Landroid/media/MediaPlayer;I)V .registers 4 .line 134 invoke-static {}, Lcn/jzvd/JZMediaManager;->instance()Lcn/jzvd/JZMediaManager; move-result-object p1 iget-object p1, p1, Lcn/jzvd/JZMediaManager;->mainThreadHandler:Landroid/os/Handler; new-instance v0, Lcn/jzvd/JZMediaSystem$3; invoke-direct {v0, p0, p2}, Lcn/jzvd/JZMediaSystem$3;->(Lcn/jzvd/JZMediaSystem;I)V invoke-virtual {p1, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z return-void .end method .method public onCompletion(Landroid/media/MediaPlayer;)V .registers 3 .line 122 invoke-static {}, Lcn/jzvd/JZMediaManager;->instance()Lcn/jzvd/JZMediaManager; move-result-object p1 iget-object p1, p1, Lcn/jzvd/JZMediaManager;->mainThreadHandler:Landroid/os/Handler; new-instance v0, Lcn/jzvd/JZMediaSystem$2; invoke-direct {v0, p0}, Lcn/jzvd/JZMediaSystem$2;->(Lcn/jzvd/JZMediaSystem;)V invoke-virtual {p1, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z return-void .end method .method public onError(Landroid/media/MediaPlayer;II)Z .registers 5 .line 158 invoke-static {}, Lcn/jzvd/JZMediaManager;->instance()Lcn/jzvd/JZMediaManager; move-result-object p1 iget-object p1, p1, Lcn/jzvd/JZMediaManager;->mainThreadHandler:Landroid/os/Handler; new-instance v0, Lcn/jzvd/JZMediaSystem$5; invoke-direct {v0, p0, p2, p3}, Lcn/jzvd/JZMediaSystem$5;->(Lcn/jzvd/JZMediaSystem;II)V invoke-virtual {p1, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z const/4 p1, 0x1 return p1 .end method .method public onInfo(Landroid/media/MediaPlayer;II)Z .registers 5 .line 171 invoke-static {}, Lcn/jzvd/JZMediaManager;->instance()Lcn/jzvd/JZMediaManager; move-result-object p1 iget-object p1, p1, Lcn/jzvd/JZMediaManager;->mainThreadHandler:Landroid/os/Handler; new-instance v0, Lcn/jzvd/JZMediaSystem$6; invoke-direct {v0, p0, p2, p3}, Lcn/jzvd/JZMediaSystem$6;->(Lcn/jzvd/JZMediaSystem;II)V invoke-virtual {p1, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z const/4 p1, 0x0 return p1 .end method .method public onPrepared(Landroid/media/MediaPlayer;)V .registers 3 .line 107 invoke-virtual {p1}, Landroid/media/MediaPlayer;->start()V .line 108 iget-object p1, p0, Lcn/jzvd/JZMediaSystem;->currentDataSource:Ljava/lang/Object; invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object p1 invoke-virtual {p1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String; move-result-object p1 const-string v0, "mp3" invoke-virtual {p1, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z move-result p1 if-eqz p1, :cond_23 .line 109 invoke-static {}, Lcn/jzvd/JZMediaManager;->instance()Lcn/jzvd/JZMediaManager; move-result-object p1 iget-object p1, p1, Lcn/jzvd/JZMediaManager;->mainThreadHandler:Landroid/os/Handler; new-instance v0, Lcn/jzvd/JZMediaSystem$1; invoke-direct {v0, p0}, Lcn/jzvd/JZMediaSystem$1;->(Lcn/jzvd/JZMediaSystem;)V invoke-virtual {p1, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z :cond_23 return-void .end method .method public onSeekComplete(Landroid/media/MediaPlayer;)V .registers 3 .line 146 invoke-static {}, Lcn/jzvd/JZMediaManager;->instance()Lcn/jzvd/JZMediaManager; move-result-object p1 iget-object p1, p1, Lcn/jzvd/JZMediaManager;->mainThreadHandler:Landroid/os/Handler; new-instance v0, Lcn/jzvd/JZMediaSystem$4; invoke-direct {v0, p0}, Lcn/jzvd/JZMediaSystem$4;->(Lcn/jzvd/JZMediaSystem;)V invoke-virtual {p1, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z return-void .end method .method public onVideoSizeChanged(Landroid/media/MediaPlayer;II)V .registers 4 .line 191 invoke-static {}, Lcn/jzvd/JZMediaManager;->instance()Lcn/jzvd/JZMediaManager; move-result-object p1 iput p2, p1, Lcn/jzvd/JZMediaManager;->currentVideoWidth:I .line 192 invoke-static {}, Lcn/jzvd/JZMediaManager;->instance()Lcn/jzvd/JZMediaManager; move-result-object p1 iput p3, p1, Lcn/jzvd/JZMediaManager;->currentVideoHeight:I .line 193 invoke-static {}, Lcn/jzvd/JZMediaManager;->instance()Lcn/jzvd/JZMediaManager; move-result-object p1 iget-object p1, p1, Lcn/jzvd/JZMediaManager;->mainThreadHandler:Landroid/os/Handler; new-instance p2, Lcn/jzvd/JZMediaSystem$7; invoke-direct {p2, p0}, Lcn/jzvd/JZMediaSystem$7;->(Lcn/jzvd/JZMediaSystem;)V invoke-virtual {p1, p2}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z return-void .end method .method public pause()V .registers 2 .line 54 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0}, Landroid/media/MediaPlayer;->pause()V return-void .end method .method public prepare()V .registers 8 .line 26 :try_start_0 new-instance v0, Landroid/media/MediaPlayer; invoke-direct {v0}, Landroid/media/MediaPlayer;->()V iput-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; const/4 v1, 0x3 .line 27 invoke-virtual {v0, v1}, Landroid/media/MediaPlayer;->setAudioStreamType(I)V .line 28 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->dataSourceObjects:[Ljava/lang/Object; array-length v0, v0 const/4 v1, 0x1 if-le v0, v1, :cond_20 .line 29 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; iget-object v2, p0, Lcn/jzvd/JZMediaSystem;->dataSourceObjects:[Ljava/lang/Object; aget-object v2, v2, v1 check-cast v2, Ljava/lang/Boolean; invoke-virtual {v2}, Ljava/lang/Boolean;->booleanValue()Z move-result v2 invoke-virtual {v0, v2}, Landroid/media/MediaPlayer;->setLooping(Z)V .line 31 :cond_20 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0, p0}, Landroid/media/MediaPlayer;->setOnPreparedListener(Landroid/media/MediaPlayer$OnPreparedListener;)V .line 32 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0, p0}, Landroid/media/MediaPlayer;->setOnCompletionListener(Landroid/media/MediaPlayer$OnCompletionListener;)V .line 33 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0, p0}, Landroid/media/MediaPlayer;->setOnBufferingUpdateListener(Landroid/media/MediaPlayer$OnBufferingUpdateListener;)V .line 34 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0, v1}, Landroid/media/MediaPlayer;->setScreenOnWhilePlaying(Z)V .line 35 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0, p0}, Landroid/media/MediaPlayer;->setOnSeekCompleteListener(Landroid/media/MediaPlayer$OnSeekCompleteListener;)V .line 36 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0, p0}, Landroid/media/MediaPlayer;->setOnErrorListener(Landroid/media/MediaPlayer$OnErrorListener;)V .line 37 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0, p0}, Landroid/media/MediaPlayer;->setOnInfoListener(Landroid/media/MediaPlayer$OnInfoListener;)V .line 38 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0, p0}, Landroid/media/MediaPlayer;->setOnVideoSizeChangedListener(Landroid/media/MediaPlayer$OnVideoSizeChangedListener;)V .line 39 const-class v0, Landroid/media/MediaPlayer; .line 40 const-string v2, "setDataSource" const/4 v3, 0x2 new-array v4, v3, [Ljava/lang/Class; const-class v5, Ljava/lang/String; const/4 v6, 0x0 aput-object v5, v4, v6 const-class v5, Ljava/util/Map; aput-object v5, v4, v1 invoke-virtual {v0, v2, v4}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; move-result-object v0 .line 41 iget-object v1, p0, Lcn/jzvd/JZMediaSystem;->dataSourceObjects:[Ljava/lang/Object; array-length v1, v1 if-le v1, v3, :cond_75 .line 42 iget-object v1, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; iget-object v2, p0, Lcn/jzvd/JZMediaSystem;->currentDataSource:Ljava/lang/Object; invoke-virtual {v2}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v2 iget-object v4, p0, Lcn/jzvd/JZMediaSystem;->dataSourceObjects:[Ljava/lang/Object; aget-object v3, v4, v3 filled-new-array {v2, v3}, [Ljava/lang/Object; move-result-object v2 invoke-virtual {v0, v1, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; goto :goto_85 .line 44 :cond_75 iget-object v1, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; iget-object v2, p0, Lcn/jzvd/JZMediaSystem;->currentDataSource:Ljava/lang/Object; invoke-virtual {v2}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v2 const/4 v3, 0x0 filled-new-array {v2, v3}, [Ljava/lang/Object; move-result-object v2 invoke-virtual {v0, v1, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; .line 46 :goto_85 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0}, Landroid/media/MediaPlayer;->prepareAsync()V :try_end_8a .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_8a} :catch_8b goto :goto_8f :catch_8b move-exception v0 .line 48 invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V :goto_8f return-void .end method .method public release()V .registers 2 .line 73 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; if-eqz v0, :cond_7 .line 74 invoke-virtual {v0}, Landroid/media/MediaPlayer;->release()V :cond_7 return-void .end method .method public seekTo(J)V .registers 4 .line 65 :try_start_0 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; long-to-int p1, p1 invoke-virtual {v0, p1}, Landroid/media/MediaPlayer;->seekTo(I)V :try_end_6 .catch Ljava/lang/IllegalStateException; {:try_start_0 .. :try_end_6} :catch_7 goto :goto_b :catch_7 move-exception p1 .line 67 invoke-virtual {p1}, Ljava/lang/IllegalStateException;->printStackTrace()V :goto_b return-void .end method .method public setSurface(Landroid/view/Surface;)V .registers 3 .line 97 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0, p1}, Landroid/media/MediaPlayer;->setSurface(Landroid/view/Surface;)V return-void .end method .method public setVolume(FF)V .registers 4 .line 102 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0, p1, p2}, Landroid/media/MediaPlayer;->setVolume(FF)V return-void .end method .method public start()V .registers 2 .line 20 iget-object v0, p0, Lcn/jzvd/JZMediaSystem;->mediaPlayer:Landroid/media/MediaPlayer; invoke-virtual {v0}, Landroid/media/MediaPlayer;->start()V return-void .end method