標籤:
快速使用Romanysoft LAB
的技術實現 HTML 開發Mac OS App,並銷售到蘋果市集中。
《HTML開發Mac OS App 視頻教程》
- 馬鈴薯網同步更新:http://www.tudou.com/plcover/VHNh6ZopQ4E/
- 百度網盤同步:http://pan.baidu.com/s/1jG1Q58M
- 分享 [中文紀錄片]互連網時代 http://pan.baidu.com/s/1qWkJfcS
官方QQ群:(申請加入,說是我推薦的
)
- App實踐出真知 434558944
- App學習交流 452180823
英文原文:Compiling Objective-C into C++ with Visual Studio
曾有人謠傳微軟 Windows 10 平台將支援運行 Android 程式,沒有人會預料到 iOS 應用也將得到同樣的支援。目前,微軟正結合 C2 和 Clang 使之變為可能。
編譯器支援
Google和蘋果都使用 Clang 作為他們的 C++ 前端,微軟將 Clang 與 Visual C++ 編譯器的後端 C2 結合,以此來支援在 Windows 上運行 Android 和 iOS 程式。
蘋果的 Objective-C 同樣使用 Clang 作為前端,所以一旦 Clang 與 C2 整合完成,他們也將獲得解析並編譯 Objective-C 的能力。
IDE 支援
Visual Studio 中的 Objective-C 支援文法高亮、代碼補全、和代碼調試功能。C++和 C# 檔案可以被引入到相同的項目中,允許程式直接跨邊界調用。編譯器將處理所有封送工作,所以開發人員只會看到普通的函數調用。
大多數 Objective-C 項目都以建立 XCode 項目開始,所以 Visual Studio 將支援匯入 XCode 項目,VS 和 XCode 專案檔可在混合模式項目中共存,因此可以在兩種 IDE 中同時開發這個項目。
混合模式項目
Windows 為 Objective-C 應用提供了新的 API,例如:動態磚。為了確保可以繼續在平台間共用代碼,微軟允許你在調用 Windows API 前通過運行時檢查它們是否可用。或者, 你可以使用前置處理器指令顯式地隔離平台特定代碼與共用代碼。
運行時行為
Windows 的 Objective-C 運行時預設通過檢測應用原始平台來決定具體行為。舉個例子:如果你移植某個 iPhone 應用,那麼它將預設運行在一個小視窗中,而從 iPad 移植的應用將預設運行在常規大小的視窗中。
所有這樣的行為可以在需要時被應用覆蓋。
iOS API 相容性
Windows 10 支援 iOS API 的一個“合理子集”,它不會對應於 iOS 的某個版本,而是通過查看指標來尋找最常用的 API。在第一個版本中,微軟將關注以下 API:
遊戲:對 OpenGL、OpenAL 和感應器提供良好的支援
UI:UIKit、核心動畫、核心圖形、核心文字、觸控
Objective-C:自動引用計數、代碼塊、Foundation 架構
對於像分享、訊息提示、儲存群組件這樣的功能,開發人員需要選擇是繼續使用 iOS API,還是切換到 Windows 替代解決方案。如果你選擇繼續使用 iOS API,Windows 將提供一個相容層來支援 API 正常運行;當然,微軟更希望你使用他們提供的解決方案,這樣你就可以訪問進階 Windows 特性。
Swift
對於 Swift,微軟官方的立場是“暫不評論”。而在私下交流中,他們透露出支援 Swift 的意願,但由於要在秋天到來前忙於準備 Objective-C,以致於沒有資源可以提供給 Swift。
相關連結
- Visual Studio 的詳細介紹:請點這裡
- Visual Studio 的:請點這裡
在 Visual Studio中 將 Objective-C 編譯為 C++