AdAlertReporter.smali
.class public Lcom/mopub/mobileads/AdAlertReporter;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field private static final BODY_SEPARATOR:Ljava/lang/String; = "\n=================\n"
.field private static final DATE_FORMAT_PATTERN:Ljava/lang/String; = "M/d/yy hh:mm:ss a z"
.field private static final EMAIL_RECIPIENT:Ljava/lang/String; = "creative-review@mopub.com"
.field private static final IMAGE_QUALITY:I = 0x19
# instance fields
.field private final mContext:Landroid/content/Context;
.field private final mDateString:Ljava/lang/String;
.field private mEmailIntent:Landroid/content/Intent;
.field private mParameters:Ljava/lang/String;
.field private mResponse:Ljava/lang/String;
.field private final mView:Landroid/view/View;
# direct methods
.method public constructor <init>(Landroid/content/Context;Landroid/view/View;Lcom/mopub/common/AdReport;)V
.registers 5
.line 39
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 40
iput-object p2, p0, Lcom/mopub/mobileads/AdAlertReporter;->mView:Landroid/view/View;
.line 41
iput-object p1, p0, Lcom/mopub/mobileads/AdAlertReporter;->mContext:Landroid/content/Context;
.line 43
new-instance p1, Ljava/text/SimpleDateFormat;
sget-object p2, Ljava/util/Locale;->US:Ljava/util/Locale;
const-string v0, "M/d/yy hh:mm:ss a z"
invoke-direct {p1, v0, p2}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;Ljava/util/Locale;)V
.line 44
invoke-static {}, Lcom/mopub/common/util/DateAndTime;->now()Ljava/util/Date;
move-result-object p2
invoke-virtual {p1, p2}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/mopub/mobileads/AdAlertReporter;->mDateString:Ljava/lang/String;
.line 46
invoke-direct {p0}, Lcom/mopub/mobileads/AdAlertReporter;->initEmailIntent()V
.line 47
invoke-direct {p0}, Lcom/mopub/mobileads/AdAlertReporter;->takeScreenShot()Landroid/graphics/Bitmap;
move-result-object p1
.line 48
invoke-direct {p0, p1}, Lcom/mopub/mobileads/AdAlertReporter;->convertBitmapInWEBPToBase64EncodedString(Landroid/graphics/Bitmap;)Ljava/lang/String;
move-result-object p1
const-string p2, ""
.line 49
iput-object p2, p0, Lcom/mopub/mobileads/AdAlertReporter;->mParameters:Ljava/lang/String;
.line 50
iput-object p2, p0, Lcom/mopub/mobileads/AdAlertReporter;->mResponse:Ljava/lang/String;
if-eqz p3, :cond_39
.line 52
invoke-virtual {p3}, Lcom/mopub/common/AdReport;->toString()Ljava/lang/String;
move-result-object p2
iput-object p2, p0, Lcom/mopub/mobileads/AdAlertReporter;->mParameters:Ljava/lang/String;
.line 53
invoke-virtual {p3}, Lcom/mopub/common/AdReport;->getResponseString()Ljava/lang/String;
move-result-object p2
iput-object p2, p0, Lcom/mopub/mobileads/AdAlertReporter;->mResponse:Ljava/lang/String;
.line 56
:cond_39
invoke-direct {p0}, Lcom/mopub/mobileads/AdAlertReporter;->addEmailSubject()V
const/4 p2, 0x3
new-array p2, p2, [Ljava/lang/String;
const/4 p3, 0x0
.line 57
iget-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mParameters:Ljava/lang/String;
aput-object v0, p2, p3
const/4 p3, 0x1
iget-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mResponse:Ljava/lang/String;
aput-object v0, p2, p3
const/4 p3, 0x2
aput-object p1, p2, p3
invoke-direct {p0, p2}, Lcom/mopub/mobileads/AdAlertReporter;->addEmailBody([Ljava/lang/String;)V
return-void
.end method
.method private varargs addEmailBody([Ljava/lang/String;)V
.registers 5
.line 117
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const/4 v1, 0x0
.line 119
:goto_6
array-length v2, p1
if-ge v1, v2, :cond_1b
.line 120
aget-object v2, p1, v1
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 121
array-length v2, p1
add-int/lit8 v2, v2, -0x1
if-eq v1, v2, :cond_18
const-string v2, "\n=================\n"
.line 122
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:cond_18
add-int/lit8 v1, v1, 0x1
goto :goto_6
.line 126
:cond_1b
iget-object p1, p0, Lcom/mopub/mobileads/AdAlertReporter;->mEmailIntent:Landroid/content/Intent;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "android.intent.extra.TEXT"
invoke-virtual {p1, v1, v0}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
return-void
.end method
.method private addEmailSubject()V
.registers 4
.line 112
iget-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mEmailIntent:Landroid/content/Intent;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "New creative violation report - "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v2, p0, Lcom/mopub/mobileads/AdAlertReporter;->mDateString:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const-string v2, "android.intent.extra.SUBJECT"
invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
return-void
.end method
.method private convertBitmapInWEBPToBase64EncodedString(Landroid/graphics/Bitmap;)Ljava/lang/String;
.registers 5
if-eqz p1, :cond_18
.line 100
:try_start_2
new-instance v0, Ljava/io/ByteArrayOutputStream;
invoke-direct {v0}, Ljava/io/ByteArrayOutputStream;-><init>()V
.line 101
sget-object v1, Landroid/graphics/Bitmap$CompressFormat;->JPEG:Landroid/graphics/Bitmap$CompressFormat;
const/16 v2, 0x19
invoke-virtual {p1, v1, v2, v0}, Landroid/graphics/Bitmap;->compress(Landroid/graphics/Bitmap$CompressFormat;ILjava/io/OutputStream;)Z
.line 102
invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
move-result-object p1
const/4 v0, 0x0
.line 103
invoke-static {p1, v0}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;
move-result-object p1
:try_end_17
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_17} :catch_18
goto :goto_19
:catch_18
:cond_18
const/4 p1, 0x0
:goto_19
return-object p1
.end method
.method private initEmailIntent()V
.registers 3
.line 69
new-instance v0, Landroid/content/Intent;
const-string v1, "android.intent.action.SENDTO"
invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
iput-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mEmailIntent:Landroid/content/Intent;
const-string v1, "mailto:creative-review@mopub.com"
.line 73
invoke-static {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v1
invoke-virtual {v0, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
return-void
.end method
.method private takeScreenShot()Landroid/graphics/Bitmap;
.registers 5
.line 77
iget-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mView:Landroid/view/View;
const/4 v1, 0x0
if-eqz v0, :cond_28
invoke-virtual {v0}, Landroid/view/View;->getRootView()Landroid/view/View;
move-result-object v0
if-nez v0, :cond_c
goto :goto_28
.line 81
:cond_c
iget-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mView:Landroid/view/View;
invoke-virtual {v0}, Landroid/view/View;->getRootView()Landroid/view/View;
move-result-object v0
.line 82
invoke-virtual {v0}, Landroid/view/View;->isDrawingCacheEnabled()Z
move-result v2
const/4 v3, 0x1
.line 83
invoke-virtual {v0, v3}, Landroid/view/View;->setDrawingCacheEnabled(Z)V
.line 85
invoke-virtual {v0}, Landroid/view/View;->getDrawingCache()Landroid/graphics/Bitmap;
move-result-object v3
if-nez v3, :cond_21
return-object v1
.line 90
:cond_21
invoke-static {v3}, Landroid/graphics/Bitmap;->createBitmap(Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap;
move-result-object v1
.line 91
invoke-virtual {v0, v2}, Landroid/view/View;->setDrawingCacheEnabled(Z)V
:cond_28
:goto_28
return-object v1
.end method
# virtual methods
.method getEmailIntent()Landroid/content/Intent;
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 131
iget-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mEmailIntent:Landroid/content/Intent;
return-object v0
.end method
.method getParameters()Ljava/lang/String;
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 136
iget-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mParameters:Ljava/lang/String;
return-object v0
.end method
.method getResponse()Ljava/lang/String;
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 141
iget-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mResponse:Ljava/lang/String;
return-object v0
.end method
.method public send()V
.registers 4
.line 62
:try_start_0
iget-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mContext:Landroid/content/Context;
iget-object v1, p0, Lcom/mopub/mobileads/AdAlertReporter;->mEmailIntent:Landroid/content/Intent;
invoke-static {v0, v1}, Lcom/mopub/common/util/Intents;->startActivity(Landroid/content/Context;Landroid/content/Intent;)V
:try_end_7
.catch Lcom/mopub/exceptions/IntentNotResolvableException; {:try_start_0 .. :try_end_7} :catch_8
return-void
.line 64
:catch_8
iget-object v0, p0, Lcom/mopub/mobileads/AdAlertReporter;->mContext:Landroid/content/Context;
const/4 v1, 0x0
const-string v2, "No email client available"
invoke-static {v0, v2, v1}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;
move-result-object v0
check-cast v0, Landroid/widget/Toast;
invoke-static {v0}, Lsg/bigo/common/ae;->a(Landroid/widget/Toast;)V
return-void
.end method