Alat umum di IT: baik atau buruk?

Apakah Anda ingin selalu bekerja di lingkungan yang sama? Sehingga Anda tidak harus bolak-balik di lingkungan pengembangan dan saat menggunakan alat. Yang ideal, tentu saja, masih jauh, tetapi dunia TI sedang berjuang untuk ini. Hari ini kita berbicara tentang satu pustaka API lintas platform. Bergabunglah sekarang!



Saat mengembangkan aplikasi untuk iOS dan Android menggunakan Xamarin, pengembang dapat mengakses API asli apa pun menggunakan C #. Binding ini tidak hanya membantu menggunakan API yang sesuai di C #, tetapi juga menyediakan fungsi yang kuat dari bahasa ini, seperti async / menunggu, acara, delegasi, dll.

Ini adalah keuntungan besar bagi pengembang karena mereka tidak akan pernah harus bekerja di luar C #, terlepas dari apakah mereka menulis logika bisnis umum, antarmuka pengguna atau mengakses fungsi asli. Salah satu fitur utama yang sering ingin dilihat oleh programmer ketika mengembangkan aplikasi lintas-platform pada Xamarin adalah kemampuan untuk mengakses fungsi asli umum dari kode umum tanpa harus menulis lapisan abstraksi sendiri atau menemukan plug-in gratis yang dibuat oleh komunitas.

Xamarin.Essentials mewujudkan impian API tunggal untuk akses ke fitur seperti geolokasi, pembacaan sensor, penyimpanan yang aman, dll., Untuk aplikasi apa pun yang dibangun di Xamarin!


API di Xamarin.Essentials


Dalam versi evaluasi, tersedia hari ini, API Xamarin.Essentials menyediakan akses ke lebih dari 25 fungsi asli dari pustaka API lintas-platform tunggal, yang dapat diakses dari kode umum terlepas dari bagaimana antarmuka pengguna dibuat. Ini berarti Anda dapat menggunakan Xamarin.Essentials API dengan satu aplikasi Xamarin.Android atau aplikasi Xamarin.Forms yang disesuaikan untuk bekerja dengan iOS, Android, dan UWP. Terlepas dari sejumlah besar fungsi, pustaka ini sepenuhnya dioptimalkan untuk operasi tercepat dan dampak minimal pada ukuran aplikasi, karena dilindungi dari tautan. Ini berarti bahwa hanya API dan fungsi yang Anda gunakan akan dimasukkan dalam aplikasi Anda, dan semua yang lain akan dihapus pada waktu kompilasi.

Versi evaluasi perpustakaan, yang menggunakan set dasar lintas-platform API, dapat diinstal ke aplikasi Anda melalui NuGet:


Set API awal ditentukan berdasarkan umpan balik dari pengembang Xamarin tentang fitur apa yang ingin mereka lihat di pustaka API lintas platform. Seiring waktu, kami akan memperluas daftar ini.

Memulai


Memulai dengan Xamarin.Essentials API mudah di semua aplikasi yang ada dengan mengikuti hanya beberapa langkah sederhana:

1. Buka proyek yang ada atau buat yang baru menggunakan templat Aplikasi Kosong di Visual Studio C # (untuk Android, iPhone dan iPad atau lintas-platform).

2. Tambahkan paket Xamarin.Essentials NuGet ke proyek:

  1. Studio Visual Di panel Solution Explorer, klik kanan pada nama solusi dan pilih Kelola Paket NuGet. Temukan Xamarin. Penting dan instal paket di SEMUA proyek, termasuk iOS, Android, UWP, dan .NET Standard Libraries.
  2. Visual Studio untuk Mac. Di panel Solution Explorer, klik kanan pada nama proyek dan pilih Tambah> Tambahkan Paket NuGet ... Temukan Xamarin. Penting dan instal paket di SEMUA proyek, termasuk iOS, Android dan .NET Standard Libraries.

3. Tambahkan tautan ke Xamarin.Essensial di salah satu kelas C # untuk referensi API.

using Xamarin.Essentials; 

4. Xamarin.Essentials membutuhkan sedikit penyesuaian tambahan untuk proyek Android untuk mendapatkan akses ke fungsi-fungsi khusus:

Xamarin.Essentials harus diinisialisasi menggunakan metode OnCreate dalam MainLauncher atau Kegiatan lain apa pun dalam proyek Android:

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

Untuk menangani izin runtime di Android, Xamarin.Essentials harus mendapatkan OnRequestPermissionsResult. Tambahkan kode berikut ke semua kelas Kegiatan:

 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); } 

Selesai! Sekarang Anda dapat mulai menggunakan Xamarin.Essentials API di aplikasi Anda. Setiap API dilengkapi dengan dokumentasi lengkap , termasuk cuplikan kode yang dapat Anda salin ke dalam aplikasi Anda.

Pastikan untuk membaca Panduan Memulai kami untuk informasi lebih lanjut.

Perakitan kompas


Dalam salah satu pidato saya di Microsoft Build 2018, saya menunjukkan bagaimana menggabungkan kemampuan Xamarin.Forms dan Xamarin.Essentials APIs untuk merakit kompas lintas platform dalam waktu kurang dari 10 menit. Ini sesederhana menambahkan beberapa gambar dan antarmuka pengguna kompas kecil dalam aplikasi:

  <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> 

Saya dapat menggunakan kompas API dari Xamarin. Penting dalam kode di atas untuk mencatat peristiwa ketika kompas mengubah posisi, memperbarui teks label dan memutar gambar. Semua ini dilakukan dengan beberapa baris kode:

  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(); } } } 


Dengan cara sederhana ini, aplikasi kompas dibuat! Anda dapat menemukan kode sumber dan gambar lengkap di GitHub.

Rencana masa depan


Xamarin.Essentials telah diuji secara menyeluruh, namun kami tetap meminta Anda untuk meninggalkan umpan balik selama versi evaluasi kami. Coba pustaka di aplikasi Anda dan laporkan masalah yang Anda temui saat bekerja dengan repositori GitHub Xamarin.Essentials .

Kami menganggap perpustakaan ini sebagai elemen utama platform Xamarin dan kami tahu bahwa ini adalah blok bangunan penting untuk semua pengembang dan aplikasi. Oleh karena itu, kami akan mengintegrasikan paket Xamarin.Essentials NuGet ke dalam setiap template iOS, Android, dan Xamarin.Forms di Visual Studio dan Visual Studio untuk Mac sehingga pengembang dapat mengakses API ini dari tahap pertama proyek mereka.

Lihat dengan mata kepala sendiri


Anda dapat melihat ulasan lengkap tentang Xamarin, Xamarin.Forms, dan Xamarin.Essensial sebagai bagian dari presentasi "Membuat Aplikasi Mobile Menggunakan Visual Studio dan Xamarin" di Microsoft Build 2018.



Informasi tambahan


Anda dapat melihat dokumentasi kami untuk panduan lengkap untuk memulai dan menggunakan setiap fungsi Xamarin.Essentials. Kami juga telah menyediakan daftar lengkap tautan API yang dapat Anda lihat di Internet untuk mempelajari semua detail Xamarin.Essentials APIs.

Source: https://habr.com/ru/post/id415021/


All Articles