» » » Единые инструменты в IT: хорошо или плохо?

 

Единые инструменты в IT: хорошо или плохо?

Автор: admin от 28-06-2018, 10:45, посмотрело: 230

А вы бы хотели всегда работать в одной среде? Так, чтобы не приходилось скакать туда-сюда по средам разработки и при использовании инструментов. До идеала, конечно, еще далеко, но IT-мир стремится к этому. Сегодня рассказываем о единой кросс-платформенной библиотеке API. Присоединяйтесь!



Единые инструменты в IT: хорошо или плохо?



При разработке приложений для iOS и Android с помощью Xamarin разработчики могут обращаться к любым нативным API, используя C#. Эти привязки не только помогают использовать соответствующие API в C#, но и предоставляют мощные функции этого языка, такие как async/await, события, делегаты и т. д. Сегодня рассказываем о Xamarin.Essentials, позволяющей получить единый API для доступа к таким функциям, как геолокация, показания датчиков, безопасное хранилище и т. д., для любого приложения, созданного на Xamarin.



Это огромное преимущество для разработчиков, потому что им никогда не придется работать вне C#, независимо от того, пишут ли они общую бизнес-логику, пользовательский интерфейс или получают доступ к нативным функциям. Одна из ключевых особенностей, которую часто хотят видеть программисты при разработке кросс-платформенных приложений на Xamarin, — это способность получать доступ к распространенным нативным функциям из общего кода без необходимости писать свои собственные слои абстракций или находить плагин в свободном доступе, созданный сообществом.



Xamarin.Essentials воплощает в реальность мечту о едином API для доступа к таким функциям, как геолокация, показания датчиков, безопасное хранилище и т. д., для любого приложения, созданного на Xamarin!



Единые инструменты в IT: хорошо или плохо?

Интерфейсы API в Xamarin.Essentials



В ознакомительной версии, доступной уже сегодня, API-интерфейсы Xamarin.Essentials предоставляют доступ более чем к 25 нативным функциям из единой кросс-платформенной библиотеки API, к которой можно получить доступ из общего кода независимо от того, как создается пользовательский интерфейс. Это значит, что вы можете использовать API Xamarin.Essentials с помощью единственного приложения Xamarin.Android или приложения Xamarin.Forms, адаптированного для работы с iOS, Android и UWP. Несмотря на большое количество функций, эта библиотека полностью оптимизирована для максимально быстрой работы и минимального влияния на размер приложения, поскольку она защищена от компоновщика. Это говорит о том, что в ваше приложение будут включены только API и функции, которые вы используете, а все остальное будет удалено во время компиляции.



Ознакомительную версию библиотеки, в которой используется базовый набор кросс-платформенных API, можно установить в ваше приложение через NuGet:





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



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



Начать использовать API Xamarin.Essentials легко в любом существующем приложении, выполнив всего несколько простых шагов:



1. Откройте существующий проект или создайте новый, используя шаблон Blank App в Visual Studio C# (для Android, iPhone и iPad или кросс-платформенный).



