API Navitel Navigator
Navigace podporuje zpracování následujících možnostíz externích aplikací:
- Zobrazení mapy v daném bodu
- Vytvoření trasy k danému bodu, který je definován souřadnicemi
- Vytvoření trasy k danému bodu, který je definován jménem
1. Zobrazení bodu
Intent.ACTION_VIEW
se schématem URI geo (rfc5870).
Formát schématu lze najít na: https://en.wikipedia.org/wiki/Geo_URI_scheme
Parametry:
in:Uri:string–řetězec ve formátu: zeměpisná šířka, zeměpisná délka, nadmořská výška, kde:
zeměpisná šířka–formát float, od -90 do 90
zeměpisná délka–formát float, od -180 do 180
nadmořská výška–formát float
Příklad použití:
Intent mapIntent = new Intent(Intent.ACTION_VIEW, intentUri);
mapIntent.setPackage("com.navitel");
if (mapIntent.resolveActivity(getPackageManager()) == null) {
// Navitel is not installed, open the page in the market
mapIntent = new Intent(Intent.ACTION_VIEW);
mapIntent.setData(Uri.parse("market://details?id=com.navitel"));
}
startActivity(mapIntent);
2. Vytvoření trasy k danému bodu, který je definován souřadnicemi
Intent.ACTION_VIEW
se schématemgoogle.navigation Parametry:
in:Uri:string–řetězec typu google.navigation: ll = zeměpisná šířka,zeměpisná délka, kde:
zeměpisná šířka – formát float, od -90 do 90
zeměpisná délka - formátfloat, od -180 do 180
Příklad použití:
Intent routeIntent = new Intent(Intent.ACTION_VIEW, intentUri);
routeIntent.setPackage("com.navitel");
if (routeIntent.resolveActivity(getPackageManager()) != null) {
// Navitel is not installed, open the page in the market
routeIntent = new Intent(Intent.ACTION_VIEW);
routeIntent.setData(Uri.parse("market://details?id=com.navitel"));
}
startActivity(routeIntent);
3. Vytvoření trasy k danému bodu, který je definován jménem
Intent.ACTION_VIEW
se schématemnavitelApi: navigate / to / waypoint
Parametry:
in:Uri:string–řetězec typunavitelApi: navigate / to / waypoint / name, kde:
Name:string–řetězec se jménem cílového bodu
Příklad použití, trasa k cílovému bodu Domů:
Intent routeIntent = new Intent(Intent.ACTION_VIEW, intentUri);
routeIntent.setPackage("com.navitel");
if (routeIntent.resolveActivity(getPackageManager()) == null) {
// Navitel is not installed, open the page in the market
routeIntent = new Intent(Intent.ACTION_VIEW);
routeIntent.setData(Uri.parse("market://details?id=com.navitel"));
}
startActivity(routeIntent);