我想知道如何在插件中调试 Flutter iOS 代码?我可以打开每次创建插件时生成的示例应用程序,但我将插件代码视为二进制框架,因此我无法调试它。
对于 android,这相当简单,我只需在 AS 中打开 android 文件夹,插件 + 示例就在那里,我只需添加运行配置并立即开始调试。
但我真的希望为 iOS 找到类似的方法。
我创建了一个带有“FacebookShare”依赖项的flutter插件。我的吊舱规格如下,
Pod::Spec.new do |s|
s.name = '{plugin name}'
s.version = '0.0.2'
s.summary = 'A new Flutter plugin for share image and text in social media'
s.description = <<-DESC A new Flutter plugin for share image and text in social media
DESC
s.homepage = 'https://github.com/jayarajm/flutter_share_social_media.git'
s.license = { :file => '../LICENSE' }
s.author = { '...' => '...' }
s.source = { :path => '.' }
s.source_files = 'Classes/**/*'
s.public_header_files = 'Classes/**/*.h'
s.dependency 'Flutter'
s.dependency 'FacebookShare'
s.ios.deployment_target = '8.0'
s.static_framework = …Run Code Online (Sandbox Code Playgroud) 我们已经在 TDD 方法中启动了一个关于 Flutter 的新项目。我正在使用状态管理提供程序。在尝试编写小部件测试时,我们面临着测试提供程序的问题。你能否用一个例子来建议为提供者和小部件注入提供者的单元测试。
我遇到以下问题
??? EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ?????????????????????????????????????
The following ProviderNotFoundException was thrown running a test:
Error: Could not find the correct Provider above this SplashScreen Widget
To fix, please:
Ensure the Provider is an ancestor to this SplashScreen Widget
Provide types to Provider
Provide types to Consumer
Provide types to Provider.of()
Always use package imports. Ex: `import 'package:my_app/my_code.dart';
Ensure the correct context is being used.
Run Code Online (Sandbox Code Playgroud)
???启动画面代码??????????????????????????????????????????
??? EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK …Run Code Online (Sandbox Code Playgroud) flutter flutter-test flutter-dependencies flutter-channel flutter-plugin
我最近在我的应用中实现了应用内订阅。现在我正在为订阅添加促销代码。拥有促销代码的人可以试用 15 天,之后将被收取费用。
https://developer.android.com/google/play/billing/billing_promo
此处描述的我们可以通过为用户提供免费试用期来促销订阅。我在游戏控制台中创建了促销活动。但是当我购买订阅时,我无法添加兑换代码或促销代码(我的应用是否需要投入生产,或者我也可以在 alpha 轨道中进行测试)。
请指导我。
promotion-code in-app-subscription flutter flutter-plugin flutter-in-app-purchase
我正在创建一个包含大量内容的 PDF 文档。但是,我无法显示 PDF 并且出现错误
“这个小部件创建了 20 多个页面。这可能是小部件或文档中的问题。”
我知道文字太大,但我不知道如何使它起作用
pdf.addPage(
pw.MultiPage(
pageFormat: PdfPageFormat.a4,
orientation: pw.PageOrientation.portrait,
crossAxisAlignment: pw.CrossAxisAlignment.start,
build: (pw.Context context) {
return <pw.Widget>[
pw.Wrap(
children: <pw.Widget>[
pw.Container(
width: PdfPageFormat.a4.width,
child: pw.Row(
mainAxisSize: pw.MainAxisSize.min,
crossAxisAlignment: pw.CrossAxisAlignment.start,
children: <pw.Widget>[
pw.Expanded(
child: pw.Column(
mainAxisSize: pw.MainAxisSize.min,
crossAxisAlignment: pw.CrossAxisAlignment.start,
children: <pw.Widget>[
pw.SizedBox(height: 8.0),
for (int i = 0; i < data['employers'].length; i++)
pw.Column(
mainAxisSize: pw.MainAxisSize.min,
crossAxisAlignment: pw.CrossAxisAlignment.start,
children: <pw.Widget>[
pw.Text(
"${data['employers'][i]['duties']}",
style: pw.TextStyle(
fontSize: 12.0,
),
softWrap: true,
),
],
),
],
),
),
], …Run Code Online (Sandbox Code Playgroud) 我是颤振新手,我正在努力创建系统托盘实现。
我需要的是:
有人可以指导我吗?:D
PS:我的应用程序将在 Windows、Linux 和 MacOS 上运行。
谢谢大家!
我正在开发一个 Flutter 插件,它使用 AndroidView 来显示本机 Android 视图
但我得到以下异常:
Unhandled Exception: PlatformException(error, java.lang.IllegalStateException: Trying to create a platform view of unregistered type: type
Run Code Online (Sandbox Code Playgroud)
我不明白为什么会这样。有人可以解释这个异常的起源吗?
我认为你必须像这样注册视图类型PluginName.java:
@Override
public void onAttachedToEngine(@NonNull FlutterPluginBinding binding) {
binding.getPlatformViewRegistry()
.registerViewFactory("type", new ViewFactory());
}
Run Code Online (Sandbox Code Playgroud)
在示例应用程序的 main.dart 中,简单地使用该视图类型:
AndroidView(
viewType: "type",
layoutDirection: TextDirection.ltr,
creationParams: creationParams,
creationParamsCodec: const StandardMessageCodec(),
)
Run Code Online (Sandbox Code Playgroud) 我正在开发一个用于安全视频流的 flutter 插件。我使用一个原生 Android 插件,它使用片段来播放视频。在 flutter 中浏览平台视图。看来我只能使用 getView() 重写方法将 Android 视图返回到小部件。但我必须使用片段,并且无法将片段返回到 getView() 重写方法。
无论如何,我是否可以将片段传递或返回到 flutter 小部件,以便我可以使用该 flutter 小部件来显示片段?
提前致谢。
在 Flutter 中创建插件项目时,会在插件项目的子文件夹中添加一个使用该插件的示例应用程序。需要做什么才能将第二个“示例”应用程序添加到插件文件夹?
到目前为止我有:
复制示例文件夹并将其重命名为(我们称之为)app2。
调整了 android 清单文件中的包名称app2。
重命名pluginrootfolder/app2/pluginname_example.iml为pluginrootfolder/app2/pluginname_app2.iml(以反映第二个应用程序的名称)。
在插件项目(根文件夹)的 .iml 文件中:复制并调整排除文件夹指令以反映app2
Run Code Online (Sandbox Code Playgroud)<excludeFolder url="file://$MODULE_DIR$/app2/.dart_tool" /> <excludeFolder url="file://$MODULE_DIR$/app2/.pub" /> <excludeFolder url="file://$MODULE_DIR$/app2/build" />
在插件根目录和 app2 目录中运行Flutter clean和。Flutter pub get
现在的问题是,这app2会导致 1k+Target of URI doesn't exist:错误消息 - 从包(如提供程序和 json_annotation)到插件根项目中的类。您对这里的问题或如何解决有什么想法吗?
我正在使用 flutter 插件,想要.aar在插件的 android 部分导入一个项目。我尝试打开 android 项目并.aar通过导入模块来导入项目,包括它setting.gradle并添加它的依赖项build.grade(就像任何其他本机 android 项目一样)。但是,当我运行flutter项目时,.aar找不到该项目。
我得到的错误是
评估项目“:flutter_plugin_andriod”时出现问题
在项目“:flutter_plugin_andriod”中找不到路径为“:commonlib”的项目。
有人解决了吗?