问题标签 [flutter-add-to-app]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1625 浏览

ios - 如何让 setInitialRoute 在不同的视图上启动我的 Flutter iOS 应用程序?

在颤振中,我有这个:

在我的 iOS 代码中,我有这个:

为什么这不起作用?颤振代码只是加载初始视图,而不是我从“/Cards”路由中的视图。

0 投票
2 回答
812 浏览

android - 如何让 Flutter 模块在原生 Android Activity 启动二级路由后返回原生 Android Activity?

我正在向现有的 Android 项目添加颤振,一切正常,除了一件事:

我的 Android 项目只有一个 Flutter 模块。在那个 Flutter 模块中,我有两条路线将显示在 Android 项目的不同部分:

在 Android Activity 中,如果我用这个启动一个新的 Flutter 活动:

它将使用默认的页面路由 ( /) 启动 Flutter,这是预期的结果。然后在这个 Flutter 页面中,如果我导航回来,它将弹出 Flutter 引擎并导航回 Android Activity。目前一切都很好。

但是,如果我使用自定义初始路由启动 Flutter 活动,然后按下后退按钮,它不会弹出 Flutter 引擎并导航到 Android 活动,而是导航到初始 Flutter 路由(在本例中为/路由)。

如果我们在启动时指定初始路由,为什么会有这种行为FlutterActivity

如果这是预期的行为,那么让它导航到 Android 活动的最佳方法是什么?

0 投票
1 回答
1084 浏览

ios - 安装在颤振模块中的软件包未找到模块问题(添加到应用程序)

我已将颤振模块添加到现有的 iOS 应用程序中。在编译时,iOS 应用程序无法找到安装的所有包(通过 pubspec.yaml 文件),但我在 XCode 中出现“找不到模块”错误。到目前为止,这些有问题的包是:razorpay_flutter、google_maps_flutter、webview_flutter 和 url_launcher。请看下面的截图:

在此处输入图像描述

其他 3 个包的情况也是如此。

重现问题的步骤:

  1. razorpay_flutter: ^1.1.3在flutter模块的pubspec.yaml文件中添加
  2. 运行flutter pub get。该软件包将安装
  3. 运行添加了颤振模块的 Xcode 项目。有错误!

在第 2 步之后我观察到的另一件事是,有一些关于添加到现有应用程序的问题的警告:

我猜在添加到现有应用程序时使用平台通道/代码的包存在问题,但不确定是特定于包的问题还是添加到应用程序的颤振问题。

0 投票
1 回答
201 浏览

flutter - 如何在 Flutter 中添加 Deep Link 和 Universal Link 支持?

有什么方法可以添加对 Deep Link 和 Universal Link 的支持?

我想在我的应用程序中添加深度链接或通用链接支持,因此当用户单击链接时,他们会重定向到应用程序而不是网站。

0 投票
2 回答
3007 浏览

flutter - 无法让 Flutter Add to App 与插件一起使用

我有一个 Flutter 模块,我正在尝试将它添加到我的原生 Android 应用程序中。我已经尝试过 AAR 方法和源代码方法。

当我尝试构建 AAR 时,我运行flutter build aar命令。我得到一个很长的输出,但这似乎是错误消息:

但是,这确实构建了调试 aar,而不是发布。

当我尝试使用源代码构建我的应用程序时,我收到此错误:

通过将我的 settings.gradle 更新为以下内容,我设法通过了该错误消息:

通过阅读此问题https://github.com/flutter/flutter/issues/55077。这次我收到错误消息,说它找不到 Flutter 类。我尝试将 flutter.jar 添加到我的项目中,但这并没有什么不同。

任何帮助,将不胜感激。我整天都在做这件事,几乎没有想法。

这是我的颤振医生输出:

更新

我设法让它工作的唯一方法是降级到旧版本的 Flutter。我能够让它在 beta 频道 v1.14.6 上运行。这绝对不能解决任何问题,但至少我可以进行发布构建。

