Мы используем несколько различных типов рекламных сетей, для которых нам нужно написать собственные привязки Java. Поскольку Google создал новый «рекламный» идентификатор, все эти библиотеки теперь зависят от сервисов Google Play.
Проблема в том, что я не могу правильно собрать эти связывающие проекты после получения их последних версий. Я получаю сообщение об отсутствии классов, если не добавляю google-play-services.jar
(из моей папки extras
в моем Android SDK) в качестве Reference Jar
в проект.
После добавления файла jar сервисов воспроизведения я получаю новую ошибку:
missing class error was raised while reflecting com.somepackage.SomeClass : com/google/android/gms/common/GooglePlayServicesRepairableException : Unsupported major.minor version 51.0 JARTOXML
Эта ошибка обычно означает, что библиотека использует Java 7 (не поддерживается Xamarin) из того, что я читал. Что я могу сделать, чтобы исправить эти обязательные проекты?
1 ответ
Проблема в том, что Xamarin использует JDK 1.6, когда ваша библиотека была скомпилирована с JDK 1.7.
Чтобы обойти это, сначала установите 32-разрядную версию JDK 1.7. Затем в папке Progrm Files (x86) \ Java переименуйте папку jdk1.6 в _jdk1.6.
Теперь при запуске Xamarin он найдет папку JDK 1.7 и будет использовать ее. Пока у меня не было проблем с созданием приложений с помощью Xamarin и JDK 1.7.
Надеюсь это поможет.
Похожие вопросы
Новые вопросы
android
Android — это мобильная операционная система Google, используемая для программирования или разработки цифровых устройств (смартфонов, планшетов, автомобилей, телевизоров, одежды, очков, IoT). Для тем, связанных с Android, используйте теги, специфичные для Android, такие как android-intent, android-activity, android-adapter и т. д. Для вопросов, отличных от разработки или программирования, но связанных с Android framework, используйте эту ссылку: https://android .stackexchange.com.