Как перевести инструкции по использованию родного SDK для Android на Nativescript

Нам сложно сделать первый шаг к использованию собственной библиотеки в NativeScript.

Это библиотека карт, поэтому я предполагаю, что она как-то связана с регистрацией нового пользовательского интерфейса, но меня привлекает странный синтаксис xml.

Следующие снимки экрана взяты с этой страницы: https://developers.arcgis.com/android/latest/guide/develop-your-first-map-app.htm

Собственные инструкции для Android Studio:

введите здесь описание изображения

Зависимости (Gradle):

введите здесь описание изображения

Он также имеет странную зависимость от функций Java 8:

введите здесь описание изображения

И, наконец, базовое использование, которое, похоже, требует множества специфичных для платформы событий:

введите здесь описание изображения  введите описание изображения здесь

На данный момент нас интересует только Android Proof of Concept, но в конечном итоге мы создадим и выпустим многоплатформенный плагин.

Я знаю, что это много инструкций и вещей, которые задаются только для одного вопроса, но вот наши основные недоразумения:

1) Как добавить настраиваемый элемент в XML-файл NativeScript? Мы просто настроили импорт Gradle и просто добавили следующий элемент напрямую? Также я предполагаю, что android:id не нужен, и мы можем просто использовать id

<com.esri.arcgisruntime.mapping.view.MapView
  android:id="@+id/mapView"
  android:layout_width="match_parent"
  android:layout_height="match_parent" >
</com.esri.arcgisruntime.mapping.view.MapView>

2) Как получить доступ к указанному выше элементу по его идентификатору через Javascript? Конкретнее как получить с помощью VUE? Родной пример:

import com.esri.arcgisruntime.mapping.view.MapView;
MapView = findViewById(R.id.mapView);
ArcGISMap map = new ArcGISMap(Basemap.Type.TOPOGRAPHIC, 34.056295, -117.195800, 16); 
mMapView.setMap(map);

3) Есть ли еще какие-то шаги, которые мы должны принять во внимание? Особенно учитывая, что мы намерены в конечном итоге превратить это в полноценный плагин. Или это проще, чем я делаю?


person Mojimi    schedule 19.11.2018    source источник


Ответы (1)


Не обращайте внимания на пример XML из документации SDK, который относится к разметке XML Android.

Вам нужно создать новый класс (назовем его MapView), расширяющий базовый класс View (из tns-core-modules/ui/core/view), в экземпляре возврата обратного вызова createNativeView com.esri.arcgisruntime.mapping.view.MapView. Так и должно быть, теперь вы можете зарегистрировать класс MapView и использовать его в своем шаблоне Vue.

Полезные документы:

person Manoj    schedule 19.11.2018
comment
Я понимаю, что это инструкции по созданию настраиваемого плагина пользовательского интерфейса, но как его использовать, не создавая плагин изначально? Не могли бы вы опубликовать пример? - person Mojimi; 19.11.2018
comment
Если вы не планируете создавать подключаемый модуль, используйте заполнитель. - person Manoj; 19.11.2018
comment
Вы случайно не знаете, как использовать Placeholder с Vue? - person Mojimi; 19.11.2018
comment
Он должен быть таким же, за исключением того, что синтаксис будет таким, как вы вызываете событие во Vue. Здесь рабочий образец. - person Manoj; 19.11.2018