2012-12-11 27 views
0

我正在開發一個小型應用程序,主要用於自我教育目的,我決定在HTML/JS中編寫應用程序,並使用phonegap將其轉換爲「本機」應用程序。Phonegap - 在網站上使用它

這一切都工作得很好,我已經在我的手機上成功安裝了HelloWorld應用程序。

除了作爲本機應用程序,我還希望使用瀏覽器在互聯網上提供我的項目。以便我的用戶可以訪問瀏覽器中的網址或下載並安裝應用程序。

所以我的問題:

是否有可能在一個標準的網站上使用的PhoneGap及其API在線?這意味着我可以使用phonegaps功能來訪問地理位置。

否則,我將不得不改變我的JavaScript代碼,而不是在網站上使用phonegap。

回答

1

對不起,我不相信這是行得通的。你可以嘗試的是將你所做的任何呼叫與支票一起打包,看看你是在手機上還是在瀏覽器中,然後根據它進行切換。這會迫使你將你的代碼從電話號碼&分離出來,創造出良好的界限。

我用這個,這是不完美的(特別是如果用戶vists在自己的移動瀏覽器您的網站),但它是一個開始:

//jquery - for working in browser 
    $(document).ready(function() { 
    if (!navigator.userAgent.match(/(iPhone|iPod|iPad|Android|BlackBerry)/)) { 
     console.log("we are in a browser"); 
    } 
    }); 

    //phonegap - for working in app 
    function onDeviceReady() { 
    console.log("we are an app"); 
    } 

    function onBodyLoad() { 
    document.addEventListener("deviceready", onDeviceReady, false); 
    } 
+0

我第二次反饋。我其實已經做了這件事。我創建了一個「IsPhoneGapAvailable()」函數,我可以隨時調用某個特定於PhoneGap的東西。如果該方法返回false,那麼我知道我在瀏覽器上,並且必須正確操作。 (即沒有相機等) – Anthony

1

與提供的功能的的PhoneGap /科爾多瓦API的關係在設備上,因此無法通過「正常」網站。

但是,在您使用的示例中,地理位置爲而不是 PhoneGap/Cordova特定,它是W3C規範,適用於大多數現代瀏覽器,因此您可以使用該規範。