Библиотека Google Maps
Регистрация привилегии
Вы можете использовать в своем приложении электронные карты Google Maps. Отправив на сервер Google координаты (широту и долготу), а также масштаб, мы получим глоданные, которые можно визуализировать в элементе управления canvas. Чтобы упростить процедуру кодирования предлагается библиотека MapView.h.
Создайте новый пример 'MapViewEx.' Добавьте привилегию http://tizen.org/privilege/internet.
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <manifest xmlns="http://tizen.org/ns/packages" api-version="2.3" package="org.example.mapviewex" version="1.0.0"> <profile name="mobile"/> <ui-application appid="org.example.mapviewex" exec="mapviewex" multiple="false" nodisplay="false" taskmanage="true" type="capp"> <label>mapviewex</label> <icon>mapviewex.png</icon> </ui-application> <privileges> <privilege>http://tizen.org/privilege/internet</privilege> </privileges> </manifest>
Копирование библиотечных файлов
Компания Samsung предлагает библиотеку MapView.h и два графических файла (NULL.PNG и white.PNG). Библиотеку скопируйте в папку /inc. В папке /res создайте папку /images и скопируйте туда графические файлы.
Создание элемента управления MapView
Откройте файл исходного кода и внесите изменения в начале файла.
#include "mapviewexsample.h" #include "MapView.h" #define START_LATITUDE 54.7333333 #define START_LONGITUDE 55.966666 typedef struct appdata { Evas_Object *win; Evas_Object *conform; Evas_Object *label; } appdata_s;
MapView.h — это библиотека предоставляемая Samsung для просмотра карт.
START_LATITUDE и START_LONGITUDE — это координаты города Уфы, вы можете ввести свои координаты. Добавьте код в функцию create_base_gui().
/* Label*/ /*ad->label = elm_label_add(ad->conform); elm_object_text_set(ad->label, "Using of Google Maps"); evas_object_size_hint_weight_set(ad->label, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_object_content_set(ad->conform, ad->label); evas_object_show(ad->label);*/ create_map(ad->conform, START_LATITUDE, START_LONGITUDE); /* Show window after base gui is set up */ evas_object_show(ad->win);
create_map(Evas_Object *, double, double) — это функция, которая создает элемент управления MapView widget. Ее параметры следующие: контейнер и координаты (широта и долгота). Запустите проект.