.class public Lio/flutter/embedding/engine/FlutterJNI; .super Ljava/lang/Object; .source "FlutterJNI.java" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lio/flutter/embedding/engine/FlutterJNI$AsyncWaitForVsyncDelegate;, Lio/flutter/embedding/engine/FlutterJNI$AccessibilityDelegate;, Lio/flutter/embedding/engine/FlutterJNI$Factory; } .end annotation # static fields .field private static final TAG:Ljava/lang/String; = "FlutterJNI" .field private static asyncWaitForVsyncDelegate:Lio/flutter/embedding/engine/FlutterJNI$AsyncWaitForVsyncDelegate; = null .field private static displayDensity:F = -1.0f .field private static displayHeight:F = -1.0f .field private static displayWidth:F = -1.0f .field private static initCalled:Z = false .field private static loadLibraryCalled:Z = false .field private static prefetchDefaultFontManagerCalled:Z = false .field private static refreshRateFPS:F = 60.0f .field private static vmServiceUri:Ljava/lang/String; # instance fields .field private accessibilityDelegate:Lio/flutter/embedding/engine/FlutterJNI$AccessibilityDelegate; .field private deferredComponentManager:Lio/flutter/embedding/engine/deferredcomponents/DeferredComponentManager; .field private final engineLifecycleListeners:Ljava/util/Set; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/Set<", "Lio/flutter/embedding/engine/FlutterEngine$EngineLifecycleListener;", ">;" } .end annotation .end field .field private final flutterUiDisplayListeners:Ljava/util/Set; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/Set<", "Lio/flutter/embedding/engine/renderer/FlutterUiDisplayListener;", ">;" } .end annotation .end field .field private localizationPlugin:Lio/flutter/plugin/localization/LocalizationPlugin; .field private final mainLooper:Landroid/os/Looper; .field private nativeShellHolderId:Ljava/lang/Long; .field private platformMessageHandler:Lio/flutter/embedding/engine/dart/PlatformMessageHandler; .field private platformViewsController:Lio/flutter/plugin/platform/PlatformViewsController; .field private shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; # direct methods .method static constructor ()V .locals 0 return-void .end method .method public constructor ()V .locals 1 .line 114 invoke-direct {p0}, Ljava/lang/Object;->()V .line 111 new-instance v0, Ljava/util/concurrent/locks/ReentrantReadWriteLock; invoke-direct {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->()V iput-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; .line 392 new-instance v0, Ljava/util/concurrent/CopyOnWriteArraySet; invoke-direct {v0}, Ljava/util/concurrent/CopyOnWriteArraySet;->()V iput-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->engineLifecycleListeners:Ljava/util/Set; .line 395 new-instance v0, Ljava/util/concurrent/CopyOnWriteArraySet; invoke-direct {v0}, Ljava/util/concurrent/CopyOnWriteArraySet;->()V iput-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->flutterUiDisplayListeners:Ljava/util/Set; .line 117 invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper; move-result-object v0 iput-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->mainLooper:Landroid/os/Looper; return-void .end method .method private static asyncWaitForVsync(J)V .locals 1 sget-object v0, Lio/flutter/embedding/engine/FlutterJNI;->asyncWaitForVsyncDelegate:Lio/flutter/embedding/engine/FlutterJNI$AsyncWaitForVsyncDelegate; if-eqz v0, :cond_0 .line 323 invoke-interface {v0, p0, p1}, Lio/flutter/embedding/engine/FlutterJNI$AsyncWaitForVsyncDelegate;->asyncWaitForVsync(J)V return-void .line 325 :cond_0 new-instance p0, Ljava/lang/IllegalStateException; const-string p1, "An AsyncWaitForVsyncDelegate must be registered with FlutterJNI before asyncWaitForVsync() is invoked." invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p0 .end method .method public static decodeImage(Ljava/nio/ByteBuffer;J)Landroid/graphics/Bitmap; .locals 1 .line 557 invoke-static {p0}, Landroid/graphics/ImageDecoder;->createSource(Ljava/nio/ByteBuffer;)Landroid/graphics/ImageDecoder$Source; move-result-object p0 .line 559 :try_start_0 new-instance v0, Lio/flutter/embedding/engine/FlutterJNI$$ExternalSyntheticLambda0; invoke-direct {v0, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI$$ExternalSyntheticLambda0;->(J)V invoke-static {p0, v0}, Landroid/graphics/ImageDecoder;->decodeBitmap(Landroid/graphics/ImageDecoder$Source;Landroid/graphics/ImageDecoder$OnHeaderDecodedListener;)Landroid/graphics/Bitmap; move-result-object p0 :try_end_0 .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0 return-object p0 :catch_0 move-exception p0 const-string p1, "FlutterJNI" const-string p2, "Failed to decode image" .line 574 invoke-static {p1, p2, p0}, Lio/flutter/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V const/4 p0, 0x0 return-object p0 .end method .method private ensureAttachedToNative()V .locals 1 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; if-eqz p0, :cond_0 return-void .line 514 :cond_0 new-instance p0, Ljava/lang/RuntimeException; const-string v0, "Cannot execute operation because FlutterJNI is not attached to native." invoke-direct {p0, v0}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p0 .end method .method private ensureNotAttachedToNative()V .locals 1 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; if-nez p0, :cond_0 return-void .line 507 :cond_0 new-instance p0, Ljava/lang/RuntimeException; const-string v0, "Cannot execute operation because FlutterJNI is attached to native." invoke-direct {p0, v0}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p0 .end method .method private ensureRunningOnMainThread()V .locals 2 .line 1494 invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper; move-result-object v0 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->mainLooper:Landroid/os/Looper; if-ne v0, p0, :cond_0 return-void .line 1495 :cond_0 new-instance p0, Ljava/lang/RuntimeException; new-instance v0, Ljava/lang/StringBuilder; const-string v1, "Methods marked with @UiThread must be executed on the main thread. Current thread: " invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V .line 1497 invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object v1 invoke-virtual {v1}, Ljava/lang/Thread;->getName()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-direct {p0, v0}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p0 .end method .method public static getObservatoryUri()Ljava/lang/String; .locals 1 .annotation runtime Ljava/lang/Deprecated; .end annotation sget-object v0, Lio/flutter/embedding/engine/FlutterJNI;->vmServiceUri:Ljava/lang/String; return-object v0 .end method .method public static getVMServiceUri()Ljava/lang/String; .locals 1 sget-object v0, Lio/flutter/embedding/engine/FlutterJNI;->vmServiceUri:Ljava/lang/String; return-object v0 .end method .method private handlePlatformMessageResponse(ILjava/nio/ByteBuffer;)V .locals 0 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->platformMessageHandler:Lio/flutter/embedding/engine/dart/PlatformMessageHandler; if-eqz p0, :cond_0 .line 1071 invoke-interface {p0, p1, p2}, Lio/flutter/embedding/engine/dart/PlatformMessageHandler;->handlePlatformMessageResponse(ILjava/nio/ByteBuffer;)V :cond_0 return-void .end method .method static synthetic lambda$decodeImage$0(JLandroid/graphics/ImageDecoder;Landroid/graphics/ImageDecoder$ImageInfo;Landroid/graphics/ImageDecoder$Source;)V .locals 0 .line 563 sget-object p4, Landroid/graphics/ColorSpace$Named;->SRGB:Landroid/graphics/ColorSpace$Named; invoke-static {p4}, Landroid/graphics/ColorSpace;->get(Landroid/graphics/ColorSpace$Named;)Landroid/graphics/ColorSpace; move-result-object p4 invoke-virtual {p2, p4}, Landroid/graphics/ImageDecoder;->setTargetColorSpace(Landroid/graphics/ColorSpace;)V const/4 p4, 0x1 .line 568 invoke-virtual {p2, p4}, Landroid/graphics/ImageDecoder;->setAllocator(I)V .line 570 invoke-virtual {p3}, Landroid/graphics/ImageDecoder$ImageInfo;->getSize()Landroid/util/Size; move-result-object p2 .line 571 invoke-virtual {p2}, Landroid/util/Size;->getWidth()I move-result p3 invoke-virtual {p2}, Landroid/util/Size;->getHeight()I move-result p2 invoke-static {p0, p1, p3, p2}, Lio/flutter/embedding/engine/FlutterJNI;->nativeImageHeaderCallback(JII)V return-void .end method .method private native nativeAttach(Lio/flutter/embedding/engine/FlutterJNI;)J .end method .method private native nativeCleanupMessageData(J)V .end method .method private native nativeDeferredComponentInstallFailure(ILjava/lang/String;Z)V .end method .method private native nativeDestroy(J)V .end method .method private native nativeDispatchEmptyPlatformMessage(JLjava/lang/String;I)V .end method .method private native nativeDispatchPlatformMessage(JLjava/lang/String;Ljava/nio/ByteBuffer;II)V .end method .method private native nativeDispatchPointerDataPacket(JLjava/nio/ByteBuffer;I)V .end method .method private native nativeDispatchSemanticsAction(JIILjava/nio/ByteBuffer;I)V .end method .method private native nativeFlutterTextUtilsIsEmoji(I)Z .end method .method private native nativeFlutterTextUtilsIsEmojiModifier(I)Z .end method .method private native nativeFlutterTextUtilsIsEmojiModifierBase(I)Z .end method .method private native nativeFlutterTextUtilsIsRegionalIndicator(I)Z .end method .method private native nativeFlutterTextUtilsIsVariationSelector(I)Z .end method .method private native nativeGetBitmap(J)Landroid/graphics/Bitmap; .end method .method private native nativeGetIsSoftwareRenderingEnabled()Z .end method .method public static native nativeImageHeaderCallback(JII)V .end method .method private static native nativeInit(Landroid/content/Context;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V .end method .method private native nativeInvokePlatformMessageEmptyResponseCallback(JI)V .end method .method private native nativeInvokePlatformMessageResponseCallback(JILjava/nio/ByteBuffer;I)V .end method .method private native nativeLoadDartDeferredLibrary(JI[Ljava/lang/String;)V .end method .method public static native nativeLookupCallbackInformation(J)Lio/flutter/view/FlutterCallbackInformation; .annotation runtime Ljava/lang/Deprecated; .end annotation .end method .method private native nativeMarkTextureFrameAvailable(JJ)V .end method .method private native nativeNotifyLowMemoryWarning(J)V .end method .method private native nativeOnVsync(JJJ)V .end method .method private static native nativePrefetchDefaultFontManager()V .end method .method private native nativeRegisterImageTexture(JJLjava/lang/ref/WeakReference;)V .annotation system Ldalvik/annotation/Signature; value = { "(JJ", "Ljava/lang/ref/WeakReference<", "Lio/flutter/view/TextureRegistry$ImageConsumer;", ">;)V" } .end annotation .end method .method private native nativeRegisterTexture(JJLjava/lang/ref/WeakReference;)V .annotation system Ldalvik/annotation/Signature; value = { "(JJ", "Ljava/lang/ref/WeakReference<", "Lio/flutter/embedding/engine/renderer/SurfaceTextureWrapper;", ">;)V" } .end annotation .end method .method private native nativeRunBundleAndSnapshotFromLibrary(JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/res/AssetManager;Ljava/util/List;)V .annotation system Ldalvik/annotation/Signature; value = { "(J", "Ljava/lang/String;", "Ljava/lang/String;", "Ljava/lang/String;", "Landroid/content/res/AssetManager;", "Ljava/util/List<", "Ljava/lang/String;", ">;)V" } .end annotation .end method .method private native nativeSetAccessibilityFeatures(JI)V .end method .method private native nativeSetIsRenderingToImageView(JZ)V .end method .method private native nativeSetSemanticsEnabled(JZ)V .end method .method private native nativeSetViewportMetrics(JFIIIIIIIIIIIIIII[I[I[I)V .end method .method private native nativeSpawn(JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lio/flutter/embedding/engine/FlutterJNI; .annotation system Ldalvik/annotation/Signature; value = { "(J", "Ljava/lang/String;", "Ljava/lang/String;", "Ljava/lang/String;", "Ljava/util/List<", "Ljava/lang/String;", ">;)", "Lio/flutter/embedding/engine/FlutterJNI;" } .end annotation .end method .method private native nativeSurfaceChanged(JII)V .end method .method private native nativeSurfaceCreated(JLandroid/view/Surface;)V .end method .method private native nativeSurfaceDestroyed(J)V .end method .method private native nativeSurfaceWindowChanged(JLandroid/view/Surface;)V .end method .method private native nativeUnregisterTexture(JJ)V .end method .method private native nativeUpdateDisplayMetrics(J)V .end method .method private native nativeUpdateJavaAssetManager(JLandroid/content/res/AssetManager;Ljava/lang/String;)V .end method .method private native nativeUpdateRefreshRate(F)V .end method .method private onPreEngineRestart()V .locals 1 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->engineLifecycleListeners:Ljava/util/Set; .line 1200 invoke-interface {p0}, Ljava/util/Set;->iterator()Ljava/util/Iterator; move-result-object p0 :goto_0 invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result v0 if-eqz v0, :cond_0 invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v0 check-cast v0, Lio/flutter/embedding/engine/FlutterEngine$EngineLifecycleListener; .line 1201 invoke-interface {v0}, Lio/flutter/embedding/engine/FlutterEngine$EngineLifecycleListener;->onPreEngineRestart()V goto :goto_0 :cond_0 return-void .end method .method private updateCustomAccessibilityActions(Ljava/nio/ByteBuffer;[Ljava/lang/String;)V .locals 0 .line 824 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->accessibilityDelegate:Lio/flutter/embedding/engine/FlutterJNI$AccessibilityDelegate; if-eqz p0, :cond_0 .line 826 invoke-interface {p0, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI$AccessibilityDelegate;->updateCustomAccessibilityActions(Ljava/nio/ByteBuffer;[Ljava/lang/String;)V :cond_0 return-void .end method .method private updateSemantics(Ljava/nio/ByteBuffer;[Ljava/lang/String;[Ljava/nio/ByteBuffer;)V .locals 0 .line 803 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->accessibilityDelegate:Lio/flutter/embedding/engine/FlutterJNI$AccessibilityDelegate; if-eqz p0, :cond_0 .line 805 invoke-interface {p0, p1, p2, p3}, Lio/flutter/embedding/engine/FlutterJNI$AccessibilityDelegate;->updateSemantics(Ljava/nio/ByteBuffer;[Ljava/lang/String;[Ljava/nio/ByteBuffer;)V :cond_0 return-void .end method # virtual methods .method public SetIsRenderingToImageView(Z)V .locals 2 iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 747 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeSetIsRenderingToImageView(JZ)V return-void .end method .method public addEngineLifecycleListener(Lio/flutter/embedding/engine/FlutterEngine$EngineLifecycleListener;)V .locals 0 .line 1182 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->engineLifecycleListeners:Ljava/util/Set; .line 1183 invoke-interface {p0, p1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z return-void .end method .method public addIsDisplayingFlutterUiListener(Lio/flutter/embedding/engine/renderer/FlutterUiDisplayListener;)V .locals 0 .line 528 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->flutterUiDisplayListeners:Ljava/util/Set; .line 529 invoke-interface {p0, p1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z return-void .end method .method public attachToNative()V .locals 2 .line 418 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 419 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureNotAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; .line 420 invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; move-result-object v0 invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->lock()V .line 422 :try_start_0 invoke-virtual {p0, p0}, Lio/flutter/embedding/engine/FlutterJNI;->performNativeAttach(Lio/flutter/embedding/engine/FlutterJNI;)J move-result-wide v0 invoke-static {v0, v1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; move-result-object v0 iput-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; .line 424 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; move-result-object p0 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V return-void :catchall_0 move-exception v0 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; move-result-object p0 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V .line 425 throw v0 .end method .method public cleanupMessageData(J)V .locals 0 .line 1045 invoke-direct {p0, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI;->nativeCleanupMessageData(J)V return-void .end method .method public computePlatformResolvedLocale([Ljava/lang/String;)[Ljava/lang/String; .locals 8 iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->localizationPlugin:Lio/flutter/plugin/localization/LocalizationPlugin; const/4 v1, 0x0 if-nez v0, :cond_0 new-array p0, v1, [Ljava/lang/String; return-object p0 .line 1277 :cond_0 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V move v2, v1 .line 1279 :goto_0 array-length v3, p1 if-ge v2, v3, :cond_4 .line 1280 aget-object v3, p1, v2 add-int/lit8 v4, v2, 0x1 .line 1281 aget-object v4, p1, v4 add-int/lit8 v5, v2, 0x2 .line 1282 aget-object v5, p1, v5 .line 1285 new-instance v6, Ljava/util/Locale$Builder; invoke-direct {v6}, Ljava/util/Locale$Builder;->()V .line 1286 invoke-virtual {v3}, Ljava/lang/String;->isEmpty()Z move-result v7 if-nez v7, :cond_1 .line 1287 invoke-virtual {v6, v3}, Ljava/util/Locale$Builder;->setLanguage(Ljava/lang/String;)Ljava/util/Locale$Builder; .line 1289 :cond_1 invoke-virtual {v4}, Ljava/lang/String;->isEmpty()Z move-result v3 if-nez v3, :cond_2 .line 1290 invoke-virtual {v6, v4}, Ljava/util/Locale$Builder;->setRegion(Ljava/lang/String;)Ljava/util/Locale$Builder; .line 1292 :cond_2 invoke-virtual {v5}, Ljava/lang/String;->isEmpty()Z move-result v3 if-nez v3, :cond_3 .line 1293 invoke-virtual {v6, v5}, Ljava/util/Locale$Builder;->setScript(Ljava/lang/String;)Ljava/util/Locale$Builder; .line 1295 :cond_3 invoke-virtual {v6}, Ljava/util/Locale$Builder;->build()Ljava/util/Locale; move-result-object v3 invoke-interface {v0, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z add-int/lit8 v2, v2, 0x3 goto :goto_0 :cond_4 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->localizationPlugin:Lio/flutter/plugin/localization/LocalizationPlugin; .line 1302 invoke-virtual {p0, v0}, Lio/flutter/plugin/localization/LocalizationPlugin;->resolveNativeLocale(Ljava/util/List;)Ljava/util/Locale; move-result-object p0 if-nez p0, :cond_5 new-array p0, v1, [Ljava/lang/String; return-object p0 :cond_5 const/4 p1, 0x3 new-array p1, p1, [Ljava/lang/String; .line 1308 invoke-virtual {p0}, Ljava/util/Locale;->getLanguage()Ljava/lang/String; move-result-object v0 aput-object v0, p1, v1 .line 1309 invoke-virtual {p0}, Ljava/util/Locale;->getCountry()Ljava/lang/String; move-result-object v0 const/4 v1, 0x1 aput-object v0, p1, v1 .line 1311 invoke-virtual {p0}, Ljava/util/Locale;->getScript()Ljava/lang/String; move-result-object p0 const/4 v0, 0x2 aput-object p0, p1, v0 return-object p1 .end method .method public createOverlaySurface()Lio/flutter/embedding/engine/FlutterOverlaySurface; .locals 1 .line 1241 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->platformViewsController:Lio/flutter/plugin/platform/PlatformViewsController; if-eqz p0, :cond_0 .line 1246 invoke-virtual {p0}, Lio/flutter/plugin/platform/PlatformViewsController;->createOverlaySurface()Lio/flutter/embedding/engine/FlutterOverlaySurface; move-result-object p0 return-object p0 .line 1243 :cond_0 new-instance p0, Ljava/lang/RuntimeException; const-string v0, "platformViewsController must be set before attempting to position an overlay surface" invoke-direct {p0, v0}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p0 .end method .method public deferredComponentInstallFailure(ILjava/lang/String;Z)V .locals 0 .line 1437 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 1438 invoke-direct {p0, p1, p2, p3}, Lio/flutter/embedding/engine/FlutterJNI;->nativeDeferredComponentInstallFailure(ILjava/lang/String;Z)V return-void .end method .method public destroyOverlaySurfaces()V .locals 1 .line 1252 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->platformViewsController:Lio/flutter/plugin/platform/PlatformViewsController; if-eqz p0, :cond_0 .line 1257 invoke-virtual {p0}, Lio/flutter/plugin/platform/PlatformViewsController;->destroyOverlaySurfaces()V return-void .line 1254 :cond_0 new-instance p0, Ljava/lang/RuntimeException; const-string v0, "platformViewsController must be set before attempting to destroy an overlay surface" invoke-direct {p0, v0}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p0 .end method .method public detachFromNativeAndReleaseResources()V .locals 2 .line 492 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 493 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; .line 494 invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; move-result-object v0 invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->lock()V :try_start_0 iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 496 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeDestroy(J)V const/4 v0, 0x0 iput-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; .line 499 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; move-result-object p0 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V return-void :catchall_0 move-exception v0 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->writeLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock; move-result-object p0 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;->unlock()V .line 500 throw v0 .end method .method public dispatchEmptyPlatformMessage(Ljava/lang/String;I)V .locals 2 .line 1083 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 1084 invoke-virtual {p0}, Lio/flutter/embedding/engine/FlutterJNI;->isAttached()Z move-result v0 if-eqz v0, :cond_0 iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 1085 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI;->nativeDispatchEmptyPlatformMessage(JLjava/lang/String;I)V goto :goto_0 .line 1087 :cond_0 new-instance p0, Ljava/lang/StringBuilder; const-string v0, "Tried to send a platform message to Flutter, but FlutterJNI was detached from native C++. Could not send. Channel: " invoke-direct {p0, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p0 const-string p1, ". Response ID: " invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p0 invoke-virtual {p0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p0 invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 const-string p1, "FlutterJNI" invoke-static {p1, p0}, Lio/flutter/Log;->w(Ljava/lang/String;Ljava/lang/String;)V :goto_0 return-void .end method .method public dispatchPlatformMessage(Ljava/lang/String;Ljava/nio/ByteBuffer;II)V .locals 8 .line 1104 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 1105 invoke-virtual {p0}, Lio/flutter/embedding/engine/FlutterJNI;->isAttached()Z move-result v0 if-eqz v0, :cond_0 iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 1106 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v2 move-object v1, p0 move-object v4, p1 move-object v5, p2 move v6, p3 move v7, p4 invoke-direct/range {v1 .. v7}, Lio/flutter/embedding/engine/FlutterJNI;->nativeDispatchPlatformMessage(JLjava/lang/String;Ljava/nio/ByteBuffer;II)V goto :goto_0 .line 1108 :cond_0 new-instance p0, Ljava/lang/StringBuilder; const-string p2, "Tried to send a platform message to Flutter, but FlutterJNI was detached from native C++. Could not send. Channel: " invoke-direct {p0, p2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p0 const-string p1, ". Response ID: " invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p0 invoke-virtual {p0, p4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p0 invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 const-string p1, "FlutterJNI" invoke-static {p1, p0}, Lio/flutter/Log;->w(Ljava/lang/String;Ljava/lang/String;)V :goto_0 return-void .end method .method public dispatchPointerDataPacket(Ljava/nio/ByteBuffer;I)V .locals 2 .line 758 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 759 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 760 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI;->nativeDispatchPointerDataPacket(JLjava/nio/ByteBuffer;I)V return-void .end method .method public dispatchSemanticsAction(IILjava/nio/ByteBuffer;I)V .locals 8 .line 862 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 863 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 864 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v2 move-object v1, p0 move v4, p1 move v5, p2 move-object v6, p3 move v7, p4 invoke-direct/range {v1 .. v7}, Lio/flutter/embedding/engine/FlutterJNI;->nativeDispatchSemanticsAction(JIILjava/nio/ByteBuffer;I)V return-void .end method .method public dispatchSemanticsAction(ILio/flutter/view/AccessibilityBridge$Action;)V .locals 1 const/4 v0, 0x0 .line 834 invoke-virtual {p0, p1, p2, v0}, Lio/flutter/embedding/engine/FlutterJNI;->dispatchSemanticsAction(ILio/flutter/view/AccessibilityBridge$Action;Ljava/lang/Object;)V return-void .end method .method public dispatchSemanticsAction(ILio/flutter/view/AccessibilityBridge$Action;Ljava/lang/Object;)V .locals 1 .line 840 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V if-eqz p3, :cond_0 .line 845 sget-object v0, Lio/flutter/plugin/common/StandardMessageCodec;->INSTANCE:Lio/flutter/plugin/common/StandardMessageCodec; invoke-virtual {v0, p3}, Lio/flutter/plugin/common/StandardMessageCodec;->encodeMessage(Ljava/lang/Object;)Ljava/nio/ByteBuffer; move-result-object p3 .line 846 invoke-virtual {p3}, Ljava/nio/ByteBuffer;->position()I move-result v0 goto :goto_0 :cond_0 const/4 p3, 0x0 const/4 v0, 0x0 .line 848 :goto_0 iget p2, p2, Lio/flutter/view/AccessibilityBridge$Action;->value:I invoke-virtual {p0, p1, p2, p3, v0}, Lio/flutter/embedding/engine/FlutterJNI;->dispatchSemanticsAction(IILjava/nio/ByteBuffer;I)V return-void .end method .method public getBitmap()Landroid/graphics/Bitmap; .locals 2 .line 1469 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 1470 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 1471 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeGetBitmap(J)Landroid/graphics/Bitmap; move-result-object p0 return-object p0 .end method .method public getIsSoftwareRenderingEnabled()Z .locals 0 .line 238 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->nativeGetIsSoftwareRenderingEnabled()Z move-result p0 return p0 .end method .method public getScaledFontSize(FI)F .locals 0 .line 1321 invoke-static {p2}, Lio/flutter/embedding/engine/systemchannels/SettingsChannel;->getPastDisplayMetrics(I)Landroid/util/DisplayMetrics; move-result-object p0 if-nez p0, :cond_0 .line 1323 new-instance p0, Ljava/lang/StringBuilder; const-string p1, "getScaledFontSize called with configurationId " invoke-direct {p0, p1}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V .line 1326 invoke-static {p2}, Ljava/lang/String;->valueOf(I)Ljava/lang/String; move-result-object p1 invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p0 const-string p1, ", which can\'t be found." invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p0 invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 const-string p1, "FlutterJNI" .line 1323 invoke-static {p1, p0}, Lio/flutter/Log;->e(Ljava/lang/String;Ljava/lang/String;)V const/high16 p0, -0x40800000 # -1.0f return p0 :cond_0 const/4 p2, 0x2 .line 1330 invoke-static {p2, p1, p0}, Landroid/util/TypedValue;->applyDimension(IFLandroid/util/DisplayMetrics;)F move-result p1 iget p0, p0, Landroid/util/DisplayMetrics;->density:F div-float/2addr p1, p0 return p1 .end method .method public handlePlatformMessage(Ljava/lang/String;Ljava/nio/ByteBuffer;IJ)V .locals 6 iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->platformMessageHandler:Lio/flutter/embedding/engine/dart/PlatformMessageHandler; if-eqz v0, :cond_0 move-object v1, p1 move-object v2, p2 move v3, p3 move-wide v4, p4 .line 1058 invoke-interface/range {v0 .. v5}, Lio/flutter/embedding/engine/dart/PlatformMessageHandler;->handleMessageFromDart(Ljava/lang/String;Ljava/nio/ByteBuffer;IJ)V goto :goto_0 .line 1060 :cond_0 invoke-direct {p0, p4, p5}, Lio/flutter/embedding/engine/FlutterJNI;->nativeCleanupMessageData(J)V :goto_0 return-void .end method .method public init(Landroid/content/Context;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V .locals 1 sget-boolean p0, Lio/flutter/embedding/engine/FlutterJNI;->initCalled:Z if-eqz p0, :cond_0 const-string p0, "FlutterJNI" const-string v0, "FlutterJNI.init called more than once" .line 200 invoke-static {p0, v0}, Lio/flutter/Log;->w(Ljava/lang/String;Ljava/lang/String;)V .line 203 :cond_0 invoke-static/range {p1 .. p7}, Lio/flutter/embedding/engine/FlutterJNI;->nativeInit(Landroid/content/Context;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;J)V const/4 p0, 0x1 sput-boolean p0, Lio/flutter/embedding/engine/FlutterJNI;->initCalled:Z return-void .end method .method public invokePlatformMessageEmptyResponseCallback(I)V .locals 3 const-string v0, "Tried to send a platform message response, but FlutterJNI was detached from native C++. Could not send. Response ID: " iget-object v1, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; .line 1128 invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; move-result-object v1 invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->lock()V .line 1130 :try_start_0 invoke-virtual {p0}, Lio/flutter/embedding/engine/FlutterJNI;->isAttached()Z move-result v1 if-eqz v1, :cond_0 iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 1131 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeInvokePlatformMessageEmptyResponseCallback(JI)V goto :goto_0 :cond_0 const-string v1, "FlutterJNI" .line 1133 new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-static {v1, p1}, Lio/flutter/Log;->w(Ljava/lang/String;Ljava/lang/String;)V :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 :goto_0 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; .line 1139 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; move-result-object p0 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V return-void :catchall_0 move-exception p1 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; move-result-object p0 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V .line 1140 throw p1 .end method .method public invokePlatformMessageResponseCallback(ILjava/nio/ByteBuffer;I)V .locals 7 const-string v0, "Tried to send a platform message response, but FlutterJNI was detached from native C++. Could not send. Response ID: " .line 1151 invoke-virtual {p2}, Ljava/nio/ByteBuffer;->isDirect()Z move-result v1 if-eqz v1, :cond_1 iget-object v1, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; .line 1154 invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; move-result-object v1 invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->lock()V .line 1156 :try_start_0 invoke-virtual {p0}, Lio/flutter/embedding/engine/FlutterJNI;->isAttached()Z move-result v1 if-eqz v1, :cond_0 iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 1158 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v2 move-object v1, p0 move v4, p1 move-object v5, p2 move v6, p3 .line 1157 invoke-direct/range {v1 .. v6}, Lio/flutter/embedding/engine/FlutterJNI;->nativeInvokePlatformMessageResponseCallback(JILjava/nio/ByteBuffer;I)V goto :goto_0 :cond_0 const-string p2, "FlutterJNI" .line 1160 new-instance p3, Ljava/lang/StringBuilder; invoke-direct {p3, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p3, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-static {p2, p1}, Lio/flutter/Log;->w(Ljava/lang/String;Ljava/lang/String;)V :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 :goto_0 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; .line 1166 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; move-result-object p0 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V return-void :catchall_0 move-exception p1 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->shellHolderLock:Ljava/util/concurrent/locks/ReentrantReadWriteLock; invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock;->readLock()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock; move-result-object p0 invoke-virtual {p0}, Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;->unlock()V .line 1167 throw p1 .line 1152 :cond_1 new-instance p0, Ljava/lang/IllegalArgumentException; const-string p1, "Expected a direct ByteBuffer." invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p0 .end method .method public isAttached()Z .locals 0 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; if-eqz p0, :cond_0 const/4 p0, 0x1 goto :goto_0 :cond_0 const/4 p0, 0x0 :goto_0 return p0 .end method .method public isCodePointEmoji(I)Z .locals 0 .line 352 invoke-direct {p0, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeFlutterTextUtilsIsEmoji(I)Z move-result p0 return p0 .end method .method public isCodePointEmojiModifier(I)Z .locals 0 .line 358 invoke-direct {p0, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeFlutterTextUtilsIsEmojiModifier(I)Z move-result p0 return p0 .end method .method public isCodePointEmojiModifierBase(I)Z .locals 0 .line 364 invoke-direct {p0, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeFlutterTextUtilsIsEmojiModifierBase(I)Z move-result p0 return p0 .end method .method public isCodePointRegionalIndicator(I)Z .locals 0 .line 376 invoke-direct {p0, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeFlutterTextUtilsIsRegionalIndicator(I)Z move-result p0 return p0 .end method .method public isCodePointVariantSelector(I)Z .locals 0 .line 370 invoke-direct {p0, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeFlutterTextUtilsIsVariationSelector(I)Z move-result p0 return p0 .end method .method public loadDartDeferredLibrary(I[Ljava/lang/String;)V .locals 2 .line 1388 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 1389 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 1390 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI;->nativeLoadDartDeferredLibrary(JI[Ljava/lang/String;)V return-void .end method .method public loadLibrary()V .locals 1 sget-boolean p0, Lio/flutter/embedding/engine/FlutterJNI;->loadLibraryCalled:Z if-eqz p0, :cond_0 const-string p0, "FlutterJNI" const-string v0, "FlutterJNI.loadLibrary called more than once" .line 142 invoke-static {p0, v0}, Lio/flutter/Log;->w(Ljava/lang/String;Ljava/lang/String;)V :cond_0 const-string p0, "flutter" .line 145 invoke-static {p0}, Ljava/lang/System;->loadLibrary(Ljava/lang/String;)V const/4 p0, 0x1 sput-boolean p0, Lio/flutter/embedding/engine/FlutterJNI;->loadLibraryCalled:Z return-void .end method .method public markTextureFrameAvailable(J)V .locals 2 .line 947 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 948 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 949 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI;->nativeMarkTextureFrameAvailable(JJ)V return-void .end method .method public notifyLowMemoryWarning()V .locals 2 .line 1486 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 1487 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 1488 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeNotifyLowMemoryWarning(J)V return-void .end method .method public onBeginFrame()V .locals 1 .line 1219 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->platformViewsController:Lio/flutter/plugin/platform/PlatformViewsController; if-eqz p0, :cond_0 .line 1224 invoke-virtual {p0}, Lio/flutter/plugin/platform/PlatformViewsController;->onBeginFrame()V return-void .line 1221 :cond_0 new-instance p0, Ljava/lang/RuntimeException; const-string v0, "platformViewsController must be set before attempting to begin the frame" invoke-direct {p0, v0}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p0 .end method .method public onDisplayOverlaySurface(IIIII)V .locals 6 .line 1208 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->platformViewsController:Lio/flutter/plugin/platform/PlatformViewsController; if-eqz v0, :cond_0 move v1, p1 move v2, p2 move v3, p3 move v4, p4 move v5, p5 .line 1213 invoke-virtual/range {v0 .. v5}, Lio/flutter/plugin/platform/PlatformViewsController;->onDisplayOverlaySurface(IIIII)V return-void .line 1210 :cond_0 new-instance p0, Ljava/lang/RuntimeException; const-string p1, "platformViewsController must be set before attempting to position an overlay surface" invoke-direct {p0, p1}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p0 .end method .method public onDisplayPlatformView(IIIIIIILio/flutter/embedding/engine/mutatorsstack/FlutterMutatorsStack;)V .locals 9 .line 1457 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V move-object v0, p0 iget-object v0, v0, Lio/flutter/embedding/engine/FlutterJNI;->platformViewsController:Lio/flutter/plugin/platform/PlatformViewsController; if-eqz v0, :cond_0 move v1, p1 move v2, p2 move v3, p3 move v4, p4 move v5, p5 move v6, p6 move/from16 v7, p7 move-object/from16 v8, p8 .line 1462 invoke-virtual/range {v0 .. v8}, Lio/flutter/plugin/platform/PlatformViewsController;->onDisplayPlatformView(IIIIIIILio/flutter/embedding/engine/mutatorsstack/FlutterMutatorsStack;)V return-void .line 1459 :cond_0 new-instance v0, Ljava/lang/RuntimeException; const-string v1, "platformViewsController must be set before attempting to position a platform view" invoke-direct {v0, v1}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw v0 .end method .method public onEndFrame()V .locals 1 .line 1230 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->platformViewsController:Lio/flutter/plugin/platform/PlatformViewsController; if-eqz p0, :cond_0 .line 1235 invoke-virtual {p0}, Lio/flutter/plugin/platform/PlatformViewsController;->onEndFrame()V return-void .line 1232 :cond_0 new-instance p0, Ljava/lang/RuntimeException; const-string v0, "platformViewsController must be set before attempting to end the frame" invoke-direct {p0, v0}, Ljava/lang/RuntimeException;->(Ljava/lang/String;)V throw p0 .end method .method public onFirstFrame()V .locals 1 .line 586 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->flutterUiDisplayListeners:Ljava/util/Set; .line 588 invoke-interface {p0}, Ljava/util/Set;->iterator()Ljava/util/Iterator; move-result-object p0 :goto_0 invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result v0 if-eqz v0, :cond_0 invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v0 check-cast v0, Lio/flutter/embedding/engine/renderer/FlutterUiDisplayListener; .line 589 invoke-interface {v0}, Lio/flutter/embedding/engine/renderer/FlutterUiDisplayListener;->onFlutterUiDisplayed()V goto :goto_0 :cond_0 return-void .end method .method onRenderingStopped()V .locals 1 .line 597 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->flutterUiDisplayListeners:Ljava/util/Set; .line 599 invoke-interface {p0}, Ljava/util/Set;->iterator()Ljava/util/Iterator; move-result-object p0 :goto_0 invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result v0 if-eqz v0, :cond_0 invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v0 check-cast v0, Lio/flutter/embedding/engine/renderer/FlutterUiDisplayListener; .line 600 invoke-interface {v0}, Lio/flutter/embedding/engine/renderer/FlutterUiDisplayListener;->onFlutterUiNoLongerDisplayed()V goto :goto_0 :cond_0 return-void .end method .method public onSurfaceChanged(II)V .locals 2 .line 646 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 647 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 648 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI;->nativeSurfaceChanged(JII)V return-void .end method .method public onSurfaceCreated(Landroid/view/Surface;)V .locals 2 .line 613 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 614 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 615 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeSurfaceCreated(JLandroid/view/Surface;)V return-void .end method .method public onSurfaceDestroyed()V .locals 2 .line 662 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 663 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V .line 664 invoke-virtual {p0}, Lio/flutter/embedding/engine/FlutterJNI;->onRenderingStopped()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 665 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeSurfaceDestroyed(J)V return-void .end method .method public onSurfaceWindowChanged(Landroid/view/Surface;)V .locals 2 .line 629 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 630 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 631 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeSurfaceWindowChanged(JLandroid/view/Surface;)V return-void .end method .method public onVsync(JJJ)V .locals 0 .line 341 invoke-direct/range {p0 .. p6}, Lio/flutter/embedding/engine/FlutterJNI;->nativeOnVsync(JJJ)V return-void .end method .method public performNativeAttach(Lio/flutter/embedding/engine/FlutterJNI;)J .locals 0 .line 430 invoke-direct {p0, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeAttach(Lio/flutter/embedding/engine/FlutterJNI;)J move-result-wide p0 return-wide p0 .end method .method public prefetchDefaultFontManager()V .locals 1 sget-boolean p0, Lio/flutter/embedding/engine/FlutterJNI;->prefetchDefaultFontManagerCalled:Z if-eqz p0, :cond_0 const-string p0, "FlutterJNI" const-string v0, "FlutterJNI.prefetchDefaultFontManager called more than once" .line 163 invoke-static {p0, v0}, Lio/flutter/Log;->w(Ljava/lang/String;Ljava/lang/String;)V .line 166 :cond_0 invoke-static {}, Lio/flutter/embedding/engine/FlutterJNI;->nativePrefetchDefaultFontManager()V const/4 p0, 0x1 sput-boolean p0, Lio/flutter/embedding/engine/FlutterJNI;->prefetchDefaultFontManagerCalled:Z return-void .end method .method public registerImageTexture(JLio/flutter/view/TextureRegistry$ImageConsumer;)V .locals 7 .line 925 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 926 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 928 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v2 new-instance v6, Ljava/lang/ref/WeakReference; invoke-direct {v6, p3}, Ljava/lang/ref/WeakReference;->(Ljava/lang/Object;)V move-object v1, p0 move-wide v4, p1 .line 927 invoke-direct/range {v1 .. v6}, Lio/flutter/embedding/engine/FlutterJNI;->nativeRegisterImageTexture(JJLjava/lang/ref/WeakReference;)V return-void .end method .method public registerTexture(JLio/flutter/embedding/engine/renderer/SurfaceTextureWrapper;)V .locals 7 .line 906 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 907 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 909 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v2 new-instance v6, Ljava/lang/ref/WeakReference; invoke-direct {v6, p3}, Ljava/lang/ref/WeakReference;->(Ljava/lang/Object;)V move-object v1, p0 move-wide v4, p1 .line 908 invoke-direct/range {v1 .. v6}, Lio/flutter/embedding/engine/FlutterJNI;->nativeRegisterTexture(JJLjava/lang/ref/WeakReference;)V return-void .end method .method public removeEngineLifecycleListener(Lio/flutter/embedding/engine/FlutterEngine$EngineLifecycleListener;)V .locals 0 .line 1193 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->engineLifecycleListeners:Ljava/util/Set; .line 1194 invoke-interface {p0, p1}, Ljava/util/Set;->remove(Ljava/lang/Object;)Z return-void .end method .method public removeIsDisplayingFlutterUiListener(Lio/flutter/embedding/engine/renderer/FlutterUiDisplayListener;)V .locals 0 .line 538 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->flutterUiDisplayListeners:Ljava/util/Set; .line 539 invoke-interface {p0, p1}, Ljava/util/Set;->remove(Ljava/lang/Object;)Z return-void .end method .method public requestDartDeferredLibrary(I)V .locals 1 iget-object p0, p0, Lio/flutter/embedding/engine/FlutterJNI;->deferredComponentManager:Lio/flutter/embedding/engine/deferredcomponents/DeferredComponentManager; if-eqz p0, :cond_0 const/4 v0, 0x0 .line 1361 invoke-interface {p0, p1, v0}, Lio/flutter/embedding/engine/deferredcomponents/DeferredComponentManager;->installDeferredComponent(ILjava/lang/String;)V goto :goto_0 :cond_0 const-string p0, "FlutterJNI" const-string p1, "No DeferredComponentManager found. Android setup must be completed before using split AOT deferred components." .line 1364 invoke-static {p0, p1}, Lio/flutter/Log;->e(Ljava/lang/String;Ljava/lang/String;)V :goto_0 return-void .end method .method public runBundleAndSnapshotFromLibrary(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/res/AssetManager;Ljava/util/List;)V .locals 9 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/String;", "Ljava/lang/String;", "Landroid/content/res/AssetManager;", "Ljava/util/List<", "Ljava/lang/String;", ">;)V" } .end annotation .line 982 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 983 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 985 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v2 move-object v1, p0 move-object v4, p1 move-object v5, p2 move-object v6, p3 move-object v7, p4 move-object v8, p5 .line 984 invoke-direct/range {v1 .. v8}, Lio/flutter/embedding/engine/FlutterJNI;->nativeRunBundleAndSnapshotFromLibrary(JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Landroid/content/res/AssetManager;Ljava/util/List;)V return-void .end method .method public setAccessibilityDelegate(Lio/flutter/embedding/engine/FlutterJNI$AccessibilityDelegate;)V .locals 0 .line 786 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iput-object p1, p0, Lio/flutter/embedding/engine/FlutterJNI;->accessibilityDelegate:Lio/flutter/embedding/engine/FlutterJNI$AccessibilityDelegate; return-void .end method .method public setAccessibilityFeatures(I)V .locals 2 .line 891 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 892 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 893 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeSetAccessibilityFeatures(JI)V return-void .end method .method public setAsyncWaitForVsyncDelegate(Lio/flutter/embedding/engine/FlutterJNI$AsyncWaitForVsyncDelegate;)V .locals 0 sput-object p1, Lio/flutter/embedding/engine/FlutterJNI;->asyncWaitForVsyncDelegate:Lio/flutter/embedding/engine/FlutterJNI$AsyncWaitForVsyncDelegate; return-void .end method .method public setDeferredComponentManager(Lio/flutter/embedding/engine/deferredcomponents/DeferredComponentManager;)V .locals 0 .line 1340 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iput-object p1, p0, Lio/flutter/embedding/engine/FlutterJNI;->deferredComponentManager:Lio/flutter/embedding/engine/deferredcomponents/DeferredComponentManager; if-eqz p1, :cond_0 .line 1343 invoke-interface {p1, p0}, Lio/flutter/embedding/engine/deferredcomponents/DeferredComponentManager;->setJNI(Lio/flutter/embedding/engine/FlutterJNI;)V :cond_0 return-void .end method .method public setLocalizationPlugin(Lio/flutter/plugin/localization/LocalizationPlugin;)V .locals 0 .line 1266 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iput-object p1, p0, Lio/flutter/embedding/engine/FlutterJNI;->localizationPlugin:Lio/flutter/plugin/localization/LocalizationPlugin; return-void .end method .method public setPlatformMessageHandler(Lio/flutter/embedding/engine/dart/PlatformMessageHandler;)V .locals 0 .line 1030 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iput-object p1, p0, Lio/flutter/embedding/engine/FlutterJNI;->platformMessageHandler:Lio/flutter/embedding/engine/dart/PlatformMessageHandler; return-void .end method .method public setPlatformViewsController(Lio/flutter/plugin/platform/PlatformViewsController;)V .locals 0 .line 769 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V iput-object p1, p0, Lio/flutter/embedding/engine/FlutterJNI;->platformViewsController:Lio/flutter/plugin/platform/PlatformViewsController; return-void .end method .method public setRefreshRateFPS(F)V .locals 0 sput p1, Lio/flutter/embedding/engine/FlutterJNI;->refreshRateFPS:F .line 283 invoke-virtual {p0}, Lio/flutter/embedding/engine/FlutterJNI;->updateRefreshRate()V return-void .end method .method public setSemanticsEnabled(Z)V .locals 2 .line 880 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 881 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 882 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1}, Lio/flutter/embedding/engine/FlutterJNI;->nativeSetSemanticsEnabled(JZ)V return-void .end method .method public setViewportMetrics(FIIIIIIIIIIIIIII[I[I[I)V .locals 22 move-object/from16 v0, p0 move/from16 v3, p1 move/from16 v4, p2 move/from16 v5, p3 move/from16 v6, p4 move/from16 v7, p5 move/from16 v8, p6 move/from16 v9, p7 move/from16 v10, p8 move/from16 v11, p9 move/from16 v12, p10 move/from16 v13, p11 move/from16 v14, p12 move/from16 v15, p13 move/from16 v16, p14 move/from16 v17, p15 move/from16 v18, p16 move-object/from16 v19, p17 move-object/from16 v20, p18 move-object/from16 v21, p19 .line 698 invoke-direct/range {p0 .. p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 699 invoke-direct/range {p0 .. p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V move-object/from16 v1, p0 iget-object v1, v1, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 701 invoke-virtual {v1}, Ljava/lang/Long;->longValue()J move-result-wide v1 .line 700 invoke-direct/range {v0 .. v21}, Lio/flutter/embedding/engine/FlutterJNI;->nativeSetViewportMetrics(JFIIIIIIIIIIIIIII[I[I[I)V return-void .end method .method public spawn(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lio/flutter/embedding/engine/FlutterJNI; .locals 8 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/String;", "Ljava/lang/String;", "Ljava/util/List<", "Ljava/lang/String;", ">;)", "Lio/flutter/embedding/engine/FlutterJNI;" } .end annotation .line 455 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 456 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 459 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v2 move-object v1, p0 move-object v4, p1 move-object v5, p2 move-object v6, p3 move-object v7, p4 .line 458 invoke-direct/range {v1 .. v7}, Lio/flutter/embedding/engine/FlutterJNI;->nativeSpawn(JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Lio/flutter/embedding/engine/FlutterJNI; move-result-object p0 .line 464 iget-object p1, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; if-eqz p1, :cond_0 .line 465 invoke-virtual {p1}, Ljava/lang/Long;->longValue()J move-result-wide p1 const-wide/16 p3, 0x0 cmp-long p1, p1, p3 if-eqz p1, :cond_0 const/4 p1, 0x1 goto :goto_0 :cond_0 const/4 p1, 0x0 :goto_0 const-string p2, "Failed to spawn new JNI connected shell from existing shell." .line 464 invoke-static {p1, p2}, Lio/flutter/util/Preconditions;->checkState(ZLjava/lang/Object;)V return-object p0 .end method .method public unregisterTexture(J)V .locals 2 .line 960 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 961 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 962 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI;->nativeUnregisterTexture(JJ)V return-void .end method .method public updateDisplayMetrics(IFFF)V .locals 0 sput p2, Lio/flutter/embedding/engine/FlutterJNI;->displayWidth:F sput p3, Lio/flutter/embedding/engine/FlutterJNI;->displayHeight:F sput p4, Lio/flutter/embedding/engine/FlutterJNI;->displayDensity:F sget-boolean p1, Lio/flutter/embedding/engine/FlutterJNI;->loadLibraryCalled:Z if-nez p1, :cond_0 return-void :cond_0 iget-object p1, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 293 invoke-virtual {p1}, Ljava/lang/Long;->longValue()J move-result-wide p1 invoke-direct {p0, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI;->nativeUpdateDisplayMetrics(J)V return-void .end method .method public updateJavaAssetManager(Landroid/content/res/AssetManager;Ljava/lang/String;)V .locals 2 .line 1409 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureRunningOnMainThread()V .line 1410 invoke-direct {p0}, Lio/flutter/embedding/engine/FlutterJNI;->ensureAttachedToNative()V iget-object v0, p0, Lio/flutter/embedding/engine/FlutterJNI;->nativeShellHolderId:Ljava/lang/Long; .line 1411 invoke-virtual {v0}, Ljava/lang/Long;->longValue()J move-result-wide v0 invoke-direct {p0, v0, v1, p1, p2}, Lio/flutter/embedding/engine/FlutterJNI;->nativeUpdateJavaAssetManager(JLandroid/content/res/AssetManager;Ljava/lang/String;)V return-void .end method .method public updateRefreshRate()V .locals 1 sget-boolean v0, Lio/flutter/embedding/engine/FlutterJNI;->loadLibraryCalled:Z if-nez v0, :cond_0 return-void :cond_0 sget v0, Lio/flutter/embedding/engine/FlutterJNI;->refreshRateFPS:F .line 302 invoke-direct {p0, v0}, Lio/flutter/embedding/engine/FlutterJNI;->nativeUpdateRefreshRate(F)V return-void .end method