Androidアプリでは、「ハイウェイを避ける」を選択してルートモードでGoogleマップを起動しようとしています。「ハイウェイを避ける」道順モードでAndroidのGoogleマップを起動
このコードを使用して、私は「高速道路を使用しない」とターンバイターンモードでGmapsを起動することができます。
public void openMapsApp(String destinationCoords)
{
Uri gmmIntentUri = Uri.parse("google.navigation:q="+destinationCoords+"&avoid=h");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
startActivity(mapIntent);
}
をしかし、私は方向モードでGmapsを起動したい、ターンバイターンないナビゲーションモード。私はユーザーが最初にナビゲーションモードを終了することなく目的地をすばやく変更できるようにしたいので、これを実行したいと思います。
これを行うことで私の試みで、私は1つの行を変更:
Uri gmmIntentUri = Uri.parse("https://maps.google.com/?saddr=My+location&daddr="+destinationCoords+"&dirflg=h");
そして、これは方向モードにGmapsを起動しません。しかし、いくつかの奇妙な理由により、dirflg=h
の動作が停止します。このURLは、ウェブブラウザで開いたときに 'ハイウェイを避ける'ように設定していますが、何らかの理由でGmapsを起動しても表示されません。
私のアプリでは、dirflg=w
やdirflg=r
のような別の値を使用すると、それぞれ歩行方向と経由方向でGmapsを起動します。 dirflg=h
しか動作しません。
誰もが考えている?
私は 'dirflg = dh'を使って解決しました。 – TerryT