mono在ios平台的局限性
2015-12-08 15:48
302 查看
详情见:http://developer.xamarin.com/guides/ios/advanced_topics/limitations/#System.Reflection.Emit
大概总结了下就是:
主要因为ios是Full AOT的,所以不支持JIT的一些特性
1,泛型方面
a,不允许NSObjects的泛型子类
b,泛型类里面不允许P/Invoke
c,Property.SetInfo不支持Nullable类型
d,不支持值类型作为Dictionary的keys(2016年1月28日补充:后来查了下资料,大多数情况下是支持的,但潜在出错的可能)
2,反射:主要是不支持动态代码生成
a,System.Reflection.Emit 和System.Runtime.Remoting不支持
b,使用反向回调有以下两个限制:
1)回调函数要赋予 MonoPInvokeCallbackAttribute属性
2)回调函数必须是静态函数
3,不支持Remoting
大概总结了下就是:
主要因为ios是Full AOT的,所以不支持JIT的一些特性
1,泛型方面
a,不允许NSObjects的泛型子类
b,泛型类里面不允许P/Invoke
c,Property.SetInfo不支持Nullable类型
d,不支持值类型作为Dictionary的keys(2016年1月28日补充:后来查了下资料,大多数情况下是支持的,但潜在出错的可能)
2,反射:主要是不支持动态代码生成
a,System.Reflection.Emit 和System.Runtime.Remoting不支持
b,使用反向回调有以下两个限制:
1)回调函数要赋予 MonoPInvokeCallbackAttribute属性
2)回调函数必须是静态函数
3,不支持Remoting
相关文章推荐
- nagios安装
- ios开发创建证书和描述文件的整个流程
- ios 里如何判断当前应用的定位服务是否可用
- iOS自动布局实现Cell和Tableview高度自适应(SDAutoLayout)
- <iOS>git-起步
- iOS 控件
- 学习iOS的见解
- ios-kvc\kvo 用法
- iOS-初级数据持久化
- IOS开发copy,nonatomic, retain,weak,strong用法
- 自用cocoapods命令整合
- iOS第三方开源库
- ios属性修饰符总结
- iOS9无法安装企业版的解决办法
- 纪念,IOS第一次找工作!
- iOS 简单实现重新获取验证码并倒计时60秒
- iOS一些系统事件的生命周期
- 关于真机ios图标失真的问题以及图标的理解
- iOS MP3 id3lib
- iOS关键帧动画