1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-Xamarin-Forms

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Xamarin.Forms

Поддержка

Поддержка Xamarin.Forms завершилась 1 мая 2024 года в соответствии с политикой поддержки Xamarin:

Поддержка всех SDK Xamarin, включая Xamarin.Forms, завершилась 1 мая 2024 года.

Xamarin.Forms был заменён .NET MAUI в мае 2022 года как часть .NET 6 и в настоящее время поддерживается, как указано в политике поддержки .NET MAUI. Следуйте официальным рекомендациям по миграции, чтобы привести ваши приложения Xamarin к последней версии .NET.

Все наши разработчики и участники сообщества, большое спасибо за ваш вклад в наше сообщество Xamarin. Увидимся все вместе в .NET MAUI!

О Xamarin.Forms

Xamarin.Forms предоставляет способ быстро создавать нативные приложения для iOS, Android, Windows и macOS полностью на C#.

Дополнительная информация о платформе доступна по адресу https://www.xamarin.com/forms.## Пакеты ##Платформа/Функционал Название пакета Устойчивая версия Предварительная версия Ночной сборочный канал Azure (основной ветвь)
Ядро Xamarin.Forms NuGet NuGet
AppLinks Xamarin.Forms.AppLinks NuGet NuGet
Карты Xamarin.Forms.Maps NuGet NuGet
Карты.GTK Xamarin.Forms.Maps.GTK NuGet NuGet
Карты.WPF Xamarin.Forms.Maps.WPF NuGet NuGet
Страницы Xamarin.Forms.Pages NuGet NuGet NuGet
Xamarin.Forms.Platform.Azure Xamarin.Forms.Platform.Azure NuGet NuGet
Xamarin.Forms.Platform.GTK Xamarin.Forms.Platform.GTK NuGet NuGet
Xamarin.Forms.Platform.WPF Xamarin.Forms.Platform.WPF NuGet NuGet
Xamarin.Forms.Visual.Material Xamarin.Forms.Visual.Material NuGet NuGet

Если вы хотите использовать последнюю версию nightly сборки, то вам следует прочитать этот блоговый пост.- Добавьте ночную подачу в источники NuGet вашего проекта или добавьте файл NuGet.Config к вашему приложению (разместив его в том же каталоге, где находится файл решения вашего приложения) с следующим содержанием:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <clear />
    <add key="xamarin-ci" value="https://aka.ms/xf-nightly/index.json" />
    <add key="NuGet.org" value="https://api.nuget.org/v3/index.json" />
  </packageSources>
</configuration>

ЗАМЕЧАНИЕ: Этот файл NuGet.Config должен находиться вместе с вашим приложением, если вы не хотите, чтобы пакеты ночного выпуска начали восстанавливаться для других приложений на вашем компьютере.

  • Измените зависимости вашего приложения, чтобы они указывали на версию *, чтобы получить последнюю версию.

Начало работы

Для обоих методов ниже вам потребуется добавить этот источник NuGet для успешной сборки. Узнайте больше на этой странице документации.

Windows

Установите Visual Studio 2019+ #####Visual Studio 2019+ требуется для разработки Xamarin.Forms. Если у вас ещё нет установленной версии, вы можете скачать её здесь. Версия Visual Studio 2019+ Community полностью бесплатна. При первой установке Visual Studio 2019+, выберите тип установки "Пользовательская" и выберите следующие компоненты из списка возможностей для установки:
  • Разработка приложений для .NET для рабочего стола

    • Отдельные компоненты > .NET > SDK .NET Framework 4.6.1, пакет целевой платформы .NET Framework 4.6.1, SDK .NET Framework 4.7.2, пакет целевой платформы .NET Framework 4.7.2.
  • Разработка приложений для универсальной платформы Windows

    • Отдельные компоненты > SDK, библиотеки и фреймворки > SDK Windows 10 (10.0.19041.0), SDK Windows 10 (10.0.18362.0), SDK Windows 10 (10.0.16299.0).
    • Скачайте и установите версию 14393 с https://go.microsoft.com/fwlink/p/?LinkId=838916
  • Разработка мобильных приложений с использованием .NET

    • Отдельные компоненты > Деятельность разработки > Удалённый симулятор Xamarin
    • Если вы не используете Hyper-V, установите Отдельные компоненты > Эмуляторы > Hyper-V Intel Hardware-Accelerated Execution Manager (HAXM)
  • Самая новая версия SDK для .NET Core

