![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
XE5 Android LocationListener
MultIfleX © (2013-11-07 20:44:00)Времени доброго, дорогие участники.
Сижу разбираюсь в пятой студии. Создал пустой проект мобильного приложения.
Попал ко мне "в руки" юнит Androidapi.JNI.Location. В нем нашел следующие вещи:
JLocationManager = interface(JObject)
['{42C3E256-9370-43B5-93E3-EDF5CE51FB28}']
...
end;
JLocationListener = interface(IJavaInstance)
['{D1CF3FB5-3BCB-4959-98D7-BD4D8F93D839}']
...
end;
Интересно стало. Решил поискать, как же этим пользоваться... на Delphi толком ничего нет, нашел вот что:
var
locationManager : JLocationManager;
begin
locationManager := TJLocationManager.Wrap( ((SharedActivity.getSystemService(TJContext.JavaClass.LOCATION_SERVICE)) as ILocalObject).GetObjectID);
... и вот тут, у locationManager есть метод, который позволяет стартовать "слушалку":
requestLocationUpdates(provider: JString; minTime: Int64; minDistance: Single; listener: JLocationListener); cdecl; overload;
не понятно как создать класс с привязкой к JLocationListener, чтоб он получал сообщения о локациях.
пробовал так:
TMyLListener = class (TJLocationListener)
procedure onLocationChanged(location: JLocation); cdecl;
procedure onProviderDisabled(provider: JString); cdecl;
procedure onProviderEnabled(provider: JString); cdecl;
procedure onStatusChanged(provider: JString; status: Integer; extras: JBundle); cdecl;
end;
....
...
tml := TMyLListener.Create;
locationManager.requestLocationUpdates( TJLocationManager.JavaClass.GPS_PROVIDER, 1000, 0, tml );
вываливается с ошибкой на tml := TMyLListener.Create;
Есть соображения у кого нибудь по этому поводу?
Djalma (2013-12-19 16:35:00) [1]good day
I'm trying to use the API in android Delphi XE5 more when it arrives in the Create method TJLocationListener class, it can not create the error.
btf (2013-11-10 20:04:00) [2]Просто так все там не получится. Нужно писать наследник от LocationListener на жабе, потом импортировать сию обертку в Delphi (через JNI), потом уже этот Listener передавать в requestLocationUpdates. Короче, геморрой еще тот.
MultIfleX (2013-11-08 05:12:00) [3]
> не понятно как создать класс с привязкой к JLocationListener,
> чтоб он получал сообщения о локациях.
> Есть соображения у кого нибудь по этому поводу?
Туповатый (2013-11-08 00:38:00) [4]Вопрос-то в чем?
MultIfleX (2013-11-07 20:48:00) [5]С чего началось - попробовал LocationSensor - он даже в "родных" демках студии не стартует GPS (значок не начинает мигать), и координаты соответственно не получает (проверял под открытым небом - не работает). Мне этот факт показался предельно досадным, и я решил поковыряться в нативном апи...