Fix offline Shader + Lyric Seeking

This commit is contained in:
meowarex
2026-08-19 06:54:51 +00:00
parent 5d8e52ce9f
commit a594e23ee5
27 changed files with 532 additions and 364 deletions
+291 -302
View File
@@ -5,6 +5,7 @@
.implements Lam0/l;
.implements Ljava/lang/Runnable;
.implements Landroid/view/Choreographer$FrameCallback;
.implements Lb0/c;
# static fields
@@ -14,7 +15,7 @@
.field private static final LOADER:Ljava/util/concurrent/ExecutorService;
.field private static final TAG:Ljava/lang/String; = "RLKawarp"
.field private static volatile appContext:Landroid/content/Context;
.field private static engine:Ldev/kawarp/KawarpEngine;
@@ -30,12 +31,14 @@
.field private static volatile loadToken:I
.field private static loggedDraw:Z
.field private static volatile loader:Lcoil/f;
.field private static volatile requestedUuid:Ljava/lang/String;
# instance fields
.field private final albumId:I
.field private final token:I
.field private final uuid:Ljava/lang/String;
@@ -73,22 +76,101 @@
new-instance v1, Lradiant/Kawarp;
invoke-direct {v1, v3, v0}, Lradiant/Kawarp;-><init>(Ljava/lang/String;I)V
invoke-direct {v1, v0, v3, v0}, Lradiant/Kawarp;-><init>(ILjava/lang/String;I)V
sput-object v1, Lradiant/Kawarp;->DRAW:Lradiant/Kawarp;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;I)V
.registers 3
.method private constructor <init>(ILjava/lang/String;I)V
.registers 4
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lradiant/Kawarp;->uuid:Ljava/lang/String;
iput p1, p0, Lradiant/Kawarp;->albumId:I
iput p2, p0, Lradiant/Kawarp;->token:I
iput-object p2, p0, Lradiant/Kawarp;->uuid:Ljava/lang/String;
iput p3, p0, Lradiant/Kawarp;->token:I
return-void
.end method
.method private static attach(Landroidx/compose/runtime/Composer;)V
.registers 3
sget-object v0, Lradiant/Kawarp;->loader:Lcoil/f;
if-eqz v0, :cond_5
return-void
:cond_5
:try_start_5
invoke-static {}, Landroidx/compose/ui/platform/AndroidCompositionLocals_androidKt;->getLocalContext()Landroidx/compose/runtime/ProvidableCompositionLocal;
move-result-object v0
invoke-interface {p0, v0}, Landroidx/compose/runtime/Composer;->consume(Landroidx/compose/runtime/CompositionLocal;)Ljava/lang/Object;
move-result-object p0
instance-of v0, p0, Landroid/content/Context;
if-nez v0, :cond_12
return-void
:cond_12
check-cast p0, Landroid/content/Context;
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
instance-of v0, p0, Lce0/b$a;
if-nez v0, :cond_1d
return-void
:cond_1d
move-object v0, p0
check-cast v0, Lce0/b$a;
invoke-interface {v0}, Lce0/b$a;->a()Lce0/b;
move-result-object v0
invoke-interface {v0}, Lce0/b;->a()Lxd0/e;
move-result-object v0
instance-of v1, v0, Lcom/tidal/android/image/coil/base/CoilImageLoader;
if-nez v1, :cond_2d
return-void
:cond_2d
sput-object p0, Lradiant/Kawarp;->appContext:Landroid/content/Context;
check-cast v0, Lcom/tidal/android/image/coil/base/CoilImageLoader;
iget-object p0, v0, Lcom/tidal/android/image/coil/base/CoilImageLoader;->a:Lcoil/f;
sput-object p0, Lradiant/Kawarp;->loader:Lcoil/f;
:try_end_35
.catchall {:try_start_5 .. :try_end_35} :catchall_36
goto :goto_37
:catchall_36
move-exception p0
:goto_37
return-void
.end method
@@ -101,7 +183,7 @@
.end method
.method private static draw(Landroidx/compose/ui/graphics/drawscope/DrawScope;)V
.registers 6
.registers 4
sget-object v0, Lradiant/Kawarp;->frameState:Landroidx/compose/runtime/MutableIntState;
@@ -127,64 +209,7 @@
move-result v0
sget-boolean v1, Lradiant/Kawarp;->loggedDraw:Z
const-string v3, "RLKawarp"
if-nez v1, :cond_53
const/4 v1, 0x1
sput-boolean v1, Lradiant/Kawarp;->loggedDraw:Z
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "first draw: "
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;
move-result-object v1
const-string v4, "x"
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;
move-result-object v1
const-string v4, " ready="
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
sget-object v4, Lradiant/Kawarp;->engine:Ldev/kawarp/KawarpEngine;
invoke-virtual {v4}, Ldev/kawarp/KawarpEngine;->isReady()Z
move-result v4
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v3, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
:cond_53
:try_start_53
:try_start_1a
sget-object v1, Lradiant/Kawarp;->engine:Ldev/kawarp/KawarpEngine;
invoke-interface {p0}, Landroidx/compose/ui/graphics/drawscope/DrawScope;->getDrawContext()Landroidx/compose/ui/graphics/drawscope/DrawContext;
@@ -200,41 +225,21 @@
move-result-object p0
invoke-virtual {v1, p0, v2, v0}, Ldev/kawarp/KawarpEngine;->draw(Landroid/graphics/Canvas;FF)Z
:try_end_64
.catchall {:try_start_53 .. :try_end_64} :catchall_65
:try_end_2b
.catchall {:try_start_1a .. :try_end_2b} :catchall_2c
goto :goto_83
goto :goto_34
:catchall_65
:catchall_2c
move-exception p0
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "AGSL draw failed, falling back: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-static {v3, p0}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
sget-object p0, Lradiant/Kawarp;->fallbackState:Landroidx/compose/runtime/MutableState;
sget-object v0, Ljava/lang/Boolean;->TRUE:Ljava/lang/Boolean;
invoke-interface {p0, v0}, Landroidx/compose/runtime/MutableState;->setValue(Ljava/lang/Object;)V
:goto_83
:goto_34
return-void
.end method
@@ -397,28 +402,6 @@
:catchall_9f
move-exception v0
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "AGSL rejected, staying on the native backdrop: "
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "RLKawarp"
invoke-static {v1, v0}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
sget-object v0, Lradiant/Kawarp;->fallbackState:Landroidx/compose/runtime/MutableState;
sget-object v1, Ljava/lang/Boolean;->TRUE:Ljava/lang/Boolean;
@@ -428,6 +411,23 @@
return v2
.end method
.method private fail()V
.registers 3
iget v0, p0, Lradiant/Kawarp;->token:I
sget v1, Lradiant/Kawarp;->loadToken:I
if-ne v0, v1, :cond_9
const/4 v0, 0x0
sput-object v0, Lradiant/Kawarp;->requestedUuid:Ljava/lang/String;
:cond_9
return-void
.end method
.method public static render(ILjava/lang/String;ZLandroidx/compose/ui/Modifier;Landroidx/compose/runtime/Composer;)V
.registers 13
@@ -435,6 +435,8 @@
invoke-interface {p4, v0}, Landroidx/compose/runtime/Composer;->startReplaceGroup(I)V
invoke-static {p4}, Lradiant/Kawarp;->attach(Landroidx/compose/runtime/Composer;)V
sget-object v0, Lradiant/Kawarp;->fallbackState:Landroidx/compose/runtime/MutableState;
invoke-interface {v0}, Landroidx/compose/runtime/MutableState;->getValue()Ljava/lang/Object;
@@ -447,19 +449,19 @@
move-result v0
if-nez v0, :cond_34
if-nez v0, :cond_37
invoke-static {}, Lradiant/Kawarp;->ensureEngine()Z
move-result v0
if-eqz v0, :cond_34
if-eqz v0, :cond_37
sget-object p0, Lradiant/Kawarp;->engine:Ldev/kawarp/KawarpEngine;
sget-object v0, Lradiant/Kawarp;->engine:Ldev/kawarp/KawarpEngine;
invoke-virtual {p0, p2}, Ldev/kawarp/KawarpEngine;->setPlaying(Z)V
invoke-virtual {v0, p2}, Ldev/kawarp/KawarpEngine;->setPlaying(Z)V
invoke-static {p1}, Lradiant/Kawarp;->request(Ljava/lang/String;)V
invoke-static {p0, p1}, Lradiant/Kawarp;->request(ILjava/lang/String;)V
const/high16 p0, 0x3f800000 # 1.0f
@@ -479,9 +481,9 @@
move-object v6, p4
goto :goto_3f
goto :goto_42
:cond_34
:cond_37
const/4 v4, 0x0
const/4 v7, 0x0
@@ -500,35 +502,42 @@
invoke-static/range {v0 .. v7}, Lcom/tidal/android/feature/playerscreen/ui/composables/p3;->a(ILjava/lang/String;ZZLam0/a;Landroidx/compose/ui/Modifier;Landroidx/compose/runtime/Composer;I)V
:goto_3f
:goto_42
invoke-interface {v6}, Landroidx/compose/runtime/Composer;->endReplaceGroup()V
return-void
.end method
.method private static request(Ljava/lang/String;)V
.registers 4
.method private static request(ILjava/lang/String;)V
.registers 5
if-eqz p0, :cond_23
if-eqz p1, :cond_28
invoke-virtual {p0}, Ljava/lang/String;->length()I
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
if-eqz v0, :cond_23
if-eqz v0, :cond_28
sget-object v0, Lradiant/Kawarp;->requestedUuid:Ljava/lang/String;
invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_11
goto :goto_23
goto :goto_28
:cond_11
sput-object p0, Lradiant/Kawarp;->requestedUuid:Ljava/lang/String;
sget-object v0, Lradiant/Kawarp;->loader:Lcoil/f;
if-nez v0, :cond_16
return-void
:cond_16
sput-object p1, Lradiant/Kawarp;->requestedUuid:Ljava/lang/String;
sget-object v0, Lradiant/Kawarp;->LOADER:Ljava/util/concurrent/ExecutorService;
@@ -540,12 +549,12 @@
sput v2, Lradiant/Kawarp;->loadToken:I
invoke-direct {v1, p0, v2}, Lradiant/Kawarp;-><init>(Ljava/lang/String;I)V
invoke-direct {v1, p0, p1, v2}, Lradiant/Kawarp;-><init>(ILjava/lang/String;I)V
invoke-interface {v0, v1}, Ljava/util/concurrent/ExecutorService;->execute(Ljava/lang/Runnable;)V
:cond_23
:goto_23
:cond_28
:goto_28
return-void
.end method
@@ -580,8 +589,96 @@
return p0
.end method
.method private static toBitmap(Landroid/graphics/drawable/Drawable;)Landroid/graphics/Bitmap;
.registers 4
if-nez p0, :cond_4
const/4 p0, 0x0
return-object p0
:cond_4
instance-of v0, p0, Landroid/graphics/drawable/BitmapDrawable;
if-eqz v0, :cond_f
check-cast p0, Landroid/graphics/drawable/BitmapDrawable;
invoke-virtual {p0}, Landroid/graphics/drawable/BitmapDrawable;->getBitmap()Landroid/graphics/Bitmap;
move-result-object p0
return-object p0
:cond_f
sget-object v0, Landroid/graphics/Bitmap$Config;->ARGB_8888:Landroid/graphics/Bitmap$Config;
const/16 v1, 0x100
invoke-static {v1, v1, v0}, Landroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;
move-result-object v0
const/4 v2, 0x0
invoke-virtual {p0, v2, v2, v1, v1}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
new-instance v1, Landroid/graphics/Canvas;
invoke-direct {v1, v0}, Landroid/graphics/Canvas;-><init>(Landroid/graphics/Bitmap;)V
invoke-virtual {p0, v1}, Landroid/graphics/drawable/Drawable;->draw(Landroid/graphics/Canvas;)V
return-object v0
.end method
# virtual methods
.method public a(Landroid/graphics/drawable/Drawable;)V
.registers 4
iget v0, p0, Lradiant/Kawarp;->token:I
sget v1, Lradiant/Kawarp;->loadToken:I
if-eq v0, v1, :cond_7
return-void
:cond_7
invoke-static {p1}, Lradiant/Kawarp;->toBitmap(Landroid/graphics/drawable/Drawable;)Landroid/graphics/Bitmap;
move-result-object p1
if-nez p1, :cond_11
invoke-direct {p0}, Lradiant/Kawarp;->fail()V
return-void
:cond_11
sget-object v0, Lradiant/Kawarp;->engine:Ldev/kawarp/KawarpEngine;
invoke-virtual {v0, p1}, Ldev/kawarp/KawarpEngine;->setCover(Landroid/graphics/Bitmap;)V
return-void
.end method
.method public b(Landroid/graphics/drawable/Drawable;)V
.registers 2
return-void
.end method
.method public d(Landroid/graphics/drawable/Drawable;)V
.registers 2
invoke-direct {p0}, Lradiant/Kawarp;->fail()V
return-void
.end method
.method public doFrame(J)V
.registers 5
@@ -634,206 +731,98 @@
.end method
.method public run()V
.registers 8
.registers 15
const-string v0, "RLKawarp"
:try_start_0
new-instance v0, Lxd0/g;
sget-object v1, Lradiant/Kawarp;->appContext:Landroid/content/Context;
new-instance v2, Lcom/tidal/android/image/core/b$a;
iget v3, p0, Lradiant/Kawarp;->albumId:I
invoke-static {v3}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v3
iget-object v4, p0, Lradiant/Kawarp;->uuid:Ljava/lang/String;
invoke-direct {v2, v3, v4}, Lcom/tidal/android/image/core/b$a;-><init>(Ljava/lang/String;Ljava/lang/String;)V
const/4 v7, 0x0
const/4 v8, 0x0
const/4 v3, 0x0
const/4 v4, 0x0
const/4 v5, 0x0
const/4 v6, 0x0
invoke-direct/range {v0 .. v8}, Lxd0/g;-><init>(Landroid/content/Context;Lcom/tidal/android/image/core/b;Lcom/tidal/android/image/core/b$h$a;Lcom/tidal/android/image/core/b$h$a;ZLjava/util/List;Lxd0/f;Z)V
const/4 v1, 0x0
:try_start_3
new-instance v2, Ljava/net/URL;
invoke-static {v0, v1}, Lcom/tidal/android/image/coil/c;->a(Lxd0/g;Landroidx/compose/ui/layout/ContentScale;)Lcoil/request/h;
new-instance v3, Ljava/lang/StringBuilder;
move-result-object v0
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-static {v0}, Lcoil/request/h;->a(Lcoil/request/h;)Lcoil/request/h$a;
const-string v4, "https://resources.tidal.com/images/"
move-result-object v0
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, v0, Lcoil/request/h$a;->b:Lcoil/request/b;
move-result-object v3
new-instance v2, Lcoil/request/b;
iget-object v4, p0, Lradiant/Kawarp;->uuid:Ljava/lang/String;
iget-object v3, v1, Lcoil/request/b;->a:Lkotlinx/coroutines/CoroutineDispatcher;
const/16 v5, 0x2d
iget-object v4, v1, Lcoil/request/b;->b:Lkotlinx/coroutines/CoroutineDispatcher;
const/16 v6, 0x2f
iget-object v5, v1, Lcoil/request/b;->c:Lkotlinx/coroutines/CoroutineDispatcher;
invoke-virtual {v4, v5, v6}, Ljava/lang/String;->replace(CC)Ljava/lang/String;
iget-object v6, v1, Lcoil/request/b;->d:Lkotlinx/coroutines/CoroutineDispatcher;
move-result-object v4
iget-object v7, v1, Lcoil/request/b;->e:Ld0/c$a;
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v8, v1, Lcoil/request/b;->f:Lcoil/size/Precision;
move-result-object v3
iget-object v9, v1, Lcoil/request/b;->g:Landroid/graphics/Bitmap$Config;
const-string v4, "/640x640.jpg"
iget-boolean v10, v1, Lcoil/request/b;->h:Z
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v11, v1, Lcoil/request/b;->i:Lcoil/request/CachePolicy;
move-result-object v3
iget-object v12, v1, Lcoil/request/b;->j:Lcoil/request/CachePolicy;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
sget-object v13, Lcoil/request/CachePolicy;->DISABLED:Lcoil/request/CachePolicy;
move-result-object v3
invoke-direct/range {v2 .. v13}, Lcoil/request/b;-><init>(Lkotlinx/coroutines/CoroutineDispatcher;Lkotlinx/coroutines/CoroutineDispatcher;Lkotlinx/coroutines/CoroutineDispatcher;Lkotlinx/coroutines/CoroutineDispatcher;Ld0/c$a;Lcoil/size/Precision;Landroid/graphics/Bitmap$Config;ZLcoil/request/CachePolicy;Lcoil/request/CachePolicy;Lcoil/request/CachePolicy;)V
invoke-direct {v2, v3}, Ljava/net/URL;-><init>(Ljava/lang/String;)V
iput-object v2, v0, Lcoil/request/h$a;->b:Lcoil/request/b;
invoke-virtual {v2}, Ljava/net/URL;->openConnection()Ljava/net/URLConnection;
iput-object p0, v0, Lcoil/request/h$a;->d:Lb0/c;
move-result-object v2
sget-object v1, Lradiant/Kawarp;->loader:Lcoil/f;
check-cast v2, Ljava/net/HttpURLConnection;
:try_end_31
.catchall {:try_start_3 .. :try_end_31} :catchall_7f
invoke-virtual {v0}, Lcoil/request/h$a;->a()Lcoil/request/h;
const/16 v3, 0x2710
move-result-object v0
:try_start_33
invoke-virtual {v2, v3}, Ljava/net/HttpURLConnection;->setConnectTimeout(I)V
invoke-interface {v1, v0}, Lcoil/f;->b(Lcoil/request/h;)Lcoil/request/d;
:try_end_4d
.catchall {:try_start_0 .. :try_end_4d} :catchall_4e
const/16 v3, 0x3a98
goto :goto_52
invoke-virtual {v2, v3}, Ljava/net/HttpURLConnection;->setReadTimeout(I)V
invoke-virtual {v2}, Ljava/net/HttpURLConnection;->getInputStream()Ljava/io/InputStream;
move-result-object v3
:try_end_3f
.catchall {:try_start_33 .. :try_end_3f} :catchall_7d
:try_start_3f
invoke-static {v3}, Landroid/graphics/BitmapFactory;->decodeStream(Ljava/io/InputStream;)Landroid/graphics/Bitmap;
move-result-object v4
:try_end_43
.catchall {:try_start_3f .. :try_end_43} :catchall_78
:try_start_43
invoke-virtual {v3}, Ljava/io/InputStream;->close()V
if-eqz v4, :cond_72
iget v3, p0, Lradiant/Kawarp;->token:I
sget v5, Lradiant/Kawarp;->loadToken:I
if-eq v3, v5, :cond_4f
goto :goto_72
:cond_4f
sget-object v3, Lradiant/Kawarp;->engine:Ldev/kawarp/KawarpEngine;
invoke-virtual {v3, v4}, Ldev/kawarp/KawarpEngine;->setCover(Landroid/graphics/Bitmap;)V
invoke-virtual {v4}, Landroid/graphics/Bitmap;->recycle()V
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "cover submitted: "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
iget-object v4, p0, Lradiant/Kawarp;->uuid:Ljava/lang/String;
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
:try_end_6f
.catchall {:try_start_43 .. :try_end_6f} :catchall_7d
if-eqz v2, :cond_a4
goto :goto_a1
:cond_72
:goto_72
if-eqz v2, :cond_77
invoke-virtual {v2}, Ljava/net/HttpURLConnection;->disconnect()V
:cond_77
return-void
:catchall_78
move-exception v4
:try_start_79
invoke-virtual {v3}, Ljava/io/InputStream;->close()V
throw v4
:try_end_7d
.catchall {:try_start_79 .. :try_end_7d} :catchall_7d
:catchall_7d
move-exception v3
goto :goto_81
:catchall_7f
move-exception v3
move-object v2, v1
:goto_81
:try_start_81
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "cover load failed: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
iget v0, p0, Lradiant/Kawarp;->token:I
sget v3, Lradiant/Kawarp;->loadToken:I
if-ne v0, v3, :cond_9f
sput-object v1, Lradiant/Kawarp;->requestedUuid:Ljava/lang/String;
:try_end_9f
.catchall {:try_start_81 .. :try_end_9f} :catchall_a5
:cond_9f
if-eqz v2, :cond_a4
:goto_a1
invoke-virtual {v2}, Ljava/net/HttpURLConnection;->disconnect()V
:cond_a4
return-void
:catchall_a5
:catchall_4e
move-exception v0
if-eqz v2, :cond_ab
invoke-direct {p0}, Lradiant/Kawarp;->fail()V
invoke-virtual {v2}, Ljava/net/HttpURLConnection;->disconnect()V
:cond_ab
throw v0
:goto_52
return-void
.end method
@@ -375,7 +375,7 @@
.end method
.method public static parseLines(Ljava/lang/String;)Ljava/util/ArrayList;
.locals 11
.locals 13
:try_start
new-instance v0, Lorg/json/JSONObject;
@@ -466,6 +466,46 @@
double-to-long v7, v7
# Prefer the first syllable time
const-string v6, "syllabus"
invoke-virtual {v4, v6}, Lorg/json/JSONObject;->optJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;
move-result-object v6
if-eqz v6, :no_syl
invoke-virtual {v6}, Lorg/json/JSONArray;->length()I
move-result v9
if-eqz v9, :no_syl
const/4 v9, 0x0
invoke-virtual {v6, v9}, Lorg/json/JSONArray;->optJSONObject(I)Lorg/json/JSONObject;
move-result-object v6
if-eqz v6, :no_syl
const-string v9, "time"
const-wide/16 v11, -0x1
invoke-virtual {v6, v9, v11, v12}, Lorg/json/JSONObject;->optLong(Ljava/lang/String;J)J
move-result-wide v11
const-wide/16 v9, 0x0
cmp-long v6, v11, v9
if-ltz v6, :no_syl
move-wide v7, v11
:no_syl
new-instance v4, Lcom/tidal/android/feature/playerscreen/ui/f;
invoke-direct {v4, v5, v7, v8}, Lcom/tidal/android/feature/playerscreen/ui/f;-><init>(Ljava/lang/String;J)V