(四)Flutter插件之IOS插件开发

1、在哪里写插件代码

在Xcode中打开对应的项目

2、部分代码分析

  • 里面可以写oc代码包含.h 和.m的文件
  • Swift 允许使用 点语法(.)省略枚举类型名,只要上下文已经知道类型
  • 条件编译指令
bash 复制代码
#if DEBUG
        print("json格式不正确:\n\(info)")
#endif`
  • Runner文件夹
    Flutter 项目里的 Runner

在 Flutter 项目中,iOS 部分通常在 ios/Runner 目录下

Runner 是 Xcode 项目名称,同时也是 默认 iOS App Target

里面包含了 Flutter iOS App 的入口代码和配置文件

  • _ 表示 调用时不需要写参数名
  • @escaping

表示闭包 可以在函数返回后再被调用。

因为你在 DispatchQueue.global().async 异步线程里调用 completion,所以闭包必须标记为 @escaping。

如果闭包只在函数体内同步调用,则可以不写 @escaping。

3、IOS和Android的区别

  • 在 Flutter 插件的 iOS 部分,不能直接在插件内部写权限声明(Privacy usage description),而必须由使用插件的 App 工程来声明
  • 如果两个 Swift 文件在同一个 target 内(比如插件的 Classes 文件夹下),不用写 import,可以直接使用。
相关推荐
2501_916007477 小时前
iOS和macOS应用程序性能分析和优化工具使用综合指南
android·macos·ios·小程序·uni-app·iphone·webview
游戏开发爱好者88 小时前
iOS开发IDE有哪些 Xcode 和 快蝎 轻量替代方案
ide·vscode·ios·个人开发·xcode·swift·敏捷流程
恋猫de小郭8 小时前
Flutter 全新真 3D 实现,用 flutter_scene 能开发一个「我的世界」
android·前端·flutter
woshihuanglaoshi9 小时前
数据迁移与版本管理 - Flutter在鸿蒙平台实现数据库升级策略
数据库·学习·flutter·华为·harmonyos·鸿蒙·鸿蒙系统
GitLqr18 小时前
玩转 WebSocket:从原理到 Flutter 实战
websocket·网络协议·flutter
世人万千丶19 小时前
参数管理_Flutter在鸿蒙平台路由参数最佳实践
学习·flutter·华为·harmonyos·鸿蒙
zhazhazsy1 天前
Flutter 多 Isolate 实战:搭建主 Isolate 数据与能力桥
flutter
ZZH_AI项目交付1 天前
同一套前摄心率算法,为什么 iPhone 16 Pro 稳,iPhone XR 会失准?
ios·app·ai编程
DeMinds1 天前
内容没有丢,我为什么总在重新整理?|DeMinds 如何让工作接着继续
ios·github·markdown
apd_csdn1 天前
清华邮箱苹果邮件app设置(全)
ios·thu