如何分别在android和ios上本地运行flutter应用程序?

Posted

技术标签:

【中文标题】如何分别在android和ios上本地运行flutter应用程序?【英文标题】:How to run flutter application natively on android and ios separately? 【发布时间】:2020-02-14 07:59:55 【问题描述】:

我正在开发 Flutter 应用程序,我希望该应用程序能够在没有 Flutter sdk 的情况下在 android studio 上本地加载和运行,以便我可以将本地 kotlin 或 java 的一些依赖项放在那里并从那里本地运行。

我从 Flutter 项目中复制了 android 文件夹并从中创建了一个新的原生 android 应用程序 enter image description here

【问题讨论】:

你试过在Android Studio中安装Flutter插件吗? 是的,我已经在 android studio 中安装了颤振插件。当我只在 android studio 中运行 android 版本时,我还附上了错误图片 【参考方案1】:

我也遇到过同样的问题,在研究了互联网之后,我知道有一种方法可以将我们的 Flutter 项目作为模块包含到 android 中,并且您可以使用 Flutter.createView 来加载您的 Flutter 小部件。就这么简单,你也可以跟着这个博客一步步指导

https://medium.com/flutter-community/add-flutter-to-existing-android-ios-app-ae8c4fb1582e

【讨论】:

感谢您的分享,本文展示了将现有的原生应用程序转换为颤振,但是如果我们想扭转这个过程,我们该如何做到这一点?比如如果我们有颤振项目并且我们想要包括第 3 个Flutter 上不可用的派对库,那么我们如何迁移到原生版本来添加这些依赖项。 你可以用android和ios创建cutome插件 flutterdevs.com/blog/….【参考方案2】:

您可以在 Android Studio 中打开 android 文件夹,在 Xcode 中打开 ios 文件夹。 Flutter 工具将为 Android Studio 项目生成所需的模块,为 iOS 项目生成 CocoaPods。您还可以使用这些 IDE 中的本机调试器 (Java/C/Objective-C/Swift) 运行和调试您的应用程序。

然后您可以通过更改您的android应用程序的build.gradle来轻松添加依赖项。我觉得 ios 有点复杂。

【讨论】:

是的,我这样做了,但是当我打开项目时,它在 gradle 中给出了同步错误。我还附上了上面有问题的错误图片 @Umair 您提到您复制了一个文件夹并从中创建了一个新项目。你不必这样做,你只需将它留在你的flutter项目的文件夹中,然后在AS中打开它 还要确保你的flutter项目以任何方式编译,例如,使用flutter run命令。检查您的 pubspec.yaml 是否良好。使用 File -> Invalidate Caches 重置 Android Studio 缓存,运行 flutter clean 命令,删除 flutter/bin/cache 文件夹。 如果我这样跑,那将是一个颤振的项目。我只想让它成为android项目,这就是为什么从flutter项目中复制android文件夹并在android studio中打开它。 您确定您在 AS 中打开的正是 android 文件夹,而不是项目文件夹本身吗?只有当你打开整个项目时,AS 才应该检测到 Flutter 项目。

以上是关于如何分别在android和ios上本地运行flutter应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Android 和 iOS 上运行或调试颤振项目?

Linphone 如何在 Android/iOS 上支持推送通知

我想用我的 android 手机作为模拟器在 windows 7 上运行颤振。在我的调试模式下进行了调整。如何解决颤振医生命令的问题

Cordova Local Notification 为 iOS 和 Android 播放本地声音

Android phonegap 应用程序在三星 Galaxy 设备上存在 SQlite 和本地存储问题

如何在 React Native 中实现 Google 地图以在 Web、Android 和 iOS 上运行?