Как стать автором
Обновить
7

Xamarin *

Инструменты для кросс-платформенной разработки

Сначала показывать
Порог рейтинга
Уровень сложности

Эстетика XAML: конвертеры значений [WPF]

Время на прочтение6 мин
Количество просмотров4.8K

В статье представлены обобщённые подходы применения конвертеров значений при написании XAML-кода.

>> Читать на английском

Читать на русском
Всего голосов 9: ↑9 и ↓0+9
Комментарии0

Использование SVG ресурсов в Xamarin

Время на прочтение12 мин
Количество просмотров6.3K

При разработке мобильного приложения есть масса моментов, на которые необходимо обращать внимание. Это и выбор технологии, на которой оно будет написано, и разработка архитектуры приложения, и, собственно, написание кода. Рано или поздно наступает момент, когда костяк приложения есть, вся логика прописана и приложение , в общем-то, работает, но… нет внешнего вида. Тут стоит задуматься о графических ресурсах, которые будут использованы, поскольку графика составляет львиную долю размера итоговой сборки, будь то .apk на Android или .ipa на iOS. Сборки огромных размеров в принципе ожидаемы для мобильных игр, уже сейчас из PlayMarket порой приходится загружать объемы данных вплоть до 2 Гб и хорошо, если во время загрузки есть возможность подключиться к Wi-Fi или мобильный оператор предоставляет скоростное безлимитное подключение. Но для игр это ожидаемо, а бизнес-приложение, обладающее таким размером, невольно вызывает вопрос “Откуда столько?”. Одной из причин большого размера сборки бизнес-приложения может стать значительное количество иконок и картинок, которые в нем приходится отображать. А также не следует забывать о том, что большое количество графики пропорционально влияет на быстродействие приложения.


При создании графической составляющей приложения часто возникает серьезная проблема. Мобильных устройств существует великое множество начиная с часов и заканчивая планшетами, и разрешения их экранов очень разнятся. Из-за этого зачастую приходится включать в сборку графические ресурсы отдельными файлами для каждого из существующих типов. По 5 копий для Android и по 3 для iOS. Это существенно влияет на размер итоговой сборки, которую Вы будете выкладывать в сторы.

О том, что можно сделать для того, чтобы не попасть в такую ситуацию, мы расскажем в этой статье.

Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии10

Темы приложений для Xamarin.Forms

Время на прочтение5 мин
Количество просмотров5.4K
Все основные ОС теперь поддерживают темные и светлые темы приложений, и появился Xamarin.Forms 4.7, чтобы упростить добавление этой фичи в ваши приложения. Фактически, если вы ничего не сделаете, ваши приложения Xamarin.Forms будут соответствовать предпочтениям ОС пользователя. Зачем останавливаться на достигнутом? Вы также можете настроить светлые и темные цвета, используемые в пользовательском интерфейсе вашего приложения, и даже предоставить пользователю возможность самостоятельно управлять темой своего приложения. Давайте начнем с самого начала.

Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии0

Подготовка приложений для Google Play к требованиям Android 10

Время на прочтение2 мин
Количество просмотров5K
В северном полушарии настало лето! А это означает, что к публикации в Google Play теперь предъявляются новые требования. За прошедшие годы было несколько обновлений требований для публикации новых приложений. А также обновлений для Google Play. В этом году все сводится к обновлению вашего приложения до работы на Android 10 (API 29). Ниже приведены важные даты, которые должны быть восприняты всерьез всеми разработчиками.

Требования и даты по Android 10


  • 3 августа 2020 г. — новые приложения должны быть ориентированы на Android 10 (API 29).
  • 2 ноября 2020 г. — все приложения и обновления приложений должны быть ориентированы на Android 10 (API 29).


Сегодня давайте пройдемся по обновлению существующего приложения Android, чтобы оно полностью соответствовало требованиям.
Читать дальше →
Всего голосов 8: ↑5 и ↓3+4
Комментарии0

Истории

Xamarin.Forms. Личный опыт использования

