Я хочу, чтобы получить longitude
и latitude
телефонного мобильного по этому коду:SecurityException возникает при попытке использовать JSR-179
public void commandAction(Command com, Displayable d) {
if (com == position)
{
try
{
Criteria cr = new Criteria();
cr.setHorizontalAccuracy(500);
LocationProvider lp = LocationProvider.getInstance(cr);
// get the location, one minute timeout
Location l = lp.getLocation(60);
Coordinates coords = l.getQualifiedCoordinates();
if (coords != null)
{
double longitude = coords.getLongitude();
double latitude = coords.getLatitude();
String sLong = String.valueOf(longitude);
String sLat = String.valueOf(latitude);
Tlongitude.setString(sLong);
Tlatitude.setString(sLat);
}
} catch (LocationException ex) {
Tlongitude.setString("LocationException");
Tlatitude.setString("LocationException");
} catch (InterruptedException ex) {
Tlongitude.setString("InterruptedException");
Tlatitude.setString("InterruptedException");
}
}
}
Проблема заключается в том, что при нажатии на команду «позиции», то предупреждение системы показано: java.lang.SecurityException : Application not authorized to access the restricted API
.
Итак, что мне делать?
В ответ на ваш ответ описывается, как остановить эти сообщения от эмулятора, но вы не делаете то же самое в реальном устройстве. – Lucifer
К сожалению, разработчики java-me обычно не имеют доступа к политикам безопасности реальных устройств. Все, на что вы можете надеяться, - это документация от производителя или оператора мобильной сети о том, какой домен безопасности принадлежит функциональной группе (документация Nokia достаточно приличная). как правило, сторонние разработчики вынуждены прибегать к проб и ошибок, чтобы понять это. –
согласен, но окончательное решение - только сертификат подписи. – Lucifer