.class public final Lcom/facebook/appevents/codeless/ViewIndexer$schedule$indexingTask$1; .super Ljava/util/TimerTask; .source "SourceFile" # annotations .annotation system Ldalvik/annotation/EnclosingMethod; value = Lcom/facebook/appevents/codeless/ViewIndexer;->schedule()V .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x19 name = null .end annotation # instance fields .field final synthetic this$0:Lcom/facebook/appevents/codeless/ViewIndexer; # direct methods .method public constructor (Lcom/facebook/appevents/codeless/ViewIndexer;)V .locals 0 iput-object p1, p0, Lcom/facebook/appevents/codeless/ViewIndexer$schedule$indexingTask$1;->this$0:Lcom/facebook/appevents/codeless/ViewIndexer; .line 62 invoke-direct {p0}, Ljava/util/TimerTask;->()V return-void .end method # virtual methods .method public run()V .locals 7 :try_start_0 iget-object v0, p0, Lcom/facebook/appevents/codeless/ViewIndexer$schedule$indexingTask$1;->this$0:Lcom/facebook/appevents/codeless/ViewIndexer; .line 65 invoke-static {v0}, Lcom/facebook/appevents/codeless/ViewIndexer;->access$getActivityReference$p(Lcom/facebook/appevents/codeless/ViewIndexer;)Ljava/lang/ref/WeakReference; move-result-object v0 invoke-virtual {v0}, Ljava/lang/ref/Reference;->get()Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/app/Activity; .line 66 invoke-static {v0}, Lcom/facebook/appevents/internal/AppEventUtility;->getRootView(Landroid/app/Activity;)Landroid/view/View; move-result-object v1 if-eqz v0, :cond_3 if-nez v1, :cond_0 goto/16 :goto_2 .line 70 :cond_0 invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String; move-result-object v0 .line 71 invoke-static {}, Lcom/facebook/appevents/codeless/CodelessManager;->getIsAppIndexingEnabled$facebook_core_release()Z move-result v2 if-nez v2, :cond_1 return-void .line 74 :cond_1 invoke-static {}, Lcom/facebook/internal/InternalSettings;->isUnityApp()Z move-result v2 if-eqz v2, :cond_2 .line 75 invoke-static {}, Lcom/facebook/appevents/codeless/internal/UnityReflection;->captureViewHierarchy()V return-void :catch_0 move-exception v0 goto :goto_3 .line 78 :cond_2 new-instance v2, Ljava/util/concurrent/FutureTask; new-instance v3, Lcom/facebook/appevents/codeless/ViewIndexer$ScreenshotTaker; invoke-direct {v3, v1}, Lcom/facebook/appevents/codeless/ViewIndexer$ScreenshotTaker;->(Landroid/view/View;)V invoke-direct {v2, v3}, Ljava/util/concurrent/FutureTask;->(Ljava/util/concurrent/Callable;)V iget-object v3, p0, Lcom/facebook/appevents/codeless/ViewIndexer$schedule$indexingTask$1;->this$0:Lcom/facebook/appevents/codeless/ViewIndexer; .line 79 invoke-static {v3}, Lcom/facebook/appevents/codeless/ViewIndexer;->access$getUiThreadHandler$p(Lcom/facebook/appevents/codeless/ViewIndexer;)Landroid/os/Handler; move-result-object v3 invoke-virtual {v3, v2}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z const-string v3, "" :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 .line 82 :try_start_1 sget-object v4, Ljava/util/concurrent/TimeUnit;->SECONDS:Ljava/util/concurrent/TimeUnit; const-wide/16 v5, 0x1 invoke-virtual {v2, v5, v6, v4}, Ljava/util/concurrent/FutureTask;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object; move-result-object v2 check-cast v2, Ljava/lang/String; :try_end_1 .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1 move-object v3, v2 goto :goto_0 :catch_1 move-exception v2 .line 84 :try_start_2 invoke-static {}, Lcom/facebook/appevents/codeless/ViewIndexer;->access$getTAG$cp()Ljava/lang/String; move-result-object v4 const-string v5, "Failed to take screenshot." invoke-static {v4, v5, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I .line 86 :goto_0 new-instance v2, Lorg/json/JSONObject; invoke-direct {v2}, Lorg/json/JSONObject;->()V :try_end_2 .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_0 :try_start_3 const-string v4, "screenname" .line 88 invoke-virtual {v2, v4, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; const-string v0, "screenshot" .line 89 invoke-virtual {v2, v0, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; .line 90 new-instance v0, Lorg/json/JSONArray; invoke-direct {v0}, Lorg/json/JSONArray;->()V .line 91 invoke-static {v1}, Lcom/facebook/appevents/codeless/internal/ViewHierarchy;->getDictionaryOfView(Landroid/view/View;)Lorg/json/JSONObject; move-result-object v1 .line 92 invoke-virtual {v0, v1}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray; const-string v1, "view" .line 93 invoke-virtual {v2, v1, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject; :try_end_3 .catch Lorg/json/JSONException; {:try_start_3 .. :try_end_3} :catch_2 .catch Ljava/lang/Exception; {:try_start_3 .. :try_end_3} :catch_0 goto :goto_1 .line 95 :catch_2 :try_start_4 invoke-static {}, Lcom/facebook/appevents/codeless/ViewIndexer;->access$getTAG$cp()Ljava/lang/String; move-result-object v0 const-string v1, "Failed to create JSONObject" invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I .line 97 :goto_1 invoke-virtual {v2}, Lorg/json/JSONObject;->toString()Ljava/lang/String; move-result-object v0 const-string v1, "viewTree.toString()" invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V iget-object v1, p0, Lcom/facebook/appevents/codeless/ViewIndexer$schedule$indexingTask$1;->this$0:Lcom/facebook/appevents/codeless/ViewIndexer; .line 98 invoke-static {v1, v0}, Lcom/facebook/appevents/codeless/ViewIndexer;->access$sendToServer(Lcom/facebook/appevents/codeless/ViewIndexer;Ljava/lang/String;)V :try_end_4 .catch Ljava/lang/Exception; {:try_start_4 .. :try_end_4} :catch_0 goto :goto_4 :cond_3 :goto_2 return-void .line 100 :goto_3 invoke-static {}, Lcom/facebook/appevents/codeless/ViewIndexer;->access$getTAG$cp()Ljava/lang/String; move-result-object v1 const-string v2, "UI Component tree indexing failure!" invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I :goto_4 return-void .end method