Время на прочтение10 мин
Количество просмотров18K
В статье речь пойдет о Xamarin.Forms на примере живого проекта. Кратко поговорим о том, что такое Xamarin.Forms, сравним с похожей технологией WPF, увидим, как достигается кроссплатформенность. Также разберём узкие места, с которыми мы столкнулись в процессе разработки, и добавим немного реактивного программирования с ReactiveUI.

image
Читать дальше →
Всего голосов 12: ↑11 и ↓1+16
Комментарии9

«Каких Марин?» или управляем контроллером через bluetooth с помощью мобильного приложения на Xamarin (Android)

Время на прочтение16 мин
Количество просмотров11K
В прошлой статье я пообещал рассказать, о том как подключать CANNY 3 tiny с помощью UART к bluetooth. И поскольку на этих майских особо не разгуляешься, было принято решение провести время с пользой и таки сдержать обещание. Но просто подключить контроллер к Bluetooth адаптеру HC-06, было бы слишком просто для Хабра.

Поэтому мы не просто всё подключим, но еще и напишем для нашей схемы примитивнейшее приложение для Android используя C# и Xamarin.

Если вы любите мониторить «концевики» и герконы, так как это люблю я, милости прошу под кат.


Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии15

[По докам] Flutter. Часть 5. Для Xamarin.Forms-разработчиков

Время на прочтение20 мин
Количество просмотров4.3K
Это заключительная часть лаконичной интерпретации документации по Flutter, которая будет полезна Xamarin.Forms-разработчикам. Учитывая текущую ситуацию, сейчас самое время изучать что-то новое! Под катом вы сможете найти для себя информацию, достаточную, чтобы оценить, стоит ли переходить с одного кросплатформенного фреймворка на другой и сколько времени это займёт.


Читать дальше →
Всего голосов 25: ↑24 и ↓1+26
Комментарии1

Подарок всем под Ёлочку

Время на прочтение2 мин
Количество просмотров12K
Или всё-таки под Елочку?

Нет, под Ёлочку! Теперь точно с Ё, потому что это статья про ёфикацию!

И не просто теория или скрипты из командной строки, а настоящая рабочая программа, которую можно использовать как на компе так и на телефоне.
Читать дальше →
Всего голосов 34: ↑30 и ↓4+37
Комментарии80

Продолжайте полет с Xamarin.Forms 4.4

Время на прочтение4 мин
Количество просмотров4K
Мы пообщались с нашими разработчиками, которые делают уйму мобильных приложений каждый год, и они сказали: «Мы не можем вспомнить, когда в последний раз мы делали мобильное приложение, которое НЕ включало бы в себя карусель.» Итак, мы рады представить новый элемент управления CarouselView в Xamarin.Forms 4.4.0. Кроме того также представляем IndicatorView для отображения страниц и элементов с каруселью. А также SwipeView для предоставления контекстных действий для любого элемента в CollectionView. Тема выпуска каруселей была бы неполной без демонстрации новой поддержки GIF-анимации для изображений. Приступим.

Читать дальше →
Всего голосов 10: ↑9 и ↓1+11
Комментарии1

Почему я отказался от кросс-платформенных решений в мобильной разработке

Время на прочтение9 мин
Количество просмотров11K
image
Позвольте мне с вами кое-чем поделиться. Мне нравится идея кросс-платформенной разработки. Возможность использовать один набор инструментов для всех моих задач — это мечта. Кто не хотел бы использовать только один инструмент, чтобы успешно выполнять свои задачи? Пиши один раз, запускай везде? Я хочу!
Читать дальше →
Всего голосов 8: ↑6 и ↓2+6
Комментарии27

10 самых популярных курсов Microsoft на русском

Время на прочтение5 мин
Количество просмотров40K
Привет, Хабр! Совсем недавно мы выложили первую часть серии подборок полезных обучающий курсов для программистов. И вот незаметно подкралась последняя пятая часть. В ней мы перечислили некоторые из самых популярных IT-курсов, которые доступны на нашей учебной платформе Microsoft Learn. Все они, конечно же, бесплатны. Подробности и ссылки на курсы под катом!

Темы курсов в этой подборке:

  • Python
  • Xamarin
  • Visual Studio Code
  • Microsoft 365
  • Power BI
  • Azure
  • ML

Новая серия статей


Следующая серия статей, начало 2020 года


Эта серия статей, 2019 год


