标签:
Github上一周年的WinObjc项目最近发布了预览版本,终于等到了这一天。WinObjc项目就是Build 2015大会上微软宣布的Project IslandWood项目,致力于将iOS应用快速移植成UWP应用。废话不多说,让我们来看看WinObjc项目到底如何使用。
开始转制iOS项目前我们要先部署好WinObjc工具,工具链如下:
注意:确定你已经安装了Windows 10 SDK, 不然无法生成使用UWP项目。
此外,还可以直接使用微软已经配置好的评估版Windows 10开发环境虚机。虚机里已经配置好了最新的满足需求的开发环境,方便你快速在Mac或PC上使用评估最新工具。针对不同虚机的下载地址如下:
在将下载后的Winobjc.zip文件解压到本地文件中后,我们就有了可以直接使用的iOS Bridge工具了。这里我使用的是iOS著名HUD框架MBProgressHUD的示例项目做测试,下载地址如下:https://github.com/jdg/MBProgressHUD
其中我们主要使用vsimporter工具,使用步骤如下:
4.可以看到已经生成了sln解决方案文件,直接打开即可
5.Winobjc文件夹bin目录下有个Objective-C语言高亮插件objc-syntax-highlighting.vsix,大家别忘了安装哦。当前解决方案sln文件双击打开后就是一个标准的UWP项目,直接Ctrl+F5运行此项目。
第一次编译生成要较长时间,然而最蛋疼的是编译失败了,拜拜(果然还是大坑)。
之后又尝试了很多iOS项目包括Apple开发者中心下载的一些示例项目。大部分都会编译错误,少部分能运行的很多UI界面和功能都不对,目前除了官方自带的Winojc示例项目外还没有能正常运行的。
我们来看看官方能运行的示例项目实际运行效果是什么样子的,如下:
列表视图 UITableView
集合视图 UICollectionView
图片视图 UIImageView
我试着写入了一段Objective-C代码到项目中,会在当前窗口添加一个橘黄色的视图,如下:
UIView *testView = [[UIView alloc] initWithFrame:CGRectMake(0,0,200,200)]; testView.backgroundColor = [UIColor orangeColor]; [self.view addSubview:testView];
编译运行后,确实执行也没有问题,功能也是正常运行的,如下:
Winobjc项目看着很美,但目前还是一张不堪使用的大饼。搞了一年,总归比开始进步多了,重写支持了大多数的iOS基础库,UIKit之类的基本framework完成度都挺高的,AutoLayout、Storyboard和XIB也都支持了,但是未来还有很长的路要走。目前大家还是可以尝尝鲜的,其实在我看来与其照搬重写iOS framework,倒不如开发一套支持Objective-C的Windows开发框架,想比也比现在好多了,不至于被iOS牵着鼻子,问题不断。
标签:
原文地址:http://www.cnblogs.com/Leo_wl/p/5734891.html