- PVSM.RU - https://www.pvsm.ru -

Xamarin.Android: плагин к VS2013 для редактирования aXML в IntelliJ IDEA или Android Studio

Xamarin предлагает неплохие средства для проектирования интерфейса iOS (интеграция с XCode). Однако то, что касается Android, вызывает уныние и печаль – никаких подсказок для редактирования xml (хотя, говорят, в каком-то виде они есть) и слабенький дизайнер. На юзервойсе и форуме народ давно уже просит интеграцию с Android IDE.

Xamarin.Android: плагин к VS2013 для редактирования aXML в IntelliJ IDEA или Android Studio - 1

Некоторые научились копировать ресурсы в Android проект, созданный в IDEA, Android Studio, etc. И потом копировать назад изменения в Xamarin проект. Я немного устал от этой процедуры и решил это автоматизировать при помощи плагина, который бы синхронизировал папку Resources между Xamarin и IDEA (Android Studio или любая другая IDE с поддержкой gradle) проектами. К счастью, мне не пришлось писать синхронизатор между папками (или делать хард-линки, требующие админские права), т.к. через gradle можно указать абсолютный путь к папке с ресурсами:
Xamarin.Android: плагин к VS2013 для редактирования aXML в IntelliJ IDEA или Android Studio - 2

Дальше спотыкаемся на том, что Android IDE требует, чтобы все ресурсы были в нижнем регистре и расширение axml было преобразовано в xml (Xamarin смирится с такими требованиями). Ну а теперь дело техники – написать плагин к Visual Studio. А это дело очень нехитрое, описывать не буду ибо talk is cheap — show me the code [1]. Таким образом, алгоритм плагина следующий:

  1. Пользователь выбирает axml/xml который хочет отредактировать и вызывает контекстное меню:
    Xamarin.Android: плагин к VS2013 для редактирования aXML в IntelliJ IDEA или Android Studio - 3
  2. Предлагаем пользователю указать путь до IDE и, если нужно, изменить шаблон пустого Android проекта.
    Xamarin.Android: плагин к VS2013 для редактирования aXML в IntelliJ IDEA или Android Studio - 4
  3. Под разрешением пользователя, переводем все ресурсы из папки Resources в нижний регистр и заменяем axml на xml.
  4. Копируем шаблонный андроид проект во временную папку, изменяем в gradle.build путь до папки ресурсов Xamarin проекта.
  5. Запускаем Android IDE с ключом = путь к проекту (в идеале хотелось бы ещё и чтобы открывался нужный файл, но пока у меня это не получается).
    Xamarin.Android: плагин к VS2013 для редактирования aXML в IntelliJ IDEA или Android Studio - 5
  6. ????
  7. PROFIT!!! Имеем прекрасный дизайн-тайм с крутым автокомлитом и все изменения в Android IDE автоматически сохраняются в нашем Xamarin проекте.

Плагин можно поставить через ToolsExtensions and Updates — ввести «XamarIDEA». Ссылка на вебморду — тыц [2].
Ссылка на исходный код — тыц [1](пулл-реквесты категорически приветствуются!) :-).
Надеюсь, кому-нибудь это поможет, так же как и мне.

Автор: Nagg

Источник [3]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/razrabotka-pod-android/74760

Ссылки в тексте:

[1] code: https://github.com/EgorBo/Xamaridea

[2] тыц: https://visualstudiogallery.msdn.microsoft.com/9f5a516a-f4d0-4228-9d25-d0273abebf33

[3] Источник: http://habrahabr.ru/post/243435/