2012-01-16 17 views
0

我知道Appcelerator和Phonegap在爲Android和iOS創建跨設備/平臺應用程序方面的差異。我相信Appcelerators的一個優勢是它可以訪問設備的API,如果我錯了,請更正我的問題,但Phonegap是否也能訪問設備的API?我的問題是,如果他們兩人都可以訪問設備的API,那麼Appcelerator在API覆蓋方面對Phonegap有什麼優勢? Apple和Android設備的哪些原生API可以通過Appcelerator訪問哪些Phonegap無法訪問?Apple和Android設備的哪些本機API可以Appcelerator訪問哪個Phonegap不能?

+0

這兩個平臺都不斷向其API添加新功能。所以對此沒有明確的答案。他們都有*很多*覆蓋。 – 2012-01-16 13:53:22

+0

@topener截至其最新版本,其中兩者在本地api訪問方面優於其他版本。這兩種技術都很好,我只是好奇,因爲我還沒有發現他們的本地API支持之間的深入比較。 – royjavelosa 2012-01-16 16:10:21

回答

2

對於典型的PhoneGap應用程序,您試圖模仿JavaScript中的本地GUI元素,最有可能使用Sencha Touch框架。但是,使用Titanium(Appcelerator是公司,Titanium是產品),則使用本機GUI元素。

要回答你的問題,當你在PhoneGap中開發一個簡單的應用程序時,你並沒有使用本地表格視圖,選項卡視圖,圖像視圖等。相反,你使用的JavaScript試圖模仿這些控制。因此,即使是最簡單的情況,您也不會在PhoneGap中使用本機API。

+0

我相信用戶界面部分是真實的,但相機控制,音量控制,地圖,sqlite集成等如何?這些功能不需要phonegap訪問設備本地API? – royjavelosa 2012-01-16 16:00:05

+1

@royjavelosa這些API也可以在Titanium上使用。不確定,但它甚至可以在鈦上更快,因爲它是原生的,而不是模仿。 – 2012-01-16 16:14:49

0

考慮到您可以使用PhoneGap爲Android或iOS編寫自己的本機代碼,但我認爲API覆蓋範圍方面沒有實際限制,除了開箱即用的代碼外。我剛寫完PhoneGap的一個插件,它允許我在Android上訪問方向陀螺(即偏航,俯仰,滾動),因爲它沒有。由於PhoneGap在初始化時觸發你的類,所以你可以在執行super.loadUri語句之前/之後注入任何你需要的代碼。

PhoneGap只是一個包裝器,通過自動在無鉻瀏覽器中加載html文件,然後監聽從瀏覽器返回到本機代碼的特定請求,可以更輕鬆地將表示層與本機設備代碼分開即PhoneGap附帶的插件)。您可以自由地在PhoneGap包裝器中添加其他本地代碼。

+0

這些是我們都知道phonegap和其他移動Web框架支持的基本原生API,我感興趣的是那些脫離了Phonegap和Titanium的範圍。是否沒有文檔列表中的兩個不支持的本地API或至少是比較? – royjavelosa 2012-01-18 00:56:25

相關問題