Читать дальше →
Всего голосов 15: ↑13 и ↓2+15
Комментарии0

Xamarin.Forms — декоративное отображение QRCode с помощью SkiaSharp

Время на прочтение2 мин
Количество просмотров5.2K


Для вывода/чтения штрихкодов есть популярная библиотека ZXing. Она умеет выводить и считывать много разных форматов: QRCode, Aztec и другие, более 2 десятков. Для считывания кодов в ней есть готовый контрол ZXingScannerView. Требуется минимум кода, чтобы добавить этот функционал в ваше приложение.

Однако, при помощи этой библиотеки код будет изображён канонически, чёрным по белому. Рассмотрим случай, когда надо изобразить код нестандартного вида, например цветной, со скруглёнными элементами или украшенный каким-либо другим способом (и чтобы он при этом продолжал хорошо считываться).

И настоящая свобода творчества открывается только если нарисовать код самому — тогда всё полностью в ваших руках. Этим и займёмся на примере QR-кода.
Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии4

Xamarin.Forms — простой пример Host-based Card Emulation

Время на прочтение10 мин
Количество просмотров7.6K
В этой статье будем реализовывать так называемую Host-based Card Emulation (HCE, Эмуляция банковской карты на телефоне). В сети много подробных описаний этой технологии, здесь я сделал акцент именно на получении работающих приложений эмулятора и ридера и решении ряда практических задач. Да, понадобятся 2 устройства с nfc.

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

При этом приложение на телефоне, эмулирующем карту, может быть запущено или нет и экран вашего телефона может быть заблокирован.
Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии0

Ближайшие события

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
28 – 29 сентября
Конференция E-CODE
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн

Xamarin.Forms Shell

Время на прочтение8 мин
Количество просмотров17K
В конце мая Microsoft выпустила в релиз Xamarin.Forms Shell — оболочку нацеленную на упрощение создания кроссплатформенных мобильных приложений и включающий в себя следующий функционал: боковое меню, вкладки, навигация, поиск.
Читать дальше →
Всего голосов 17: ↑17 и ↓0+17
Комментарии6

Xamarin.Forms — удобное использование иконочных шрифтов в приложении

Время на прочтение5 мин
Количество просмотров4.2K

Постановка задачи


Для отображения иконок в приложении Xamarin.Forms можно использовать изображения в различных форматах, например png, svg или шрифты ttf. Чаще всего для добавления стандартных иконок удобен шрифт с иконками, например google material icons. Шрифт с иконками имеет размер около 200КБ и удобство использования здесь обычно важнее экономии на размере приложения. Иконки будут хорошо смотреться при любом разрешении экрана и будут чёрно-белыми.

Для использования иконок есть готовые nuget-пакеты. Я долгое время использовал iconize (nuget — www.nuget.org/packages/Xam.Plugin.Iconize; git — github.com/jsmarcus/Iconize). Он позволяет подключать более десяти шрифтов, добавляет новые контролы, такие как IconButton, IconImage, IconLabel и т.п. Но тут есть обычные аргументы против готовых библиотек: лишний функционал, лишний размер файлов, не полностью устраивает поведение, баги и т.п. Поэтому в определённый момент решил отказаться от готовой библиотеки и заменить ее на простейший велосипед из пары классов + шрифт.
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии0

Как просто подключить и начать печатать через портативный Bluetooth принтер EPS/POS в приложении Xamarin Android

Время на прочтение2 мин
Количество просмотров3.9K
С чего же мы начнём?

Добавим в проект Nuget пакет для работы с EPS/POS командами. Для этого откройте Package Manager Console и добавьте Zebra.Printer.SDK командой

Install-Package Zebra.Printer.SDK

По сути, не имеет значения какую модель принтера вы используете и кто производитель. Вам нужно убедиться в том, что принтер поддерживает работу с EPS/POS командами (их большинство). В этом случае библиотека сможет работать с ним без проблем.

Все дальнейшие действия описаны с предположением того, что вы зашли в настройки Android устройства и подключились к принтеру.

В первую очередь добавим разрешения в файл AndroidManifest.xml:

<manifest ....>
...
    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
...
</manifest>
Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии2

