.class public abstract Lcom/common/urlhttp/CallBackUtil$CallBackBitmap; .super Lcom/common/urlhttp/CallBackUtil; .source "CallBackUtil.java" # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Lcom/common/urlhttp/CallBackUtil; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x409 name = "CallBackBitmap" .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Lcom/common/urlhttp/CallBackUtil<", "Landroid/graphics/Bitmap;", ">;" } .end annotation # instance fields .field private mTargetHeight:I .field private mTargetWidth:I # direct methods .method public constructor ()V .registers 1 .line 98 invoke-direct {p0}, Lcom/common/urlhttp/CallBackUtil;->()V return-void .end method .method public constructor (II)V .registers 3 .line 99 invoke-direct {p0}, Lcom/common/urlhttp/CallBackUtil;->()V .line 100 iput p1, p0, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->mTargetWidth:I .line 101 iput p2, p0, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->mTargetHeight:I return-void .end method .method public constructor (Landroid/widget/ImageView;)V .registers 3 .line 103 invoke-direct {p0}, Lcom/common/urlhttp/CallBackUtil;->()V .line 104 invoke-virtual {p1}, Landroid/widget/ImageView;->getWidth()I move-result v0 .line 105 invoke-virtual {p1}, Landroid/widget/ImageView;->getHeight()I move-result p1 if-lez v0, :cond_14 if-lez p1, :cond_14 .line 109 iput v0, p0, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->mTargetWidth:I .line 110 iput p1, p0, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->mTargetHeight:I return-void .line 107 :cond_14 new-instance p1, Ljava/lang/RuntimeException; const-string v0, "\u65e0\u6cd5\u83b7\u53d6ImageView\u7684width\u6216height" invoke-direct {p1, v0}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p1 .end method .method private getZoomBitmap(Ljava/io/InputStream;)Landroid/graphics/Bitmap; .registers 9 .line 127 :try_start_0 invoke-static {p1}, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->input2byte(Ljava/io/InputStream;)[B move-result-object p1 :try_end_4 .catch Ljava/io/IOException; {:try_start_0 .. :try_end_4} :catch_5 goto :goto_a :catch_5 move-exception p1 .line 129 invoke-virtual {p1}, Ljava/io/IOException;->printStackTrace()V const/4 p1, 0x0 .line 131 :goto_a new-instance v0, Landroid/graphics/BitmapFactory$Options; invoke-direct {v0}, Landroid/graphics/BitmapFactory$Options;->()V const/4 v1, 0x1 .line 132 iput-boolean v1, v0, Landroid/graphics/BitmapFactory$Options;->inJustDecodeBounds:Z .line 134 array-length v2, p1 const/4 v3, 0x0 invoke-static {p1, v3, v2, v0}, Landroid/graphics/BitmapFactory;->decodeByteArray([BIILandroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap; .line 135 iget v2, v0, Landroid/graphics/BitmapFactory$Options;->outWidth:I .line 136 iget v4, v0, Landroid/graphics/BitmapFactory$Options;->outHeight:I int-to-float v2, v2 .line 138 iget v5, p0, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->mTargetWidth:I int-to-float v5, v5 div-float/2addr v2, v5 float-to-double v5, v2 invoke-static {v5, v6}, Ljava/lang/Math;->floor(D)D move-result-wide v5 double-to-int v2, v5 int-to-float v4, v4 .line 139 iget v5, p0, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->mTargetHeight:I int-to-float v5, v5 div-float/2addr v4, v5 float-to-double v4, v4 invoke-static {v4, v5}, Ljava/lang/Math;->floor(D)D move-result-wide v4 double-to-int v4, v4 if-gt v2, v1, :cond_35 if-le v4, v1, :cond_39 .line 141 :cond_35 invoke-static {v2, v4}, Ljava/lang/Math;->max(II)I move-result v1 .line 143 :cond_39 iput v1, v0, Landroid/graphics/BitmapFactory$Options;->inSampleSize:I .line 144 iput-boolean v3, v0, Landroid/graphics/BitmapFactory$Options;->inJustDecodeBounds:Z .line 145 array-length v1, p1 invoke-static {p1, v3, v1, v0}, Landroid/graphics/BitmapFactory;->decodeByteArray([BIILandroid/graphics/BitmapFactory$Options;)Landroid/graphics/Bitmap; move-result-object p1 if-eqz p1, :cond_45 return-object p1 .line 148 :cond_45 new-instance p1, Ljava/lang/RuntimeException; const-string v0, "Failed to decode stream." invoke-direct {p1, v0}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p1 .end method # virtual methods .method public onParseResponse(Lcom/common/urlhttp/RealResponse;)Landroid/graphics/Bitmap; .registers 3 .line 114 iget v0, p0, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->mTargetWidth:I if-eqz v0, :cond_10 iget v0, p0, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->mTargetHeight:I if-nez v0, :cond_9 goto :goto_10 .line 117 :cond_9 iget-object p1, p1, Lcom/common/urlhttp/RealResponse;->inputStream:Ljava/io/InputStream; invoke-direct {p0, p1}, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->getZoomBitmap(Ljava/io/InputStream;)Landroid/graphics/Bitmap; move-result-object p1 return-object p1 .line 115 :cond_10 :goto_10 iget-object p1, p1, Lcom/common/urlhttp/RealResponse;->inputStream:Ljava/io/InputStream; invoke-static {p1}, Landroid/graphics/BitmapFactory;->decodeStream(Ljava/io/InputStream;)Landroid/graphics/Bitmap; move-result-object p1 return-object p1 .end method .method public bridge synthetic onParseResponse(Lcom/common/urlhttp/RealResponse;)Ljava/lang/Object; .registers 2 .line 94 invoke-virtual {p0, p1}, Lcom/common/urlhttp/CallBackUtil$CallBackBitmap;->onParseResponse(Lcom/common/urlhttp/RealResponse;)Landroid/graphics/Bitmap; move-result-object p1 return-object p1 .end method