0 投票
3 回答
3874 浏览

ios - 为什么 webview_flutter 在添加到应用程序(iOS)的情况下不起作用?

所以我试图在单击按钮时打开一个简单的 web 视图。

这是我的 Scaffold 小部件的主体:

有趣的是,当我独立运行这个颤振项目时,它成功地在 iOS 模拟器中打开了 Webview。但是当我将这个颤振模块集成到现有的 iOS 应用程序中时,它不起作用(显示空白屏幕)。为了添加颤振模块,我遵循了这个链接,模块的其他部分工作正常。

我已经在颤振模块的 info.plist 中设置了这个:

我在pubspec.yaml文件中添加了以下版本:

0 投票
0 回答
539 浏览

flutter - FlutterEngine 导航通道 setInitialRoute 不起作用

我正在尝试在我的 iOS 本机应用程序中集成一个颤振模块,并希望根据用户在主屏幕上选择的选项打开不同的路线。

根据 Flutter文档,可以在 Flutter 引擎导航通道上调用初始路由,以便将其视为初始路由。

问题是,如果我在运行前尝试在预热的 Flutter 引擎上设置初始路由,它就不起作用。我总是在飞镖端将 defaultRouteName 设为“/”。我错过了什么吗?

0 投票
0 回答
434 浏览

flutter - Flutter引擎销毁问题

我已将颤振添加到现有的 android 应用程序中。使用预热颤振引擎。

当我破坏颤振引擎 FlutterEngineCache.getInstance().get(Constants.FLUTTER_ENGINE)?.destroy() 时,我收到以下错误。

0 投票
1 回答
835 浏览

ios - webview_flutter 在 iOS 中存档时导致问题

我有一个颤振模块并集成在现有的 iOS 应用程序中(添加到应用程序)。一切正常,但是当我尝试存档时,它会在webview_flutter模块中产生错误:

无法生成位码包,因为“/Users/flutter-module/.ios/Flutter/engine/Flutter.framework/Flutter”是在没有完整位码的情况下构建的。位码的所有框架和 dylib 必须从 Xcode 存档或安装构建文件“/Users/flutter-module/.ios/Flutter/engine/Flutter.framework/Flutter”用于架构 armv7

我检查了构建设置,并且启用的位码设置为“是”,原因很明显,这个错误的原因可能是什么?它与 webview_flutter 模块有关吗?

编辑

macOS:10.15.3(卡特琳娜)

Xcode 版本:11.0 (11A420a)

Flutter 版本:Channel 稳定版,1.20.2

0 投票
0 回答
171 浏览

flutter - Flutter模块的Android封装库

根据文档https://flutter.dev/docs/development/add-to-app/android/plugin-setup#b-plugins-needing-project-edits

For advanced users, if more modularity is needed and you must not leak knowledge of your Flutter module’s dependencies into your outer host app, you can rewrap and repackage your Flutter module’s Gradle library inside another native Android Gradle library that depends on the Flutter module’s Gradle library. You can make your Android specific changes such as editing the AndroidManifest.xml, Gradle files or adding more Java files in that wrapper library.

所以我们可以为 Flutter 模块制作 Android 原生的封装库,以便在外部项目中导入这个库,而不是直接添加 Flutter 模块。

我的问题是我们如何在 Android 库中添加 Flutter 模块

在文档中,它给出了更新 settings.gradle 这个

但是我们不能将 settings.gradle 添加到 android 库模块中。它只能添加到根项目中。

任何人都可以分享 git repo 以在 Android 库中包含颤振模块吗?

我做了什么:

  1. 创建一个新的安卓项目
  2. 添加了一个新模块 mylibrary say
  3. 克隆 mylibrary 中的颤振模块目录
  4. 添加implementation project(':flutter')在 :mylibrary build.gradle

现在,当我生成 aar 时,即使根项目运行良好,它也不包含颤振模块