博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Xamarin发布支持64位的iOS/Mac统一API
阅读量:6162 次
发布时间:2019-06-21

本文共 1393 字,大约阅读时间需要 4 分钟。

Xamarin上周了其iOS SDK(Xamarin.iO) 8.6版本,这是包含了该公司iOS和Mac统一API(Unified API)的第一个非Beta版本。统一API替代了原有的32位MonoTouch和MonoMac API,让跨平台的代码重用成为可能并且增加了64位支持。这一版本的发布比苹果要求的新应用提交必须兼容64位的最后期限(2月1日)只早了两周。

\\

Xamarin的移动开发平台让使用C#开发可以跨平台的原生移动应用成为可能。该公司已经利用开源的Mono工具链创建了能够同时兼容iOS和安卓的运行时环境。在iOS平台上,预编译器(Ahead-of-Time Compiler)将C#代码编译成原生的ARM汇编代码。在安卓平台上,C#代码则被编译成为一种中间代码,之后会在设备上完成即时(Just-in-Time)编译。这样,开发者就可以只编写一次应用,然后可以同时在iOS,安卓和Windows Phone上执行。

\\

新的统一API与经典的MonoTouch API并非差异很大,不过Xamarin做出了两个重大的改变以帮助跨平台的代码重用和64位兼容性。

\\
  1. 被移除的命名空间 - iOS和Mac特有的命名空间已经被移除并折叠成为一个命名空间。例如,Foundation之前在iOS上位于MonoTouch.Foundation命名空间,在Mac上位于MonoMac.Foundation命名空间,现在在两个平台上都可以在Foundation命名空间中找到。\\
  2. 新的原生类型 - 在经典的MonoTouch和MonoMac API中,与架构无关的类型,如NSInteger(在32位平台被解析成为int类型,在64位平台被解析成为long类型)总是被映射成为它们相对应的32位.NET类型。为了修正这一限制,Xamarin引入了三种原生类型——System.nint,System.nuint和System.nfloat,这三种类型会被隐式的映射到当前设备架构相应的支持类型。统一API支持用这些新的原生类型替代.NET的原始类型。\

为了使用统一API而想要更新应用的开发者可以手动完成这项工作,也可以利用Xamarin的迁移工具。作为其中一部分与Xamarin Studio 5.7一同分发的迁移工具可以自动更新所需要的项目设置和API引用。或者开发者也可以选择根据指南中的步骤手动迁移应用。在上周早些时候的一个网络研讨会上,针对两种方法Xamarin都提供了额外的信息,在Xamarin的博客上可以找到这次研讨会的。

\\

InfoQ在2014年12月曾经过,Xamarin已经分发了若干个统一API的Beta版本给第三方库和组件的开发者,鼓励他们更新项目。不过,并不是所有的第三方组件都将会被更新。为了应对这一问题,开发者也许不得不将这些组件的代码作为其项目构建的一部分迁移并编译。

\\

使用新的统一API,开发者将首次实现64位兼容的iOS和Mac应用的编译。这对于正在进行新的iOS应用开发的开发者来说相当有意义,根据苹果在10月份的公告,在2015年2月1日,所有新的iOS应用必须要做到64位兼容。对于已经发布到应用商店的应用开发者来说,时间会更加宽松一些,只要在2015年6月1日之前完成更新兼容64位即可。

\\

查看英文原文:

转载地址:http://curfa.baihongyu.com/

你可能感兴趣的文章
什么是AAC音频格式 AAC-LC 和 AAC-HE的区别是什么
查看>>
原创:goldengate从11.2升级到12.1.2
查看>>
Quartz
查看>>
正则表达式的语法规则
查看>>
C#一个关于委托和事件通俗易懂的例子
查看>>
类似于SVN的文档内容差异对比工具winmerge
查看>>
Cause: java.sql.SQLException: The user specified as a definer ('root'@'%') does not exist
查看>>
quratz线程
查看>>
execnet: rapid multi-Python deployment
查看>>
windows修改3389端口
查看>>
关于JavaScript词法
查看>>
FreeSwitch中的会议功能(4)
查看>>
MySQL中创建用户分配权限(到指定数据库或者指定数据库表中)
查看>>
AutoReleasePool 和 ARC 以及Garbage Collection
查看>>
重新想象 Windows 8 Store Apps (9) - 控件之 ScrollViewer 基础
查看>>
乐在其中设计模式(C#) - 提供者模式(Provider Pattern)
查看>>
MVP Community Camp 社区大课堂
查看>>
GWT用frame调用JSP
查看>>
大型高性能ASP.NET系统架构设计
查看>>
insert select带来的问题
查看>>