我想爲Android和iOS設備開發一個應用程序。有沒有辦法一次開發應用程序並在兩者上部署?還是必須分別爲每個平臺開發?Android和iOS:如何爲兩者開發?
回答
那麼你有http://monotouch.net和http://monodroid.net。這樣你就可以擁有共同的業務邏輯,並且只能重新開發你的用戶界面。
許多移動應用程序只提供信息,並且業務邏輯非常少。 – mikerobi 2010-11-04 21:01:13
這一切都取決於您想要開發的應用程序的類型。如果它是一款遊戲,我建議你將其大部分作爲本機代碼編寫,並利用OpenGL ES 2.0在兩個平臺上本地支持的優勢。顯然,所有的Java代碼都不能在iOS上重用,所以任何可以作爲可移植本地庫的東西都可以幫助減少不可重用代碼的數量。
Codename One是另一個用於兩種平臺上的Java開發。雖然沒有經驗。
如果是遊戲或主要是圖形應用程序,BatteryTech Engine將做你想做的。喲仍然需要XCode爲iOS構建,否則它是這兩個平臺的單一主代碼庫。
使用Qt,這是一個跨平臺開發的C++框架,同時擁有LGPL和商業許可證,您可以爲這兩個平臺開發並簡單地重新編譯來自同一個源的應用程序。作爲獎勵,您也可以定位Windows,Linux和Mac。
但請記住,Qt呈現自己的控件,所以窗口小部件不會在Android或iOS上看起來很原生。此外,與所有跨平臺框架一樣,它將爲您提供功能方面最低的共同點。
有了Qt,您可以開發真正的跨平臺應用程序將在桌面上運行,嵌入式和移動平臺。 Qt 5.2引入了對Android和iOS平臺的全面支持,因此可以創建跨平臺的移動應用程序,這些應用程序通過一個代碼庫打包並部署到Google Play和App Store中。不要用兩種不同的技術編寫相同代碼的兩個版本,您可以使用Qt編寫一次!
蘋果應用程序商店可能不會接受使用dylibs的應用程序,但是,這可能force you to use the commercial license的封閉源代碼的應用程序:
在iOS上也可以使用Qt庫的動態鏈接版本,並將它們與應用程序捆綁在一起。這允許應用程序使用Qt的LGPL許可證,同時允許應用程序本身是封閉源代碼。 Apple是否會接受將dylib綁定到iOS App Store的應用程序還有待觀察。如果Apple不接受使用捆綁的dylib進入App Store的應用程序,則需要將Qt靜態鏈接到應用程序。由於Qt for iOS端口使用LGPL版本的Qt,因此與LGPL靜態鏈接的規則即將啓動 - 這可能是閉源應用程序的問題。
最後,由於Qt是一個C++框架,您將需要使用C++來開發您的應用程序。
我開始使用NativeScript,它看起來很有前途。
NativeScript是您如何構建跨平臺的原生iOS和Android應用程序而無需Web視圖。使用Angular,TypeScript或現代JavaScript來獲得真正的原生UI和性能,同時與網絡分享技能和代碼。通過JavaScript獲得對本地API的100%訪問權限,並重用NPM,CocoaPods和Gradle的軟件包。開源並由Telerik支持。
有很多選擇。這取決於你是否想要一個Native體驗,或者你想要的東西在web視圖中。有了本地的經驗,你可能不得不做一些本地編碼,但它仍然比開發2個獨立的本地應用程序更好。
下面是我有經驗的一些。
本土經驗
- Nativescript + Angular(免費)
- Xamarin(價格取決於你在做什麼)
- React Native(免費)
網頁視圖
我用大量的跨平臺在過去的幾年裏,而從我的角度Xamarin是最好的,因爲在最後,你可以告訴如果應用程序是跨平臺的或沒有。但與Xamarin它編譯爲本地,因此在它們之間沒有明顯的差異。 你可以從這裏開始:https://www.xamarin.com
- 1. 如何成爲Android遊戲開發者
- 2. Android和iOS開發
- 3. 如何開始作爲Android開發者自由職業者
- 4. 創建兩個ios開發者賬戶
- 5. 爲Android開發vs爲IOS開發
- 6. Android開發與iOS開發相比,iOS開發體驗如何?
- 7. Flex 4.5.1和iOS,Android開發
- 8. Android開發者:java.lang.NullPointerException
- 9. Nooby Android開發者
- 10. 作爲兩個iPhone開發者團隊
- 11. iOS開發者賬號
- 12. iOS開發者計劃
- 13. 如何在Android開發者控制檯
- 14. 如何開始爲iOS開發配件?
- 15. 適用於iOS和Android的後端:作爲初級開發者使用什麼?
- 16. 如何成爲註冊開發者?
- 17. 如何啓動Android/iOS附件開發?
- 18. 如何爲Android開發webservice
- 19. Android vs iOS開發
- 20. 如何爲公司註冊Android開發者帳戶?
- 21. 如何爲公司註冊Android開發者帳戶?
- 22. Android開發者控制檯
- 23. 如何爲開發者複審隊列旋轉開發算法?
- 24. 爲iOS/Android設備開發遊戲?
- 25. 開發Android和iOS的應用
- 26. IOS和Android在Windows中開發
- 27. 使用C開發Android和IOS C
- 28. iOS和Android跨平臺遊戲開發
- 29. 如何做Windows phone開發者註冊(開發者解鎖)?
- 30. 爲iPhone/Android和WPF開發
另請參閱http://stackoverflow.com/questions/6171128/ios-android-cross-platform-development,它問同樣的問題,但被關閉,因爲它要求IDE /框架的建議。 – sashoalm 2015-06-15 07:17:15