2013-03-05 61 views
2

我有一個html頁面,顯示從當前位置到某個地址的路線。我可以在Android瀏覽器中只使用JavaScript來啓動一個intent嗎?

我想這樣做,但使用地圖應用程序,而不是在瀏覽器中顯示它。

當我使用:

<script> 
    document.location = "geo:0,0?q=myaddress"; 
</script> 

這工作正常,但不告訴我的路線。

我從這個閱讀:

String url = "http://maps.google.com/maps?saddr=some+address&daddr=another+Address" 
Intent intent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse(url)); 

我也能這樣做只是使用javascript:Android Google Directions Service usable natively? with wrapper framework? Public transit/biking directions available?

應該使用此代碼是可能的嗎?

回答

3

Android是能夠檢測瀏覽器鏈接到谷歌地圖和重定向Intent到自帶谷歌地圖應用,如果它被設置爲默認應用程序。但是,無法強制用戶使用Google地圖應用。點擊鏈接也可以向他展示活動選擇器或在瀏覽器中打開Goog​​le地圖。它也可能會打開一個註冊的第三方應用程序,以處理相同的Intent。您發佈的代碼片段的行爲也完全如此。

這不僅適用於瀏覽器,還適用於系統中的所有鏈接。例如,我將通過電子郵件發佈的鏈接發送給自己,並在我的手機上點擊它。我可以用我的Goolge地圖應用打開它。所以實際上不需要JavaScript,你可以使用簡單的HTML鏈接發送Intent

+0

我對JavaScript部分持不同意見,因爲如果應用程序未安裝,有時您需要回退,因此用戶應該能夠通過移動版本的站點執行所需的操作。 – 2015-12-11 14:16:35

-1

只需簡單地從JavaScript調用函數到Android,並在函數內部,您可以調用Android意圖。

你可以找到教程如何從JavaScript調用Android的功能:

http://android-er.blogspot.in/2011/10/call-javascript-inside-webview-from.html

,並呼籲使用谷歌V3庫中的地圖。

https://developers.google.com/maps/articles/android_v3

+0

提供的鏈接僅顯示如何讓Java API在自定義Android應用程序內的WebView中運行的JavaScript可用,但問題是如何從瀏覽器中運行的JavaScript啓動意圖。不幸的是,這並沒有真正回答這個問題。 – Nate 2013-06-17 15:51:45

相關問題