2012-11-16 127 views
1

我已閱讀並分析了一些使用Phonegap創建應用程序的示例,並且我已經看到,如果我在Eclipse中使用模擬器工作,整個開發過程非常緩慢。快速開發應用程序Phonegap

我想也許我可以在普通的瀏覽器上開發所有JavaScript和模板的東西,非常快地調試並創建屏幕,之後,當有時間使用一些特殊的東西用於手機,如相機或數據庫,然後將整個項目複製到資產/萬維網文件夾並在那裏進行最終實施。

你有什麼事?會是這個可能,還是我錯過了什麼?

回答

2

你是對的,比如你可以..

  1. 使用HTML 5創建爲一個Web應用程序,JavaScript和CSS;
  2. 使用像jQuery Mobile這樣的庫,您將創建一個單頁的應用程序(在index.html中),jQuery Mobile將提供大量有用的手機UI功能(這將在不同的手機瀏覽器上工作 - 這意味着phonegap可以創建針對不同平臺的應用);
  3. 在瀏覽器中測試它;
  4. 將紋波仿真器添加到Chrome瀏覽器以測試手機仿真器的外觀和功能;
  5. 將其測試爲可在手機上運行的網絡應用程序;
  6. 按照您的建議,將所有網絡應用程序文件複製到www文件夾中。
  7. 現在添加phoneGap功能,構建應用程序並開始在真實手機上測試它;

我發現,通過首先開發和測試它作爲一個web應用程序,我可以更快得到用戶反饋並修復錯誤。這是快速構建電話應用程序的好方法。

+0

快我有巨大的麻煩,無論我做什麼我無法獲得大部分功能來工作..所有返回'不能調用未定義的嘟嘟聲的方法',但其中一些可以在我的手機中工作。但大多數不工作在任何地方。 –

+0

這是一個版本的問題 –

1

對於Android開發,您確實需要使用實際的設備。模擬器可以很好地適用於iOS,但是Android模擬器非常慢,並且不像實際的最終用戶體驗。

儘管您正在使用桌面瀏覽器的正確軌道 - 刷新網頁比運行完整構建要快得多。

我使用jekyll --auto --server生成應用程序HTML,因此桌面預覽始終位於http上,這使得檢測phonegap非常容易。

下面是我的應用程序的啓動代碼 - 完整的工作代碼爲https://github.com/tqc/ChondricJS/blob/master/src/app.js

if (settings.mightBePhoneGap && document.location.protocol == "file:") { 
     // file protocol indicates phonegap 
     app.isPhonegap = true; 
     app.platform = "cordova"; 
     document.addEventListener("deviceready", function() { 
      console.log("appframework deviceready"); 
      console.log(device.platform); 
      app.isSimulator = device.platform.indexOf("Simulator") > 0; 
      $(initInternal); 
     } 

     , false); 
    } else { 
     // no phonegap - web preview mode 
     app.platform = "web" 

     $(initInternal); 
    } 

在你的應用程序代碼,查app.platform所以你不要嘗試調用任何插件形成的桌面瀏覽器,不會有這些插件可用。

1

這就是NS Basic/App Studio背後的想法。它給你一個漂亮的IDE,帶有拖放設計屏幕,jQuery Mobile對象模板和公共庫。它生成一個可以在瀏覽器中測試的Web應用程序,然後使用PhoneGap選項創建應用程序。

您可以使用JavaScript編程或使用VB編寫的非常類似VB的方言。

(披露 - 我爲NS Basic工作,製作這款產品非常有趣!)

+0

的最佳解決方案,但第一行的「在Windows上開發」是我的:-) –

+0

我們在這裏是巨無霸球迷的問題,但沒有原生版本。它與Parallels,VMWare等運行良好。 – ghenne

+0

好消息!我們現在也發佈了本地Mac版本! – ghenne

0

我做的只是上傳我的所有的JavaScript文件到網絡服務器,並使用這些。

這樣,我的三星從服務器使用JS文件並上傳這些文件去得更快,然後重建並重新啓動使用PhoneGap的,你讓你的JavaScript的小變化隨時應用。

當然,這並不能處理所有的問題(嘗試不同的手機),但對我來說它的偉大工程。

不要忘了,當你準備好以後使用的本地副本,否則你永遠需要爲您的應用程序連接到互聯網,使用科爾多瓦)

相關問題