我想有一個跨平臺的框架,因爲這些平臺解決方案。 我的應用程序需要位置服務,套接字編程,攝像頭訪問和推送通知。所以,網絡應用程序是不是要走....有沒有任何工具或框架來做到這一點?謝謝。有沒有用於編寫iOS,Android(甚至Windows Phone)的單個框架?
回答
因爲您想要訪問平臺相關的功能,例如相機,GPS,通知等,您將需要調用平臺特定的API。
這樣,至少你的一些應用程序代碼將需要依賴於平臺。但是,您的應用代碼的大部分代碼&很可能可以在多個平臺上共享。我強烈建議Mono作爲一個優秀的多平臺開發環境。在Windows Phone上,您的代碼將在.NET中運行。對於Linux & OSX,您可以使用Mono。對於Android的& iOS版,您可以使用Xamarin的工具。
這裏的關鍵是,如果你將你的應用程序邏輯打包成「Portable Assemblies」(即組件依賴於CLI/CLR所有實現中可用的.NET框架的部分),那麼你的代碼一般可以在Windows,Windows Phone,Linux,OSX,Android和iOS上無需修改即可運行!
然後,您需要做的就是構建特定於平臺的外殼,使您的應用看起來像一個平臺本地應用,使用您想要支持的各種平臺的典型控件和設計隱喻。
HTH。
更新2012-04-06:如果你想利用便攜圖書館,這裏是包含在最近發佈的(和良好的價值,一個有些updated documentation on MSDN引用便攜式圖書館的新版本更新-look)Visual Studio 11 Beta。
更新2012-04-11:標題爲「Create a Continuous Client Using Portable Class Libraries」的文章被髮表在MSDN雜誌的2012年3月版,說明如何使用PL的創建的Windows Phone和Windows 8的應用程序,共享相同的核心業務邏輯。
http://phonegap.com/about是我能提供的最好的近似。
如果你不看網頁的應用程序,你可能想看看codenameone。它基於java
,他們也有一個eclipse
的插件。
你嘗試Mono?
您可以嘗試Sencha 它是一個高性能的HTML5移動應用程序框架。適用於iPhone,Android等
單
請參閱本Hybrid移動應用程序框架。
最新發布的Qt Framework(5。1)有他們稱之爲Android和iOS支持的「技術預覽」。完全發佈的支持將在即將發佈的5.2版本中發佈。
鑑於Qt作爲跨平臺開發框架的廣泛和成功的歷史,我對此寄予厚望。 (免責聲明:我迄今爲止只用於Win/Mac/Linux開發...)
對於本地跨平臺框架,您應該檢查出Crosslight。它目前支持針對iOS,Android,WP8和Win8的應用程序開發。
UPDATE:Crosslight公司包括你要找的內置服務,如:
- 攝像機服務:從相機拍照,從畫廊瀏覽照片,檢索裁剪圖像,產生完全或縮略圖版本
- 定位服務:獲取當前位置,通過地址獲得位置,軌道位置
- 通知服務:安排本地通知服務
- 連接服務:檢查的烏里可達,得到當前連接(Wi-Fi或WWAN)
- 許多其他有用的服務,如郵件服務,瀏覽器服務,地圖服務等
Crosslight看起來很有趣,但價格不小。單個開發者許可證爲2千美元。對許多公司來說這不是問題,但對於獨立開發人員來說這是令人望而卻步的。 – 2014-04-16 22:57:25
- 1. iOS:SpriteKit甚至沒有鏈接?
- 2. AsyncTask甚至沒有啓動
- 3. BringWindowToTop甚至沒有工作
- 4. 的Python - Apscheduler甚至沒有使用「remove_job」
- 5. 甚至在有和沒有邊框的div上的高度
- 6. 甚至有可能定製iOS鬧鐘?
- 7. 甚至當我沒有使用任何
- 8. 有沒有android ORM框架?
- 9. 有沒有用Python編寫的好構建框架?
- 10. onblur甚至沒有按預期工作
- 11. 而Windows Phone官方樣片甚至不能編譯:聚合misssing
- 12. 以下甚至可能在android/windows phone/symbian中?
- 13. 的Javascript甚至沒有工作
- 14. 的upload_max_filesize甚至沒有修改php.ini中
- 15. 甚至不能有根的Android
- 16. 甚至在我使用甚至委派之後,元素還沒有被刪除
- 17. Windows Phone 7列表框沒有更新
- 18. 表TD間距甚至沒有
- 19. 甚至我沒有定義路線
- 20. PHP沒有返回值(甚至未NULL)
- 21. jquery點擊甚至沒有href
- 22. 如何取代Backbone.sync,甚至沒有localStorage?
- 23. java.nio.file甚至沒有與JDK 1.7在Eclipse
- 24. ASP按鈕甚至沒有射擊
- 25. Struts2驗證甚至沒有工作
- 26. Hadoop:Reducer類甚至沒有被覆蓋
- 27. 有沒有像android的EventKit框架?
- 28. Windows Phone的XNA框架4.0
- 29. 有沒有一個用於寫入iOS中plist的視頻?
- 30. 在沒有框架的python中編寫web應用程序?
我明白了。所以,我需要爲一般邏輯創建一些類似於一般邏輯的庫,但幾乎沒有平臺依賴代碼.... – DNB5brims 2012-04-02 07:05:36
通常,將通用業務邏輯劃分爲可重用的組件,然後可以被特定於平臺的應用程序使用,這是一種很好的方法。這使您可以實現高級別的代碼重用,而無需在多個項目中複製並粘貼和維護代碼。 – 2012-04-03 06:26:20