2016-09-20 77 views
12

我在街景應用程序中使用Google Cardboard。我希望能夠創建一個鏈接,將用戶直接發送到街景應用程序以查看特定位置。谷歌街景應用程序的URL方案(不是谷歌地圖)

在街景應用程序我可以從一個位置的鏈接,如果它的應用程序中的功能的位置,它產生的作品完美,看起來像這樣的鏈接: http://www.google.com/maps/streetview/#us-highlights/faneuil-hall-boston

如果它不是一個有特色位置,它生成的URL是不同的,在谷歌地圖中打開,而不是街景服務應用程式,看起來像這樣: https://www.google.com/maps/@/data=!3m4!1e1!3m2!1s7lx0Oz8OSTwIweRXw7eNiA!2e0

是否有可能創建一個街景服務應用程序打開該ISN」一個網址一個特色的位置。如果是這樣,過程/格式是什麼?

+0

您可能想要通過https://developers.google.com/maps/documentation/streetview/調查Google街景視圖API文檔。我記得,我必須從Google獲取密鑰才能放入URL請求(請參閱https://developers.google.com/maps/documentation/streetview/get-api-key) – GlennRay

+0

希望就是這樣。我需要該網址才能在街景應用中打開特定位置,而不是以街景模式在Google地圖中打開特定位置。看起來像一個微小的差異,但在我的使用情況,使所有的差異。 – davevsdave

+0

這是打開應用程序的URL:'[NSURL URLWithString:@「streetview://」]'..所以也許你可以添加一個位置,比如:'[NSURL URLWithString:@「streetview:// ?location = 45.332331%2C-27.031219「]' – TonyMkenu

回答

3

您可以通過設置mapmode參數街景推出谷歌地圖的街景與comgooglemaps URL方案模式的iOS應用。

目標C

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"comgooglemaps://"]]) { 

     [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"comgooglemaps://?center=46.414382,10.013988&mapmode=streetview"]]];  
    } 

斯威夫特4個

if UIApplication.shared.canOpenURL(URL(string: "comgooglemaps://")!) { 


    guard let url = URL(string: "comgooglemaps://?center=46.414382,10.013988&mapmode=streetview") else { 
      return //be safe 
     } 

    if #available(iOS 10.0, *) { 
     UIApplication.shared.open(url, options: [:], completionHandler: nil) 
    } else { 
     UIApplication.shared.openURL(url) 
    } 

} 

&更多的細節在這裏Google Streetview

+1

感謝您的回答。不是我想要做的。如果您重新閱讀我的問題,我想在街景應用中打開一個特定位置,而不是在街景模式下打開谷歌地圖。我知道這看起來有點不同,但它在我的用例場景中有所不同。 – davevsdave

+0

@davevsdave你有沒有找到任何解決方案。同樣的情況要打開谷歌街景應用程序不地圖應用程序 –

+0

@AjaySinghThakur對不起,我從來沒有找到一個解決方案。如果你遇到一個解決方案,讓我知道。我們可能需要提出一個功能請求才能做到這一點。 – davevsdave