DTBActivity.smali
.class public Lcom/amazon/device/ads/DTBActivity;
.super Landroid/app/Activity;
.source "SourceFile"
# instance fields
.field private final LOG_TAG:Ljava/lang/String;
# direct methods
.method public constructor <init>()V
.registers 2
.line 13
invoke-direct {p0}, Landroid/app/Activity;-><init>()V
.line 15
const-class v0, Lcom/amazon/device/ads/DTBActivity;
invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/amazon/device/ads/DTBActivity;->LOG_TAG:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public execute(Ljava/lang/String;)V
.registers 6
const-string v0, "Executing AmazonMobile Intent"
.line 53
invoke-static {v0}, Lcom/amazon/device/ads/DtbLog;->debug(Ljava/lang/String;)V
.line 54
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
:try_start_9
const-string v0, "intent"
.line 58
invoke-virtual {p1, v0}, Landroid/net/Uri;->getQueryParameters(Ljava/lang/String;)Ljava/util/List;
move-result-object v0
:try_end_f
.catch Ljava/lang/UnsupportedOperationException; {:try_start_9 .. :try_end_f} :catch_10
goto :goto_11
:catch_10
const/4 v0, 0x0
:goto_11
const-string v1, "Special url clicked, but was not handled by SDK. Url: "
if-eqz v0, :cond_4c
.line 64
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v2
if-lez v2, :cond_4c
.line 65
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
.line 67
:cond_1f
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_36
.line 68
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
.line 69
invoke-virtual {p0}, Lcom/amazon/device/ads/DTBActivity;->getApplicationContext()Landroid/content/Context;
move-result-object v3
invoke-static {v2, v3}, Lcom/amazon/device/ads/DtbCommonUtils;->launchActivityForIntentLink(Ljava/lang/String;Landroid/content/Context;)Z
move-result v2
if-eqz v2, :cond_1f
return-void
.line 74
:cond_36
iget-object v0, p0, Lcom/amazon/device/ads/DTBActivity;->LOG_TAG:Ljava/lang/String;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p1}, Landroid/net/Uri;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {v0, p1}, Lcom/amazon/device/ads/DtbLog;->info(Ljava/lang/String;Ljava/lang/String;)V
return-void
.line 75
:cond_4c
invoke-virtual {p0}, Lcom/amazon/device/ads/DTBActivity;->getApplicationContext()Landroid/content/Context;
move-result-object v0
invoke-virtual {p0, v0}, Lcom/amazon/device/ads/DTBActivity;->isWindowshopPresent(Landroid/content/Context;)Z
move-result v0
if-eqz v0, :cond_cd
.line 76
invoke-virtual {p1}, Landroid/net/Uri;->getHost()Ljava/lang/String;
move-result-object v0
const-string v2, "shopping"
invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_e2
const-string v0, "app-action"
.line 77
invoke-virtual {p1, v0}, Landroid/net/Uri;->getQueryParameter(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_cc
.line 78
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v2
if-nez v2, :cond_71
goto :goto_cc
:cond_71
const-string v2, "detail"
.line 82
invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_90
const-string v0, "asin"
.line 83
invoke-virtual {p1, v0}, Landroid/net/Uri;->getQueryParameter(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
if-eqz p1, :cond_8f
.line 84
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
if-nez v0, :cond_88
goto :goto_8f
.line 88
:cond_88
invoke-virtual {p0}, Lcom/amazon/device/ads/DTBActivity;->getApplicationContext()Landroid/content/Context;
move-result-object v0
invoke-virtual {p0, v0, p1}, Lcom/amazon/device/ads/DTBActivity;->launchWindowshopDetailPage(Landroid/content/Context;Ljava/lang/String;)V
:cond_8f
:goto_8f
return-void
:cond_90
const-string v2, "search"
.line 89
invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_af
const-string v0, "keyword"
.line 90
invoke-virtual {p1, v0}, Landroid/net/Uri;->getQueryParameter(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
if-eqz p1, :cond_ae
.line 91
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
if-nez v0, :cond_a7
goto :goto_ae
.line 95
:cond_a7
invoke-virtual {p0}, Lcom/amazon/device/ads/DTBActivity;->getApplicationContext()Landroid/content/Context;
move-result-object v0
invoke-virtual {p0, v0, p1}, Lcom/amazon/device/ads/DTBActivity;->launchWindowshopSearchPage(Landroid/content/Context;Ljava/lang/String;)V
:cond_ae
:goto_ae
return-void
:cond_af
const-string v2, "webview"
.line 96
invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_cc
.line 97
iget-object v0, p0, Lcom/amazon/device/ads/DTBActivity;->LOG_TAG:Ljava/lang/String;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p1}, Landroid/net/Uri;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {v0, p1}, Lcom/amazon/device/ads/DtbLog;->info(Ljava/lang/String;Ljava/lang/String;)V
:cond_cc
:goto_cc
return-void
.line 101
:cond_cd
iget-object v0, p0, Lcom/amazon/device/ads/DTBActivity;->LOG_TAG:Ljava/lang/String;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p1}, Landroid/net/Uri;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {v0, p1}, Lcom/amazon/device/ads/DtbLog;->info(Ljava/lang/String;Ljava/lang/String;)V
:cond_e2
return-void
.end method
.method isWindowshopPresent(Landroid/content/Context;)Z
.registers 3
.line 39
invoke-virtual {p1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p1
const-string v0, "com.amazon.windowshop"
invoke-virtual {p1, v0}, Landroid/content/pm/PackageManager;->getLaunchIntentForPackage(Ljava/lang/String;)Landroid/content/Intent;
move-result-object p1
if-eqz p1, :cond_e
const/4 p1, 0x1
return p1
:cond_e
const/4 p1, 0x0
return p1
.end method
.method launchWindowshopDetailPage(Landroid/content/Context;Ljava/lang/String;)V
.registers 5
.line 44
invoke-virtual {p1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
const-string v1, "com.amazon.windowshop"
invoke-virtual {v0, v1}, Landroid/content/pm/PackageManager;->getLaunchIntentForPackage(Ljava/lang/String;)Landroid/content/Intent;
move-result-object v0
if-eqz v0, :cond_14
const-string v1, "com.amazon.windowshop.refinement.asin"
.line 46
invoke-virtual {v0, v1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
.line 47
invoke-virtual {p1, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
:cond_14
return-void
.end method
.method launchWindowshopSearchPage(Landroid/content/Context;Ljava/lang/String;)V
.registers 7
.line 106
new-instance v0, Landroid/content/Intent;
const-string v1, "android.intent.action.SEARCH"
invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
.line 107
new-instance v1, Landroid/content/ComponentName;
const-string v2, "com.amazon.windowshop"
const-string v3, "com.amazon.windowshop.search.SearchResultsGridActivity"
invoke-direct {v1, v2, v3}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V
invoke-virtual {v0, v1}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
const-string v1, "query"
.line 108
invoke-virtual {v0, v1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
.line 111
:try_start_18
invoke-virtual {p1, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
:try_end_1b
.catch Ljava/lang/RuntimeException; {:try_start_18 .. :try_end_1b} :catch_1b
:catch_1b
return-void
.end method
.method protected onCreate(Landroid/os/Bundle;)V
.registers 4
.line 19
invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V
.line 21
invoke-virtual {p0}, Lcom/amazon/device/ads/DTBActivity;->getIntent()Landroid/content/Intent;
move-result-object p1
if-eqz p1, :cond_43
.line 22
invoke-virtual {p1}, Landroid/content/Intent;->getAction()Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_43
invoke-virtual {p1}, Landroid/content/Intent;->getAction()Ljava/lang/String;
move-result-object v0
const-string v1, "android.intent.action.VIEW"
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_43
invoke-virtual {p1}, Landroid/content/Intent;->getDataString()Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_43
.line 23
invoke-virtual {p1}, Landroid/content/Intent;->getDataString()Ljava/lang/String;
move-result-object p1
const-string v0, "amazonmobile"
.line 24
invoke-virtual {p1, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_36
const-string v0, "Received a request to open amazonmobile url."
.line 25
invoke-static {v0}, Lcom/amazon/device/ads/DtbLog;->info(Ljava/lang/String;)V
.line 26
invoke-virtual {p0, p1}, Lcom/amazon/device/ads/DTBActivity;->execute(Ljava/lang/String;)V
goto :goto_48
:cond_36
const-string v0, "Received a request to open unknown url."
.line 28
invoke-static {v0}, Lcom/amazon/device/ads/DtbLog;->info(Ljava/lang/String;)V
.line 29
invoke-virtual {p0}, Lcom/amazon/device/ads/DTBActivity;->getApplicationContext()Landroid/content/Context;
move-result-object v0
invoke-static {p1, v0}, Lcom/amazon/device/ads/DtbCommonUtils;->launchActivityForIntentLink(Ljava/lang/String;Landroid/content/Context;)Z
goto :goto_48
:cond_43
const-string p1, "Invalid intent has been received, please debug for more information."
.line 33
invoke-static {p1}, Lcom/amazon/device/ads/DtbLog;->warn(Ljava/lang/String;)V
.line 35
:goto_48
invoke-virtual {p0}, Lcom/amazon/device/ads/DTBActivity;->finish()V
return-void
.end method