Xamarin.Mac/iOS .NET 9.0.1xx-Xcode16.4 版本深度解析
Xamarin.Mac/iOS 作为微软推出的跨平台移动开发框架,为开发者提供了在.NET环境下构建原生iOS、macOS、tvOS和Mac Catalyst应用的能力。本次发布的9.0.1xx-Xcode16.4版本是一个重要的服务更新,主要增加了对Xcode 16.4的支持,并带来了一系列功能改进和性能优化。
核心更新亮点
Xcode 16.4兼容性支持
本次更新的核心特性是全面支持Xcode 16.4开发环境。需要注意的是,Xcode 16.4要求运行在macOS 15.3及以上版本的操作系统上。这一更新确保了开发者能够使用最新的苹果开发工具链构建应用,获得最新的API支持和性能优化。
Windows平台绑定项目构建优化
一个显著的架构改进是绑定项目现在可以完全在Windows平台上构建,不再需要远程Mac的参与。这一变化带来了以下优势:
- 构建速度显著提升:消除了网络通信开销,本地构建效率更高
- 开发体验改善:Windows开发者不再需要维护Mac构建环境
- CI/CD流程简化:Windows构建服务器可以直接处理绑定项目
关键技术改进
文档生成增强
bgen工具(绑定生成器)在文档生成方面有多项改进:
- 为表示字段的属性添加了默认XML文档
- 增强了异步操作的文档支持
- 完善了过滤器的文档说明
- 为事件添加了XML文档支持
- 为基于NSNotifications的事件参数子类添加文档
- 为生成的强字典类添加文档
这些改进使得自动生成的API文档更加完整,有助于开发者更好地理解和使用框架提供的功能。
性能与诊断优化
运行时环境增加了应用启动时间报告功能,帮助开发者分析和优化应用启动性能。同时新增了'EnableProfiler'属性,用于启用'diagnostics_tracing'组件,为性能调优提供更多工具支持。
安全与稳定性增强
在安全方面,框架对几个macOS专属的entitlements进行了验证,确保应用权限配置的正确性。同时修复了CFNetworkHandler和NSUrlSessionHandler的相关问题,提升了网络通信的可靠性。
各框架具体改进
AVFoundation框架
- 为AVRouteDetector添加了默认构造函数
- 改进了AVAudioRecorder的手动绑定构造函数
- 实现了Xcode 16.4 beta 1的所有新API
Foundation框架
- 修复了NSDictionary缺少的成员
- 改进了NSAttributedString、NSHttpCookie、NSString等多个类的手动绑定构造函数
- 确认NSUrlSessionHandler.ClientCertificateOptions现已支持
Metal框架
- 修复了MTLRasterizationRateLayerDescriptor的几个问题
- 更新了所有可用性属性
UIKit框架
- 调整了UITableViewDelegate.WillDisplay相关方法的可空性
- 修复了UIBarButtonItem的回调逻辑
- 标记UIGraphicsRenderer及其派生类为线程安全
构建系统改进
MSBuild构建系统有多项重要更新:
- 修复了AOT编译的依赖跟踪问题
- 改进了剪裁和本地链接的依赖跟踪
- 对Mac Catalyst应用扩展的放置位置进行了修正
- 增加了对符号链接目录的处理能力
- 验证了所需的Xcode版本
开发者体验优化
- 改进了错误消息,特别是关于错误Xcode版本的情况
- 为绑定项目提供了更好的Windows开发支持
- 增加了对诊断功能的支持
- 优化了工作负载安装流程
总结
Xamarin.Mac/iOS 9.0.1xx-Xcode16.4版本是一个重要的服务更新,不仅提供了对新版Xcode的支持,还在构建性能、开发体验、API完整性和系统稳定性方面做出了显著改进。特别是Windows平台绑定项目构建的本地化支持,将极大提升跨平台开发者的工作效率。对于正在使用或考虑采用Xamarin进行跨平台开发的团队来说,升级到这个版本将获得更好的开发体验和更强大的功能支持。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C091
baihu-dataset异构数据集“白虎”正式开源——首批开放10w+条真实机器人动作数据,构建具身智能标准化训练基座。00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python058
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7GLM-4.7上线并开源。新版本面向Coding场景强化了编码能力、长程任务规划与工具协同,并在多项主流公开基准测试中取得开源模型中的领先表现。 目前,GLM-4.7已通过BigModel.cn提供API,并在z.ai全栈开发模式中上线Skills模块,支持多模态任务的统一规划与协作。Jinja00
AgentCPM-Explore没有万亿参数的算力堆砌,没有百万级数据的暴力灌入,清华大学自然语言处理实验室、中国人民大学、面壁智能与 OpenBMB 开源社区联合研发的 AgentCPM-Explore 智能体模型基于仅 4B 参数的模型,在深度探索类任务上取得同尺寸模型 SOTA、越级赶上甚至超越 8B 级 SOTA 模型、比肩部分 30B 级以上和闭源大模型的效果,真正让大模型的长程任务处理能力有望部署于端侧。Jinja00