Необходимы Android 10.0 API 29 SDK и Android 9.0 API 28 SDK для разработки Xamarin.Forms. Они могут быть установлены с помощью Xamarin Android SDK Manager.Также рекомендуется установить Xamarin Android Device Manager. Это позволит использовать инструменты HAXM, установленные выше, и настроить виртуальные устройства Android (AVD), имитирующие устройства Android. Если у вас уже установлена версия VS 2019+, вы можете проверить наличие этих компонентов, модифицировав установку VS 2019+ через Visual Studio Installer.

Проксирующий скрипт

Если вы сталкиваетесь с ошибками, связанными с отсутствием SDK, вы можете запустить наш проксирующий скрипт. Обратите внимание, что выполнение всего скрипта может занять некоторое время. Чтобы лучше понять работу скрипта, вы можете ознакомиться с нашим файлом build.cake.

  • В CMD

    build.cmd -Target provision
  • В PowerShell

    ./build.ps1 -Target provision

    ЗАМЕЧАНИЕ: Если вы столкнулись с ошибкой, говорящей, что build.ps1 не имеет цифровой подписи, откройте PowerShell как администратор и решите проблему, выполнив команду Set-ExecutionPolicy RemoteSigned.

  • В CMD/Powershell/sh (Новое! Более подробная информация здесь)

    dotnet tool install Cake.Tool -g
    dotnet cake --target=provision

macOS

Установка Visual Studio для Mac 2019

Если у вас ещё нет установленной версии, инструкции по загрузке и установке можно найти здесь.Из-за текущих ограничений многоплатформенного целинга в Visual Studio для Mac вам потребуется вручную собирать/восстанавливать некоторые проекты перед тем, как вы сможете работать над решением Xamarin Forms. Вот несколько вариантов, которые мы подготовили, чтобы сделать этот процесс проще:

  • Ветки 3.5+ включают целевой скрипт Cake, который можно использовать для сборки и открытия VSMac

    ./build.sh --target vsmac

    ИЛИ, как было упомянуто выше в разделе Windows о подготовке окружения, вы также можете использовать новый Cake.Tool

    dotnet tool install Cake.Tool -g
    dotnet cake --target=provision
  • При работе с более ранней веткой, которая не имеет скриптов Cake, вы можете использовать следующий build.sh скрипт:

    • Если вы не хотите запускать какие-либо скрипты:
      • Откройте Xamarin.Forms.sln
      • Подождите, пока VSMAC завершит восстановление всех проектов
      • с командной строки выполните:
        • msbuild Xamarin.Forms.Build.Tasks/Xamarin.Forms.Build.Tasks.csproj
      • Теперь вы должны иметь возможность запустить и развернуть всё. Единственный повод заново пройти этот процесс — если вы очистили папку решения или удалили папки bin/obj, являющиеся частью Xamarin.Forms.Build.Tasks.csproj
Настройка конфигурации решения #####При открытии решения Xamarin.Forms вы обнаружите, что в окне списка ошибок есть несколько ошибок и предупреждений. Вы можете решить эту проблему, сменив фильтр Build + IntelliSense на Build Only. В данный момент вы должны успешно построить решение.По умолчанию проект Xamarin.Forms.Controls не имеет конфигурации для различных ключей API для доступа к определенным функциям на каждой платформе (например, карты). При первом построении решения будет создан файл controlgallery.config, который будет выглядеть следующим образом:
UWPMapsAuthKey:

