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

Xamarin *

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

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

Ef миграция для maui (так, как нравится мне)

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

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

Я не говорю что мой метод лучше, просто делюсь другим способом. Ибо мне не совсем нравится идея использование третьего проекта. Советую так же почитать основную статью так как там объясняют в чем именно проблема.

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

Новости

Entity Framework c Code-First миграциями для .Net Maui

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

Если вы, как и я, уже являетесь большим поклонником Microsoft Entity Framework и хотели бы начать использовать его локально в своем мобильном приложении, с появлением .Net Maui на рынке, это стало возможным.

Небольшое замечание: для ускорения времени запуска мобильного приложения может быть лучше хранить данные, используемые во время загрузки, в локальном хранилище мобильного устройства в форме json. Но, когда дело дойдет до работы с большими локальными данными, использования фильтров, сортировки и т. д., EF определенно подойдет идеально.

Цель этой статьи — помочь избежать хлопот, связанных с поиском различных решений небольших проблем при реализации production-ready мобильной локальной базы данных и создании для нее миграций на компьютерах Windows и Mac. Исходный код примера приложения доступен по ссылке, указанной в конце. Как вы сможете увидеть, это будет типовой шаблон приложения Maui с добавленной логикой базы данных EF.

Развернуть
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 2

Xamarin.Forms — определение координат нажатия на экран

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

Некоторые элементы управления в приложении могут реагировать на жесты - например кнопки, CollectionView, выезжающее сбоку меню у FlyoutPage. Ещё есть распознаватели жестов (GestureRecognizers), которые можно добавить элементам управления, не умеющим реагировать на касания. Можно использовать эффекты (Effects).