2. Добавьте пакет Xamarin.Essentials NuGet к проекту:




  • Visual Studio. В панели Solution Explorer щелкните правой кнопкой мыши на название решения и выберите Manage NuGet Packages. Найдите Xamarin.Essentials и установите пакет во ВСЕ проекты, включая iOS, Android, UWP и .NET Standard Libraries.

  • Visual Studio для Mac. В панели Solution Explorer щелкните правой кнопкой мыши на название проекта и выберите Добавить > Добавить пакеты NuGet… Найдите Xamarin.Essentials и установите пакет во ВСЕ проекты, включая iOS, Android и .NET Standard Libraries.



  • 3. Добавьте ссылку на Xamarin.Essentials в любом из классов C#, чтобы ссылаться на API.



    using Xamarin.Essentials;


    4. Xamarin.Essentials требует небольшой дополнительной настройки под проекты Android, чтобы получить доступ к специальным функциям:



    Xamarin.Essentials необходимо инициализировать с помощью метода OnCreate в рамках MainLauncher или любого другого Activity в проекте Android:



    Xamarin.Essentials.Platform.Init(this, bundle);


    Чтобы обрабатывать разрешения среды выполнения на Android, Xamarin.Essentials должна получить любой OnRequestPermissionsResult. Добавьте следующий код ко всем классам Activity:



    public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
    {
        Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
     
        base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
    }


    Готово! Теперь вы можете начать использовать API Xamarin.Essentials в своем приложении. К каждому API прилагается полная документация, включая фрагменты кода, которые вы можете скопировать в свое приложение.



    Обязательно прочитайте наше Руководство по началу работы для получения дополнительной информации.



    Сборка компаса



    Во время одного из моих выступлений на Microsoft Build 2018 я показал, как объединить возможности API Xamarin.Forms и Xamarin.Essentials, чтобы собрать кросс-платформенный компас менее чем за 10 минут. Это так же просто, как и добавить несколько изображений и небольшой пользовательский интерфейс для компаса в приложении:



    	<Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>
     
        <Image HorizontalOptions="FillAndExpand"
               VerticalOptions="FillAndExpand"
               Source="compass.png"/>
     
        <Image HorizontalOptions="Center"
               VerticalOptions="Center"
               Source="arrow.png"
               x:Name="ImageArrow"/>
     
        <Label Grid.Row="1"
               x:Name="LabelInfo"
               VerticalOptions="Center" 
               HorizontalOptions="Center" />
    </Grid>


    Я смог использовать API компаса из Xamarin.Essentials в коде выше, чтобы регистрировать события, когда компас изменяет положение, обновлять текст метки и поворачивать изображение. Все это делается несколькими строками кода:



    	using Xamarin.Forms;
    using Xamarin.Essentials;
     
    namespace MyCompass
    {
        public partial class MainPage : ContentPage
    	{
    		public MainPage()
    		{
    			InitializeComponent();
     
                // Register for reading changes
                Compass.ReadingChanged += Compass_ReadingChanged;
            }
     
            void Compass_ReadingChanged(CompassChangedEventArgs e)
            {
                LabelInfo.Text = $"Heading: {e.Reading.HeadingMagneticNorth}";
                ImageArrow.Rotation = e.Reading.HeadingMagneticNorth;
            }
     
            protected override void OnAppearing()
            {
                base.OnAppearing();
                Compass.Start(SensorSpeed.Ui);
            }
     
            protected override void OnDisappearing()
            {
                base.OnDisappearing();
                Compass.Stop();
            }
        }   
    }


    Единые инструменты в IT: хорошо или плохо?

    Вот таким простым образом создается приложение-компас! Вы можете найти полный исходный код и изображения на GitHub.



    Планы на будущее



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



    Мы рассматриваем эту библиотеку как главный элемент платформы Xamarin и знаем, что это важный стандартный блок для всех разработчиков и приложений. Поэтому мы будем интегрировать пакет Xamarin.Essentials NuGet в каждый шаблон iOS, Android и Xamarin.Forms в Visual Studio и Visual Studio для Mac, чтобы разработчики имели доступ к этим API с самых первых этапов своих проектов.



    Увидеть своими глазами



    Вы можете увидеть полный обзор Xamarin, Xamarin.Forms и Xamarin.Essentials в рамках выступления «Создание мобильных приложений с помощью Visual Studio и Xamarin» на Microsoft Build 2018.







    Дополнительная информация



    Вы можете просмотреть нашу документацию, содержащую полное руководство по началу работы и использованию каждой функции Xamarin.Essentials. Мы также предоставили полный список ссылок на API, который можно просмотреть в Интернете, чтобы узнать обо всех деталях интерфейсов API Xamarin.Essentials.


    Источник: Хабр / Интересные публикации

    Категория: Android, iOS

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

    Добавление комментария

    Имя:*
    E-Mail:
    Комментарий:
    Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
    Введите два слова, показанных на изображении: *