2013-03-22 2 views
0

Я довольно новичок в разработке Android. Я пытаюсь понять, как реализовать Карты на устройстве Froyo. К сожалению, в книгах, в которых я использую все ссылки, используется MapActivity во всех их примерах и связанных классах/методах (например, MapView). Итак, вот мои вопросы:Использование MapActivity с Android API 8

1) Насколько я понимаю, MapActivity (и связанные классы) недоступны до Honeycomb (даже с поддержкой библиотеки). Это верно?

2) Если они недоступны, то, вообще говоря, как вы обходите эту проблему? (например, есть ли доступная альтернативная библиотека поддержки, которая позволяет использовать MapViews на устройстве Froyo?

3) Я изо всех сил пытаюсь узнать, как лучше всего изучать API-карты, учитывая, что у меня есть только устройство Froyo? Обычно мой подход состоял в том, чтобы использовать эмулятор, чтобы сначала изучить API-интерфейс карты на устройстве Honeycomb +, а затем выполнив это, я бы понял, как «перевести», чтобы он работал на устройстве Froyo.

К сожалению, использование эмулятора с API-интерфейсом v2 невозможно (насколько я знаю), и я не в состоянии обновить свой телефон до устройства Android, работающего на Honeycomb +. Затем вы добавляете сложность недавнего «сдвига» Google от v1 to v2 Map API (который мои книги даже не ссылаются), и теперь у вас есть то, что кажется очень сложной кривой обучения.

Любые общие предложения о том, как лучше всего изучить API-интерфейс карты, учитывая мои обстоятельства (новые для MAP API, нет устройства Honeycomb +, нет книг, которые, похоже, охватывают эту тему и т. Д.)? BTW Я предпочитаю использовать ресурсы, отличные от Google, как и мои первые, потому что я считаю, что документация Google минималистична и лишь незначительно полезна, когда вы впервые пытаетесь научиться чему-то.

Заранее спасибо.

ответ

0

Вы можете использовать Google Map V2 в Froyo. Для реализации карты V2 в Froyo внесено несколько изменений.

Сначала пройти через это руководство для реализации Google Map V2: Map V2

Шаги изменения в целях реализации Карта V2 в Froyo:

  • использование SupportMapFragment вместо MapFragment в XML.

  • использование MMAP = ((SupportMapFragment) getSupportFragmentManager() findFragmentById (R.id.map).) GetMap().

вместо

MMAP = ((MapFragment) getFragmentManager() findFragmentById (R.id.map).) GetMap().

+0

Карн, большое спасибо за ответ. Я знаю, что вы можете использовать Google Map v2 в Froyo ... и с тех пор мне стало известно о ваших предложениях выше ... использование фрагментов поддержки ... однако мой ключевой вопрос был связан с MapActivity, но более конкретно MapViews, и он разнообразен методы (например, mapView.setSatellite(), mapView.setTraffic(), mapView.getMaxZoomLevel() и т. д. и т. д.). Если я не могу использовать MapViews с Froyo, как мне получить доступ к таким методам? – user2101068

+0

Кстати, когда я добавляю оператор "private GoogleMap mMap;" к моему коду я получаю ошибку «Тип GoogleMap не может быть разрешен к типу». Значит, я должен упустить некоторые баночки ???Также я получаю то же сообщение, когда я использую «SupportMapFragment» в коде согласно вашему предложению выше. Мысли/идеи? Также класс, который использует этот код, предполагает расширение «Activity» или «FragmentActivity». – user2101068

+0

Re: Проблема с GoogleMap Я смог решить эту проблему, добавив зависимость к сервисам Google Play в свой проект. Я могу разрешить «SupportMapFragment», если я продлю класс с помощью FragmentActivity, но по моему вопросу должен ли я распространяться с помощью «FragmentActivty» или «Activity» или даже «SupportMapFragment». Я могу использовать один из двух последних элементов, но это вызывает другие проблемы с компиляцией, если я их использую. Мысли? – user2101068

Смежные вопросы