最近發(fā)布的Win10對微軟來說是一個新機(jī)遇,它打破了以往的局限性和封閉性,開始走向全平臺融合化。微軟啟動了Project Astoria和Project Islandwood兩個項目,試圖打通Windows、iOS和Android三大平臺,提供一致性的用戶體驗。 微軟的安卓應(yīng)用移植項目Project Astoria備受人們關(guān)注,通過該項目,可直接在Win10 Mobile中運(yùn)行安卓應(yīng)用。
相比之下,微軟推出的另一個移植項目,即iOS應(yīng)用移植項目Project Islandwood卻沒有獲得同樣的關(guān)注程度。2
相比之下,微軟推出的另一個移植項目,即iOS應(yīng)用移植項目Project Islandwood卻沒有獲得同樣的關(guān)注程度。
Project Islandwood是提供給開發(fā)人員的工具,能夠讓開發(fā)人員將他們現(xiàn)有的iOS應(yīng)用代碼移植到Windows10應(yīng)用項目中。不同于Project Astoria,iOS應(yīng)用的移植需要開發(fā)者花費(fèi)更多的精力。微軟目前也正在努力改進(jìn)這一工具,以便讓開發(fā)者更方便地使用,為此微軟還開放了該項目的源代碼,讓更多開發(fā)者參與進(jìn)來貢獻(xiàn)自己的力量。
相比之下,微軟推出的另一個移植項目,即iOS應(yīng)用移植項目Project Islandwood卻沒有獲得同樣的關(guān)注程度。2
在一篇博文中,微軟解釋了有關(guān)該項目的開發(fā)目標(biāo)和準(zhǔn)則,他們希望從iOS移植到Win10中的應(yīng)用應(yīng)具有:
1、 完整Windows API訪問權(quán)限:能夠更方便地使用tive-C語言代碼訪問Windows API;
2、 iOS兼容性:讓開發(fā)者盡可能多地使用現(xiàn)有的iOS應(yīng)用代碼,做到代碼復(fù)用最大化;
3、 無沙盒:iOS與Windows API可協(xié)同工作;
這正是與Project Astoria所不同的地方,在Win10 Mobile中運(yùn)行安卓應(yīng)用,應(yīng)用本身處于沙盒之中,應(yīng)用只具有微軟提供的部分API訪問權(quán)限。無沙盒則意味著,如果微軟的移植工具不支持某一個iOS API,開發(fā)者可以直接調(diào)用Windows API來實現(xiàn),不僅如此,微軟還提供Projections,允許開發(fā)者使用tive-C語言直接調(diào)用Windows API。
由于微軟已將Project Islandwood項目開源,當(dāng)開發(fā)者遇到問題時可自行解決,或者從其他開發(fā)者獲取幫助,而不必等待微軟來解決。
Project Islandwood項目看起來非常棒,但最終結(jié)果如何,取決于iOS開發(fā)者的意愿,時間會給出答案。目前Project Islandwood項目只支持x86平臺,未來幾周會添加ARM/Mobile平臺支持。
?