#android #here-api
#Android #здесь-api
Вопрос:
Я начал изучать HERE API для действий, связанных с картой, на Android. Я начал с примера HelloMap, приведенного на GitHub: https://github.com/heremaps/here-sdk-examples/tree/master/examples/latest/explore/android/HelloMap
Однако после вставки моего key_id и key_secret и после добавления aar 4.5.0 в папку libs я не могу выполнить пример в своем эмуляторе.
В моем журнале выполнения я вижу несколько исключений / проблем:
E/HttpClient: HttpClient::HttpTask::run exception: java.net.ProtocolException: OPTIONS does not support writing
W/System.err: java.net.ProtocolException: OPTIONS does not support writing
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.initHttpEngine(HttpURLConnectionImpl.java:327)
W/System.err: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:123)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getOutputStream(HttpURLConnectionImpl.java:257)
...
D/NetworkAndroid: 09:37:26.432 [DEBUG] NetworkAndroid - CompleteRequest, request_id=1, uploaded_bytes=37, downloaded_bytes=0, url=https://account.api.here.com, status=-1
I/OlpClientSettingsFactory: 09:37:26.432 [INFO] OlpClientSettingsFactory - PrewarmConnection: completed for url='https://account.api.here.com', status='-1 java.net.ProtocolException: OPTIONS does not support writing'
E/HttpClient: HttpClient::HttpTask::run exception: java.net.ProtocolException: OPTIONS does not support writing
W/System.err: java.net.ProtocolException: OPTIONS does not support writing
...
W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
I/art: Rejecting re-init on previously-failed class java.lang.Class<android.support.v4.view.ViewCompat$OnUnhandledKeyEventListenerWrapper>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/view/View$OnUnhandledKeyEventListener;
at void android.support.v4.view.ViewCompat.setBackground(android.view.View, android.graphics.drawable.Drawable) (ViewCompat.java:2341)
at void android.support.v7.widget.ActionBarContainer.<init>(android.content.Context, android.util.AttributeSet) (ActionBarContainer.java:62)
Я провел тест с HERE несколько недель назад с более старой версией, и он работал нормально. К сожалению, у меня нет резервной копии этого проекта. Тем не менее, я предполагаю, что пример, приведенный на GitHub, должен работать из коробки. Я пропустил какой-либо обязательный шаг?
Если вам нужна дополнительная информация, пожалуйста, сообщите мне. Как я уже сказал, я добавил все детали, о которых я знал (aar, key_id, key_secret). Я тестировал на Windows и MAC. На обоих он не работает.
Комментарии:
1. ПРИВЕТ, мы также попытались запустить этот пример с последним файлом aar, и мы успешно смогли запустить демонстрацию. Вставленные вами журналы ошибок указывают на некоторые ошибки клиента. Не могли бы вы попробовать проверить настройки вашего эмулятора, запустив какой-нибудь другой пример.
2. Если вы видите пустой экран и приложение не сбой, то, скорее всего, ваши учетные данные недействительны. Обратите внимание, что в вашей учетной записи учетные данные показывают только идентификатор приложения и ИДЕНТИФИКАТОР КЛЮЧА. Необходимый СЕКРЕТНЫЙ КЛЮЧ отображается только один раз при первом создании. Когда вы вернетесь позже на эту страницу учетных данных на developer.here.com , вы больше не увидите СЕКРЕТНЫЙ КЛЮЧ — и, может быть, по ошибке вы скопировали вместо него идентификатор ПРИЛОЖЕНИЯ? Для версии Explore идентификатор приложения не требуется.
3. @Datasun: Спасибо, что указали на это. Я знаю об этом. Я сохранил свой секретный ключ и проверил, что используются правильные идентификаторы / ключи.
4. @HEREDeveloperSupport Спасибо за ваш отзыв. Эмулятор работает правильно для других приложений (например, пример приложений из Android Studio). Я также добавил новый эмулятор, и он выходит из строя с той же проблемой. И, как я упоминал в сообщении, на моем MAC он тоже не работает.
5. Сообщения об ошибках, приведенные выше, указывают на Android. Было бы интересно посмотреть, какую точную ошибку вы получаете на Mac. Есть некоторые минимальные требования, вы уверены, что выполнили все? Например, если я не ошибаюсь, требуется Mac OS Catalina. Кроме того, немного неясно, произошел ли у вас сбой или что-то еще. И еще одна идея, если вы считаете, что это вызвано новой версией, просто попробуйте пример со старым артефактом. Они все еще доступны.