2011-09-09 123 views
1

我一直在做一些研究,我似乎無法找到具體的答案,我正在尋找。轉換Android應用程序到黑莓應用程序

有一個應用程序可用於Android,我想在黑莓上編譯和運行。我已經在這兩個平臺上「破解」了應用程序,但我從未將應用程序從一個平臺移植到另一個平臺。我知道API是非常不同的,其中大部分需要重新編碼,但由於我是黑客,我需要一個起點。所以我希望做的就是簡單地採用Android源代碼併爲Blackberry編譯。我知道由於某些界面項目這不起作用,但我不知道從哪裏開始這些項目。所以我的問題是:Android SDK和Blackberry SDK在界面設計方面的主要區別是什麼?有人能指點我比較(如果有的話),或者如果速度夠快,有人可以爲我突出顯示嗎?

我正在尋找端口的應用程序是由Google編寫的應用程序:http://code.google.com/p/google-tv-remote/這是一個Android應用程序。我已經回顧了源代碼,它看起來很簡單,試圖用這個代碼作爲基礎來從頭開始編寫一個新程序,但我寧願有一個類似的外觀應用程序來開始自定義,而不是構建一個全新的程序。

感謝您的任何建議。

回答

3
  1. 該應用程序是否使用任何JNI或直接硬件操作?作爲電視遙控器,我認爲它必須(但我可能是錯的)。如果您是否會面臨艱難的工作或無法完成的工作,因爲BlackBerry安全模型不允許這兩種模式。
  2. 這不僅僅是API的不同,底層的操作系統和文件結構是不同的。
  3. BlackBerry爲所有應用程序使用單個JVM,Android使用每個應用程序JVM。
  4. BlackBerry Java基於帶有擴展的J2ME,其中IIRC Dalvik基於J2SE。

對不起,如果很容易做,那麼在AppWorld中會有更多的Android應用程序副本。

+2

作爲這兩種平臺的程序員,我應該說Android與BB完全不同,我不會樂觀地認爲「簡單地採用Android源代碼併爲Blackberry編譯」。也許可以按照原樣使用一些非UI類(例如模型),但其餘所有其他應該使用其他API,方法和架構解決方案從頭開始重寫。 –

+1

點1是最重要的。從頭開始徹底重寫......也許。在我看來,這並不壞。但它取決於應用程序很多,便攜式多少。 –

0

我剛從herehere這樣做,這是相對無痛的。該應用程序非常簡單,並使用WebViews。我發現的唯一真正的區別是:

  1. JavaScript回調在Android上運行,但不在QNX/BlackBerry 10上運行,所以解決方案很糟糕 - 使用超時。
  2. BlackBerry 10對於不從主線程外部調用UI元素非常嚴格,而在Android中只有一個強烈的警告,你不應該(而你真的不應該)。

對於一個數據點,整個港口不到一天。再次,它是一個簡單的應用程序,所以YMMV。