Waze は、デベロッパーが外部 URL を介して Waze クライアント アプリケーションまたはウェブページを開くことができる API をサポートしています。この URL には、別のモバイルアプリまたはモバイル ウェブページからアクセスできます。
Waze ディープリンクに使用するベース URL は次のとおりです。
https://waze.com/ul
この URL に渡すパラメータに基づいて、Waze アプリケーションは住所を特定したり、地図上に住所をマークしたり、住所または目的地へのナビゲーション セッションを開始したりできます。
ディープリンクの仕組み
Waze がクライアント アプリとして開くか、ウェブページとして開くかは、ユーザーのシステム構成によって異なります。
- パソコン: Waze がウェブページとして開きます。
- モバイル デバイス(Waze アプリがインストールされている場合): Waze アプリが開きます。
- モバイル デバイス(Waze がインストールされていない場合): Waze がウェブページとして開きます。
Waze アプリがインストールされていることが確実な場合は、ウェブ エクスペリエンスなしでアプリ間の通信に URL「waze://」を使用できます。これは、前述のベース URL の代わりに使用されます。このオプションは、ユーザーが Waze をインストールしていることが確実な場合にのみ使用してください。そうでない場合、ユーザーがリンクをタップしても何も起こりません。
Waze ディープリンクを使用する
次の URL を使用すると、サードパーティ製アプリ、メール、SMS、ウェブページのリンクなどのソースからパラメータを指定して Waze を起動できます。
Waze ディープリンクは次の URL を使用します。
https://waze.com/ul?param_name=value[¶m_name=value]
以下に、Waze ディープリンクの一般的なタスクをいくつか示します。
場所までの経路を表示
特定の場所に移動するには:
- Waze ライブマップを開き、場所を検索します。検索ボックスにテキストを入力するか、地図を拡大して特定のセグメントをクリックします。
- 地図の右下にある共有アイコン
をクリックします。 - ダイアログが表示されます。[運転ルートを共有] をクリックし、リンクをコピーして貼り付けます。
例
次の例では、ニューヨークのタイムズ スクエアを中心とする地図を表示します。
https://www.waze.com/ul?ll=40.75889500%2C-73.98513100&navigate=yes&zoom=17
お気に入りに移動
Waze アプリに保存されている次の「お気に入り」に移動できます。
workhome
次の URL を使用して、指定したお気に入りに移動します。
https://waze.com/ul?favorite=favorite&navigate=yes
次の例では、宛先を仕事用に設定しています。
https://waze.com/ul?favorite=work&navigate=yes
検索
次の構文でアドレスを検索します。
https://waze.com/ul?q=search_terms
パラメータに渡す値は URL エンコードする必要があります。たとえば、スペースは %20 に置き換える必要があります。
次の例では、「66 Acacia Avenue」を検索します。
https://waze.com/ul?q=66%20Acacia%20Avenue
地図に表示します
次の構文を使用して、Waze の地図ビューの地図の拡大率(またはズーム)を設定します。
https://waze.com/ul?z=magnification_level
magnification_level の最小値は 6(最も近い、または最も拡大された)です。magnification_level の最大値は 8, 192(最も遠い、または最も倍率が低い)です。
次の例では、拡大率を 8 に設定しています。
https://waze.com/ul?z=8
URL パラメータ
次の表に、Waze ディープリンクで使用できるルーティング パラメータを示します。
| パラメータ | 必須かどうか | 説明 |
|---|---|---|
avoid_tolls |
省略可 | 有料道路を避けたルートを計算するかどうかを指定します。true または t に設定すると、有料道路を回避できます。有料道路を許可するには、false または f に設定します。デフォルトでは、有料道路は許可されています(false)。 |
avoid_ferries |
省略可 | フェリーを避けたルートを計算するかどうかを指定します。フェリーを避けるには、true または t に設定します。フェリーを許可するには、false または f に設定します。デフォルトではフェリーが許可されています(false)。 |
avoid_freeways |
省略可 | 高速道路を避けたルートを計算するかどうかを指定します。高速道路を避けるには、true または t に設定します。false または f に設定して、高速道路を許可します。デフォルトでは、高速道路は許可されています(false)。 |
avoid_dangerous_turns |
省略可 | 危険な曲がり角を避けるかどうかを指定します。危険な曲がり角を避けるには、true または t に設定します。危険なターンを許可するには、false または f に設定します。デフォルトでは、危険な曲がり角を避けるようになっています(true)。 |
avoid_trails |
省略可 |
未舗装道路のルート設定を指定します。サポートされている値は次のとおりです。
|
vehicle_type |
省略可 |
車両タイプを指定します。サポートされている値は次のとおりです。
|
パラメータを結合する
同じ URL でパラメータを組み合わせて使用するには、名前と値のペアを「&」で区切ります。次の例は、パラメータの組み合わせを使用する方法を示しています。
Maryhill を中心に地図を表示し、ズームレベルを 10 にするには:
https://waze.com/ul?ll=45.6906304,-120.810983&z=10
住所を検索してその住所に移動するには:
https://waze.com/ul?q=66%20Acacia%20Avenue&ll=45.6906304,-120.810983&navigate=yes
utm_source を含める
実装に utm_source を含めると、特定のパートナーに利用状況を関連付けることができます。統合に影響する問題が発生した場合、utm_source を使用してパートナーにフォローアップし、パートナー エクスペリエンスを向上させることができます。詳しくは、iOS の例をご覧ください。問題が発生した場合は、お気軽にお問い合わせください。
例
このセクションでは、Android プラットフォームと iOS プラットフォームで Waze ディープリンク API を使用する方法の例を示します。
Android の例
次のコード スニペットの例では、Waze がインストールされている場合、Waze を起動して指定された場所を検索します。Waze がインストールされていない場合は、Google Play の Waze のページが開きます。
try { // Launch Waze to look for Hawaii: String url = "https://waze.com/ul?q=Hawaii"; Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); startActivity(intent); } catch (ActivityNotFoundException ex) { // If Waze is not installed, open it in Google Play: Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.waze")); startActivity(intent); }
iOS の例
次のコード スニペットの例では、Waze がインストールされている場合は緯度/経度に移動し、インストールされていない場合は App Store を起動して Waze をインストールします。
- (void) navigateToLatitude:(double)latitude longitude:(double)longitude { if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"waze://"]]) { NSString *bundleIdentifier = NSBundle.mainBundle.bundleIdentifier; // Waze is installed. Launch Waze and start navigation NSString *urlStr = [NSString stringWithFormat:@"https://waze.com/ul?ll=%f,%f&navigate=yes&utm_source=%s", latitude, longitude, bundleIdentifier]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr]]; } else { // Waze is not installed. Launch AppStore to install Waze app [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://itunes.apple.com/us/app/id323229106"]]; } }
iOS SDK 9.0 以降でコンパイルする場合は、アプリケーションのプロパティ リスト ファイルを次のように更新して、Waze を含める必要があります。
<key>LSApplicationQueriesSchemes</key> <array> <string>waze</string> </array>