Вышла Preview-версия XAML Hot Reload для Xamarin.Forms

Время на прочтение4 мин
Количество просмотров3.1K
На прошлой неделе на Xamarin Developer Summit мы анонсировали «Горячую перезагрузку (Hot Reload) XAML для Xamarin.Forms», которая позволяет вносить изменения в пользовательский интерфейс XAML и просматривать их в режиме реального времени, не требуя другой сборки и развертывания.

Горячая перезагрузка XAML для Xamarin.Forms ускоряет разработку и упрощает сборку, экспериментирование и итерации в пользовательском интерфейсе. А это значит, что вам больше не нужно перестраивать свое приложение каждый раз, когда вы настраиваете свой пользовательский интерфейс — все изменения мгновенно показываются в запущенном приложении.

Когда ваше приложение скомпилировано с использованием XAML Hot Reload, оно работает со всеми библиотеками и сторонними элементами управления. Эта фича будет доступна для iOS и Android в Visual Studio 2019 и Visual Studio 2019 для Mac. Все работает на всех допустимых целях развертывания, включая симуляторы, эмуляторы и физические устройства.

Горячая перезагрузка XAML будет доступна позже в 2019 году, но вы можете зарегистрироваться для участия в preview:

Sign Up for the Preview Now

Читать дальше →
Всего голосов 11: ↑9 и ↓2+7
Комментарии1

GoSh! для путешественников — история одного домашнего проекта

Время на прочтение11 мин
Количество просмотров4.4K

— Скажите, вы любите путешествия?


Уверен, что вы ответите "да", вряд ли в другом случае вы бы обратили внимание на эту статью :)


— Интересна ли вам тема мобильной разработки?


Тут я уже не так уверен, и надеюсь, этой статьей я не отобью вам интерес. В любом случае, тут будет некоторое количество технических подробностей, которые могут быть вам немного полезными, но не обязательно.


— А как насчет кроссплатформенной мобильной разработки?


Знаю, знаю, холивар, но, что поделать — будем спорить и рождать истины.


Так или иначе, в этой душераздирающей истории данные темы будут затронуты, так что — самое время закрыть статью, если вы ожидаете чего-то другого ;) Хотя, я постараюсь написать так, чтобы тут были не только технические детали.

Стойте, стойте, куда вы, я же пошутил! Тут будет и про котиков! Читать далее...
Всего голосов 25: ↑19 и ↓6+13
Комментарии19

Документация по API Xamarin теперь в открытом доступе

Время на прочтение2 мин
Количество просмотров4.5K
Мы рады объявить о выпуске всей документации по API Xamarin в формате Open-Source! Документация по API помогает улучшить взаимодействие с IntelliSense и является одним из лучших способов помочь разработчикам достичь своих целей.

Документация по API Xamarin


Кроме того, мы также перенесли хостинг с сайта Xamarin на docs.microsoft.com:

Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии1

.NET зоопарк под призмой NET Core

Время на прочтение3 мин
Количество просмотров14K
Всем привет! Сегодня мы рассмотрим разные фишки и изменения, которые появились в .NET Core платформе и сравним их с Framework. Я разбил статью на модули для более лучшего понимания. Эта статья будет интересна тем кто собирается переходить на .NET Core или уже использует его.

Stack technology


В данный момент у нас есть три платформы: .NET Framework, Mono и .NET Core. Каждая платформа включает в себя следующие технологии:

NET Framework — WPF, WinForms, ASP.NET (DNX реализация), WCF
NET Core — UWP, ASP.NET Core, WA, Xamarin (.NET Standard), Avalonia and other
Mono — Xamarin (PCL, Share project), Unity, ASP.NET, WinForms (cross platform)
NET Core (3.0) — Всё тоже самое, что и у .NET Core выше + WPF и WinForms, ML.NET

NET Standard


Ещё есть .NET Standard. Это набор классов, методов и интерфейсов, которые позволяют писать и использовать общий код под все перечисленные выше платформы. Ещё на ней можно писать консольные приложения. Вкратце это тот же PCL, но работает на всех перечисленных выше платформах.

Cross Platform


Читать дальше →
Всего голосов 36: ↑26 и ↓10+16
Комментарии27