java.lang.NoClassDefFoundError: com.google.android.gms.R$styleable, только если фрагмент карты присутствует в файле макета

Я получаю эту ошибку только, когда мой файл макета содержит фрагмент карты, подобный указанному ниже, как описано в документы API Android v2, включая варианты, т.е. указание имени класса в атрибуте android:name и т. д.

<fragment
android:id="@+id/places_map"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.SupportMapFragment"/>

Однако я не получаю эту ошибку, когда добавляю фрагмент программно, т.е. Когда я создаю объект SupportMapFragment в коде и добавляю его в элемент «контейнер фрагментов» в файле макета.

Тот факт, что он работает при программном добавлении, позволяет мне исключить ошибки «создания пути», как это предлагается в большинстве предлагаемых решений на SO, и я также тщательно выполнял шаги, снова и снова, т.е. добавление сервисов google play в качестве проекта, указав его в свойствах -> Android -> проект (у меня есть зеленая галочка) и не добавление сервисов google play в виде jar и т. д..

У кого-нибудь была эта конкретная проблема? Особенно проблема «работает при программном добавлении» и «не работает при добавлении в качестве элемента фрагмента в файл макета»?

С уважением


person 371c    schedule 27.06.2013    source источник
comment
В случае добавления фрагмента карты в макет, надеюсь, вы используете приведенный ниже код 'Карта GoogleMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)) .getMap();' для создания объекта карты Google, и этот код должен быть внутри или после onResume()   -  person tony m    schedule 27.06.2013
comment
Да я именно так и делаю. Однако ошибка возникает при вызове метода setContentView(layout) из-за того, что файл макета содержит фрагмент карты.   -  person 371c    schedule 28.06.2013
comment
То же самое происходит со мной. Вы исправили? Я использую Android Studio. Я пробовал все безуспешно. Нет ошибок во время компиляции.   -  person Mitch Bukaner    schedule 31.08.2013


Ответы (1)


У меня была та же проблема, после долгих переходов туда и обратно я скомпилировал модуль google_play_services, и вдруг все заработало. Попробуйте и дайте мне знать, если это сработало

person Diego    schedule 20.07.2013