Android Sygic намерение
Я следовал инструкциям на http://dev.sygic.com/documentation/custom-url-schema/ & http://help.sygic.com/entries/22207668-Developers-Only-Sygic-implementation-to-your-app-Android-SDK-iPhone-SDK-Url-Handler-
Я передаю координаты Sygic 12.991030334592057 как широту и 77.80791163444519 как долготу.
Другой com.sygic.aura:// координат |12.9138|77.6680| диск
Однако Sygic говорит: "Координаты находятся за пределами карты".
String str = "http://com.sygic.aura/coordinate|" + latitude + "|"
+ longitude + "|" + type.toString();
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(str)));
Я тоже пробовал
String str = "com.sygic.aura://coordinate|" + latitude + "|"
+ longitude + "|" + type.toString();
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(str)));
РЕДАКТИРОВАТЬ: тип enum. type.toString показывает диск как строку.
Что я делаю неправильно?
2 ответа
Получил ту же проблему. Как говорил Энли, порядок значений параметров lat,lon противоположен. Этот код работал для меня:
String str = "com.sygic.aura://coordinate|" + lon + "|" + lat + "|" + type.toString();
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(str)));
в моем телефоне этот пример вызова запустил sygic и запустил навигацию:
com.sygic.aura://coordinate|-3.588678|37.176278|drive
Надеюсь, поможет
В вашем коде нет ничего плохого. Вы убедились, что эти значения долготы и широты верны? С каким приложением вы получили эти координаты?
Я работал над тем же кодом сегодня, и кажется, что я использовал долготу в точке широты и наоборот. Попробуйте поменять координаты. Это сработало для меня, когда я был в той же лодке, что и ты. Если это не так, убедитесь, что у вас есть карты Sygic для этого местоположения, вручную перейдя к этому местоположению, перейдя к этому местоположению из Меню> Перейти к... > GPS-координаты.