Но иногда надо узнать о касании в любом месте экрана и координаты этого касания. Например, для рисования пальцем или для написания пользовательских элементов управления. На андроид и iOS есть способ это сделать при помощи DependencyService. Это странно, но часть такого полезного и можно сказать базового функционала надо писать самому или покупать (https://www.mrgestures.com/).

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

Xamarin.Forms: Кастомные пины для xamarin.maps

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

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

Читать далее
Рейтинг 0
Комментарии 0

Истории

Поворотный стол. Часть 2

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

Привет, Хабр! В предыдущей статье я рассказывал о наших продуктах – поворотных столах для круговой фотосъёмки. За прошедшее время нам удалось серьёзно продвинуться вперёд и разработать новые устройства на базе Ардуино с использованием коллекторных и бесколлекторных двигателей.

Поворотный стол не такое уж простое техническое изделие как может показаться на первый взгляд. Например, в автоматическом режиме стол поворачивается на нужный угол, выдерживает паузу для того чтобы предмет съёмки смог успокоиться и стать неподвижным, автоматически делает снимок с фотоаппарата, затем некоторое время ожидает окончания экспозиции и переходит к следующему шагу. Так стол совершает полный оборот, и получается серия снимков предмета со всех сторон. Есть и другие режимы работы.

Мы выпускаем столы разных размеров. Самые ходовые – с диаметром столешницы 400, 600 и 900 миллиметров. Столы способны вращать довольно приличный груз, например, стол 600 выдерживает 150 кг, а стол 900 – 250 кг. Как-то приходилось делать по спецзаказу стол диаметром 2700 миллиметров, выдерживающий груз до 700 кг.

Как мы разрабатывали новый стол
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 18

Ведение семейных финансов на C# и Xamarin. Личный опыт

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

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

Автор сей статьи имеет крайне посредственные скиллы разработки, так что некоторые технические решения могут оскорбить чувства профессиональных программистов на C# и разработчиков приложений для Android.

За всеми подробностями прошу под кат.

Читать далее
Всего голосов 24: ↑23 и ↓1 +22
Комментарии 37

Представляем .NET MAUI Community Toolkit (Preview)

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

Команда Community Toolkit рада объявить о первых предварительных выпусках двух новых наборов инструментов .NET Multi-platform App UI (.NET MAUI): CommunityToolkit.Maui и CommunityToolkit.Maui.Markup.

Как было объявлено в прошлом месяце, эти библиотеки являются развитием Xamarin Community Toolkits. Они содержат .NET MAUI Extensions, Advanced UI/UX Controls, Effects и Behaviors, чтобы облегчить вам жизнь в качестве .NET MAUI-разработчика.

Функции, которые вы добавляете в .NET MAUI Toolkit, однажды могут быть включены в официальную библиотеку .NET MAUI. Мы используем наборы инструментов сообщества, чтобы представить новые функции, и тесно сотрудничаем с командой разработчиков .NET MAUI, чтобы выбирать функции для добавления.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Комментарии 10

Создание прекрасных приложений с помощью Xamarin.Forms

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

Есть вопрос, который мне постоянно задают в Твиттере: как создавать приложения с крутым дизайном с помощью Xamarin.Forms? Это отличный вопрос, ведь любой может создавать красивые приложения, немного вдохновившись и поработав над стилем. Я не дизайнер и не претендую на звание дизайнера, но есть много отличных источников вдохновения для дизайна приложений, включая Dribbble, Uplabs и другие. Эти дизайны от талантливых людей со всего мира могут повлиять на внешний вид ваших собственных приложений.

Подробнее под катом!

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 11

Улучшаем биндинги в CSharpForMarkup

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

Недавно мне пришлось разбираться с Xamarin Forms и на глаза попалась такая штука как CSharpForMarkup. Она показалась очень интересной, поскольку позволяет использовать стандарный C# вместо XAML, тем самым нивелируякучу неудобств связаных с XAML. Но реализация биндингов мне показался недостаточно хорошой. Поэтому я начал её улучшать при помощи expression-ов и Roslyn анализаторов. Кому интересно что с этого получилось прошу под кат.

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

Интервью с Мигелем де Икасой: Microsoft, Mono, смартфоны и многое другое

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

В эфире конференции DotNext 2020 Moscow выступил Мигель де Икаса, один из известнейших разработчиков, положивший начало множеству проектов, которыми многие пользуются по сей день. Мы расспросили его о некоторых вещах, включая взаимоотношения с Microsoft, зарождение Mono, мобильные устройства и многое другое. Рассказывая обо всем этом, Мигель припомнил множество интересных событий и фактов, о которых вам наверняка будет интересно прочитать.

Интервью брали Игорь Лабутин, разработчик на C# и архитектор, и Андрей Акиньшин, перформанс-лид Rider, мейнтейнер проекта BenchmarkDotNet.

Текст интервью и видео — под катом.

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

Использование сервисов и обработка их результатов в Xamarin

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

Продолжим обсуждать различные задачи для Xamarin с которыми приходится регулярно сталкиваться, так как статьи по данной тематике появляются не очень часто. Данная статья больше будет полезна начинающим разработчикам, но и более опытным тоже может быть интересно.

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

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

Итак, наша простая модель, которую мы и будем запрашивать с бекенда:

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

Xamarin.Forms 5.0 уже здесь, уже доступен

Время на прочтение 2 мин
Количество просмотров 5.5K
Сегодня мы публикуем финальный стабильный выпуск Xamarin.Forms версии 5.0. Этот основной выпуск содержит сотни улучшений качества и включает новые функции, включая темы приложений, кисти, CarouselView, RadioButton, Shapes and Paths и SwipeView.

Команда Xamarin хотела бы выразить огромное спасибо многим участникам и рецензентам, которые помогли сделать этот выпуск. Вы великолепны!

Под катом немного подробностей и много полезных ссылок, связанных с Xamarin.Forms 5.0.

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

Экраны отсутствующего контента в мобильном приложении на примере Xamarin

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

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

Читать далее
Всего голосов 10: ↑8 и ↓2 +6
Комментарии 8

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

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн

Оживляем деревья выражений кодогенерацией

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

Expression Trees — это, пожалуй, самое удобное средство манипуляции кодом в run-time.

Расширять код метапрограммами в compile-time позволяют Roslyn Source Generators, с ними это стало проще, чем когда-либо.

Пора использовать одно во благо другого, даже если мир к этому еще не совсем готов.

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

Мигель де Икаса: от Midnight Commander до Mono в .NET 5

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


Мигель де Икаса создал целый ряд громких проектов: GNOME, Mono, Xamarin, Midnight Commander… Для одних айтишников это человек-легенда, сделавший поразительно много для опенсорса и .NET-экосистемы. Другие ничего не знают о нём, но постоянно пользуются плодами его трудов.


На Хабре есть множество постов с его упоминанием, но не было поста о нём самом. А завтра Мигель выступит на нашей конференции DotNext, и я решил, что это отличный повод исправить ситуацию.


Как человек, создавший GNOME, мог оказаться в Microsoft? СЕО какого ключевого IT-проекта современности долго был его главным сподвижником? Почему Ричард Столлман назвал Мигеля «предателем сообщества свободного ПО», а некоторые другие говорят, что он всю жизнь занимается клонированием?

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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


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


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

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

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

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

Вклад авторов