如何判断应用是原生的还是flutter

问题描述 投票:0回答:8

我想知道给定的移动应用程序是原生的还是使用 flutter 编写的。有什么方法可以从构建文件(apk、ipa 等)中知道这一点。如何检测应用程序是原生应用程序还是 Flutter?

android flutter cross-platform
8个回答
11
投票

您可以通过以下方法查看应用程序是否使用 flutter,

  1. 解压apk文件。您只需将文件扩展名重命名为 .zip 并解压即可。
  2. 导航到 lib 文件夹。
  3. 您会找到不同架构的子文件夹列表。
  4. 子文件夹将包含一个 libflutter.so 文件。这个 libflutter.so 将出现在所有 flutter 应用程序中。

这是 Flutter Gallery 应用程序文件的屏幕截图。


4
投票

上传apk文件到http://www.javadecompilers.com/apk

如果您在源代码中发现一个文件夹 flutter 那么这个应用程序就是一个 flutter 应用程序


4
投票

可以通过启用布局边界从手机进行检查。如果应用程序显示所有组件的边界,那么它可能是使用原生 android 或 react native 开发的。尽管如此,在flutter的情况下,它直接从native端访问canvas并在上面绘制,因此不会因为直接使用canvas而显示组件周围的任何边界。

这是使用 Flutter 和原生或其他使用原生组件的框架工作制作的应用程序的 SS。

扑动
原生组件
.

2
投票

简单的解决方案:

  1. 瓷砖的激活:
  • 开发者选项开启
  • 快速设置开发者磁贴
  • 显示布局边界
  1. 打开应用程序,从屏幕顶部向下滑动并触摸图标布局以启用显示布局绑定。

  2. Flutter 应用不会显示 UI 的小块布局,但 Native 应用会。


2
投票

当然你可以通过解压APK找到。 但是还有一个简单的方法:

在您的设备上安装应用程序,然后打开它并在UI中检查列表或网格。

如果你觉得两指滚动时速度翻倍,而单指滚动时,那么应用是用Flutter开发的


1
投票
  1. 使用apktool下载并解码apk
java -jar apktool.*.jar d file.apk -o output
  1. 在文本编辑器中打开 AndroidManifest.xml

  2. 在文件中搜索 flutter 的出现

如果使用 vim,在终端提示符下,

vim +/flutter +"set hlsearch" AndroidManifest.xml

此类事件可能是 flutter 插件和负责将 flutter 集成到 Android 应用程序中的“flutterEmbedding”。


1
投票

我们可以做手指滚动测试。

首先用一根手指滚动应用程序,然后用两根手指。确保您以相同的速度滚动。如果滚动的速度随着你添加的每根手指而增加,那么它就是使用 Flutter 构建的。


0
投票

FlutterShark 应用程序(我自己开发的)可以帮助您确定应用程序是否使用 Flutter 构建。 以 Flutter Gallery 应用为例

  1. 首先在您的设备上安装 Flutter Gallery 应用程序。
  2. 在您的设备上安装 FlutterShark 应用程序。 https://play.google.com/store/apps/details?id=com.fluttershark.fluttersharkapp
  3. 打开 FlutterShark 应用程序。 Flutter Apps list FlutterShark 应用程序将能够列出您设备上使用 Flutter 构建的所有应用程序。 不仅如此,FlutterShark 应用程序将帮助您找到应用程序中使用的所有 Flutter 包。它有助于 Flutter 开发人员获得市场上 Flutter 应用程序的技术洞察力。 尽情享受 Flutter 吧!
© www.soinside.com 2019 - 2024. All rights reserved.