2010-05-11 40 views
4

我正在開發客戶端 - 服務器「社交」,該應用程序應該在多個移動設備上運行。該項目非常複雜,涉及網絡,交換媒體,使用地理定位服務以及良好的用戶界面。爲不同的移動平臺做出的努力

在開發工作,技術風險和可擴展性方面,最好的平臺是什麼?考慮到目標是通過移動版本儘可能快地「活着」。第二個目標是覆蓋大多數用戶(但首先更重要)。

iPhone(iPod的新iPad) 的Android 黑莓 的Java ME, 塞班

我意識到有每個平臺上的限制,也有不同的方面考慮到該帳戶(例如iPhone擁有更好的開發者社區然後Android,J2ME運行在一個可怕的沙箱,但涵蓋了大多數設備)。

請分享您的優點和缺點。我只有J2ME的經驗,不幸的是我無法評估其他平臺。

+1

這個問題不可能有明確的答案,任何事物的「最佳」平臺的話題往往會導致主觀和爭辯的迴應。此主題也已在其他問題在這裏涵蓋:http://stackoverflow.com/questions/1599725/which-mobile-programming-environment-do-you-recommend-for-a-startup-to-target – 2010-05-11 12:36:55

回答

3

如果你正在尋找在你列出平臺的本地應用程序,然後才能要求最低到最高的開發工作是:

  1. iPhone

  2. 的Android

  3. 黑莓

  4. Java ME

  5. 塞班

發展的努力在很大程度上是由語言/庫,加工和分散管理。因此iPhone獲勝(良好的語言&圖書館,優秀的工具,很少/沒有碎片)。 Symbian最後(C++,庫有限,工具不佳,碎片大)。 Android在圖書館和碎片方面擊敗Blackberry,Blackberry在碎片方面擊敗Java ME。

的對位,這是市場規模,尤其是你的目標用戶羣 - Java ME的達到比其他任何平臺更加裝置,而安裝在Android的基礎仍然是最小的5

有沒有人正確的答案,但如果覆蓋範圍很重要,那麼如果上市時間和用戶體驗是iPhone的關鍵,那麼Java是一個很好的開始。

同樣值得一看的是如何輕鬆/難以將其移植到其他平臺。如果您可以在跨平臺部分實現您的應用程序,那麼各種各樣的跨平臺庫(如Airplay或J2ME波蘭語)可能會降低成本。

+0

我haven'雖然涉足Android領域,但從iPhone到黑莓的跳躍 - 在煩惱方面 - 非常巨大。例如:要從Apple獲取代碼簽名密鑰,我只是通過developer.apple.com購買了它們。從RIM來看,他們的網頁形式已經停了兩週,而且我不得不通過傳真訂購鑰匙*:http://na.blackberry.com/eng/developers/javaappdev/codekeys.jsp – 2010-05-18 15:08:19

+0

Symbian應該是#1。它支持比其他任何移動平臺更多的語言選擇。 C++,OpenC,Java,Python,Qt等等。它也是迄今爲止最大的安裝基礎和所有其他選擇基於工程的symbian的理由,而不是當下的x因素選擇。 – Dynite 2010-05-18 17:07:11

+3

@Dynite:它可以支持多種語言,但是它們都可以編程。它本質上是J2ME,所以它和平臺一樣好/壞。 Open C無法訪問大多數平臺功能。 Python也同樣受到限制。 完整的「原生」應用程序意味着Symbian C++和(對於尚未出貨的設備)Qt。作爲擁有10年Symbian編程經驗的人,我可以放心地說它不在這個列表的底部,因爲它不是「當下的選擇」 - 它在那裏,因爲它的開發環境很差。 – 2010-05-18 18:18:53

0

雖然針對特定平臺開發的應用程序通常會在平臺UI一致性和性能方面獲勝,但您可以嘗試使用其中一種可用的多平臺框架,例如Rhodes(僅舉一例)。就我個人而言,我對Rhodes沒有任何具體的經驗,並且在幾天前才瞭解它(仔細觀察仍然在我的待辦事項列表中),所以請評估框架在您自己的不同設備上提供的用戶體驗。

1

我想爲Maemo/Meego(諾基亞/英特爾的移動Linux)說話。雖然它處於轉型階段,目前Maemo 5只有一款優秀的手機(以及一些便宜的中國手機),但我覺得它很快就會變得很大(我喜歡很多人認爲Meego將成爲諾基亞的高端戰略諾基亞是全球最大的手機制造商)。另外N900是最酷的手機。

另外他們基本上是一個開放的Linux設備(非常類似於標準桌面Linux)。 ide QT Creator非常好且跨平臺(附帶嵌入式可視化設計器和漂亮的文檔broser),但您不必使用它,有一些支持使用您自己的文本編輯器或ide。

沒有一種簽名的關鍵廢話(我做了一個黑莓的學生項目,並已被鍵非常惱火)。我不喜歡黑莓的其他內容:windows只有eclipse插件,我們的團隊在解決如何將第三方庫添加到黑莓COD檔案時遇到了很多麻煩。還有一些類在很多方面有些稀疏,特別是String/Char,可能是因爲它基於ME,我也不喜歡文件讀/寫apis,它感覺有些尷尬,可能因爲黑莓應用程序最近纔得到存儲文件的能力(在你只能通過持久層存儲/檢索對象到磁盤之前)。

首選語言是(目前Gobject C但Meego更少),Qt風格的C++和python。圖書館很好,而且qt的文檔尤其好。由於它是一個小巧的Linux系統,你可以在設備上進行調試(也有一個仿真器)。

注意我沒有爲Maemo/Meego開發過任何東西,但我已經閱讀了很多內容並且只是愛上了它。

1

我認爲最好的解決方案可能是從智能手機優化的網站開始。本地應用可以提供更豐富的界面,但精心設計的網絡應用可以接近並且可以在任何設備上運行。

查看WPTouch,查看非常好的手機優化網站示例。

1

爲了配合Roman A. Taycher,我想提高我對windows Mobile/Windows Phone的支持。它有一個很大的安裝基地,它具有經過驗證的真正的Visual Studio工具集,它具有最好的模擬器(它實際上模擬ARM指令集 - 你聽到的是Apple?),並且可以利用你的Win32體驗。

MS-haters - 請不要打擾回覆。我已經聽到了他們。

1

跨平臺的運行時間,如Qt或HTML5都是很好的賭注,並且是可移植的。

Qt支持包括Symbian,Meego,Linux,Windows等在內的多種平臺,它被認爲是目前最好的編程框架之一。

Qt的創造者也是一個非常重視的IDE。

當然HTML幾乎可以被訪問,並且那裏可能有大量的工具。

0

聽起來你需要移動社區框架(MCF)。它是在所有現代智能手機平臺(iPhone,Android,Blackberry,Symbian,WinMo--除J2ME之外幾乎所有您提到的)上開發以網絡爲中心,位置和接近感知的應用程序的跨平臺框架。它爲所有這些平臺提供本地二進制文件。MCF的開發時間可以縮短,因爲您不需要自己編寫所有這些網絡內容,但是您可以使用簡單的API通過Wi-Fi ad-hoc模式或通過Wi-Fi ad-hoc模式通過已加密的連接發送任意數量的數據特殊的代理服務器。

更多信息在http://www.uvamobiltec.com