Если вы не работаете с картами, вы можете игнорировать это. Если вы хотите работать с картами, вам придется получить свои собственные ключи API для каждого из этих сервисов, вставленные непосредственно после идентификатора (например, UWPMapsAuthKey:abcdefghijklmnopqrstuvwxyz). Вы можете узнать, как получить каждый из этих ключей, следуя этим шагам:

Из-за того, как работает Android, ключ API для карт не может быть внедрен в реальном времени. Поэтому вам потребуется добавить этот ключ в файл MapsKey.cs под Xamarin.Forms.ControlGallery.Android/Properties:

[assembly: Android.App.MetaData("com.google.android.maps.v2.API_KEY", Value = "INSERT_KEY_HERE")]

Вы можете узнать, как получить ключ API Google Maps здесь.

Построение с помощью командной строки

Убедитесь, что у вас установлен nuget.exe версии 4.0 или выше и последний .NET Core SDK. На macOS вам следует указывать платформу в команде msbuild (/p:Platform=iPhoneSimulator):

msbuild /restore Xamarin.Forms.sln

UI-тесты ######## Запуск Android UI-тестов

В зависимости от вашей среды установки вам может потребоваться настроить несколько вещей перед тем, как вы сможете отладить / запустить тесты пользовательского интерфейса, особенно на Windows.

  • Если вы получаете ошибку о том, что недоступна переменная окружения ANDROID_HOME, убедитесь, что вы установили переменную окружения в каталог Android SDK (например, C:\Program Files (x86)\Android\android-sdk).
  • Если вы получаете ошибку о том, что недоступна переменная окружения JAVA_HOME, установите последнюю версию Java JDK и установите переменную окружения в каталог JDK (например, C:\Program Files\Java\jdk-13).
  • Если вы получаете ошибку о том, что отсутствует файл APK, сгенерируйте файл APK для Xamarin.Forms.ControlGallery.Android. Самый простой способ сделать это — щелкните правой кнопкой мыши проект и выберите "Deploy". Обратите внимание, что если вы заново скомпилируете решение, вы можете потерять APK и вам придется снова его сгенерировать.

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

Запуск тестов пользовательского интерфейса UWP

Чтобы запустить тесты пользовательского интерфейса UWP:1. Установите и запустите Windows Application Driver. 2. Запустите проект Xamarin.Forms.ControlGallery.WindowsUniversal, чтобы установить приложение ControlGallery на вашей системе.Теперь вы должны иметь возможность запускать любые тесты пользовательского интерфейса UWP.

Стиль программирования

Мы следуем стилю, используемому .NET Foundation, с некоторыми исключениями:

  • Мы не используем ключевое слово private, так как это уровень доступа по умолчанию в C#.
  • Мы используем табуляцию вместо пробелов. Вы можете изменить эту настройку в Visual Studio для Windows через Инструменты > Опции и переход к Редактор текста > C# и выбор варианта "Сохранять табуляцию". В Visual Studio для Mac это можно настроить через предпочтения в Исходный код > Настройка форматирования > Исходный код C# и отключение флажка для "Конвертировать табуляцию в пробелы".
  • Строчки должны ограничиваться максимум 120 символами (или ближе всего к этому по возможности). Это можно настроить в Visual Studio для Mac через предпочтения в Исходный код > Настройка форматирования > Исходный код C# и изменение параметра "Желаемая ширина файла" до "120".

Вкладывание

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

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Xamarin.Forms предоставляет разработчикам на .NET полный набор инструментов для кроссплатформенного пользовательского интерфейса — можно создавать полностью нативные приложения для Android и iOS с помощью C# в Visual Studio. Развернуть Свернуть
C# и 2 других языков
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mirrors-Xamarin-Forms.git
git@api.gitlife.ru:oschina-mirror/mirrors-Xamarin-Forms.git
oschina-mirror
mirrors-Xamarin-Forms
mirrors-Xamarin-Forms
5.0.0