Cara Membangun Backend untuk Xamarin?
Dalam tutorial ini, Anda akan belajar bagaimana membangun backend untuk Xamarin aplikasi mobile Anda menggunakan fitur-fitur kuat dari Back4App.
Kami akan mengandalkan REST API, GraphQL, dan opsi API web lainnya alih-alih menggunakan SDK khusus. Pendekatan ini menjaga klien mobile Anda tetap ringan dan fleksibel, memungkinkan Anda untuk terhubung ke data Anda melalui panggilan HTTP sederhana.
Kami akan membahas pembuatan model database, menerapkan keamanan, menangani otentikasi, dan melakukan operasi file.
Dengan mengikuti langkah-langkah ini, Anda akan melihat bagaimana membangun backend untuk xamarin dengan cepat dan aman.
Anda juga akan menjelajahi penjadwalan tugas otomatis dan mengintegrasikan webhooks untuk memperluas fungsionalitas aplikasi Xamarin Anda, sehingga Anda dapat fokus pada pengkodean UI Anda alih-alih mengatur konfigurasi server.
Setelah Anda menyelesaikan panduan ini, Anda akan memiliki template yang dapat digunakan kembali untuk membangun aplikasi seluler yang bergantung pada Back4App untuk backend mereka.
Anda juga akan memahami cara menerapkan Daftar Kontrol Akses (ACL), menulis Kode Cloud (jika diperlukan), dan menggabungkan alur kerja lanjutan seperti Kueri Langsung atau Pekerjaan Cloud dalam solusi akhir Anda.
Untuk mendapatkan hasil maksimal dari tutorial ini, pastikan Anda memiliki:
- Lingkungan pengembangan Xamarin (Visual Studio atau Visual Studio untuk Mac) Dokumen Instalasi Xamarin
- Pengetahuan dasar tentang C# dan Xamarin (termasuk cara membuat permintaan API web dari sebuah kelas publik dalam C#).
Dengan prasyarat ini siap, Anda akan siap untuk mengikuti dan menghubungkan proyek Xamarin Anda ke Back4App.
- Buat proyek Back4App di dasbor Back4App Anda. Ini adalah dasar untuk backend Anda.
- Beri nama proyek Anda (misalnya, “Xamarin-Backend-Tutorial”).
- Temukan Kunci Aplikasi Anda dengan pergi ke bagian “Keamanan & Kunci” aplikasi. Anda akan melihat kunci REST, GraphQL, atau kunci lain yang mungkin Anda gunakan saat membuat permintaan dari klien seluler Anda.
- Konfigurasikan proyek Xamarin Anda untuk membuat permintaan HTTP. Alih-alih menggunakan Parse SDK, Anda akan menggunakan HttpClient, atau pustaka jaringan lain yang Anda pilih, untuk memanggil REST atau GraphQL aplikasi Back4App Anda.
Misalnya, Anda dapat menyimpan ID Aplikasi dan Kunci API REST Anda di tempat yang aman atau di file konstanta:
Saat memanggil web api, selalu sertakan kredensial ini dalam header permintaan Anda. Ini memastikan permintaan Anda diarahkan ke aplikasi yang benar dengan otorisasi yang diperlukan.
Gunakan dasbor Back4App untuk mendefinisikan kelas Anda atau biarkan mereka dibuat secara dinamis pada permintaan pertama. Misalnya, jika Anda ingin kelas Todo , Anda dapat membuatnya di bagian Database atau secara langsung melalui panggilan REST API :
Back4App menyediakan AI Agent yang dapat menghasilkan struktur kelas lengkap:
- Buka AI Agent di proyek Back4App Anda.
- Deskripsikan model Anda (misalnya, “Silakan buat kelas baru bernama ‘Todo’ dengan field title dan isCompleted.”).
- Konfirmasi untuk menghasilkan skema secara otomatis.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/0snNZwHWzxuXlNu30n7IA_image.png?format=webp)
Di dalam Xamarin proyek Anda, Anda dapat menulis sebuah public class (misalnya, RestClient) yang menangani semua permintaan ke Back4App:
Untuk kueri GraphQL, Anda dapat mengirim permintaan ke endpoint GraphQL Back4App:
Demikian pula, dari Xamarin, Anda dapat POST body JSON dengan string GraphQL Anda ke https://parseapi.back4app.com/graphql.
Meskipun Anda menggunakan panggilan API web daripada Parse SDK, Anda masih dapat mengaktifkan Live Queries jika Anda menginginkan pembaruan data secara real-time. Anda akan menggunakan koneksi khusus (WebSockets) untuk berlangganan perubahan kelas. Aktifkan Live Queries dari Pengaturan Server aplikasi Anda di Back4App, kemudian gunakan pustaka klien yang kompatibel di Xamarin, jika tersedia. Sebagai alternatif, Anda dapat membangun solusi WebSocket Anda sendiri atau mengandalkan polling jika dukungan real-time bersifat opsional untuk aplikasi Anda.
Keamanan Back4App mencakup Izin Tingkat Kelas (CLP) dan Daftar Kontrol Akses (ACL). CLP mendefinisikan pengguna atau peran mana yang dapat membaca/menulis ke seluruh kelas. ACL menambahkan keamanan per-objek. Gabungkan keduanya untuk memastikan hanya pengguna yang berwenang yang dapat memanipulasi data Anda.
- Buka database di Back4App.
- Pilih kelas Anda (seperti Todo).
- Pergi ke Izin Tingkat Kelas untuk mengatur aturan baca/tulis. Anda mungkin hanya mengizinkan pengguna yang terautentikasi untuk membaca atau menulis. Ini memastikan bahwa klien seluler Anda harus masuk sebelum membaca data.
Kode Cloud memungkinkan Anda menjalankan logika sisi server yang kustom. Anda dapat membuat aturan bisnis, validasi, atau pemicu yang dijalankan saat data berubah. Ini mengurangi risiko manipulasi karena logika dijalankan di luar klien seluler.
Di bawah ini adalah contoh sederhana dari Fungsi Cloud di file main.js :
Untuk menyebarkan, Anda dapat menggunakan Back4App CLI atau bagian Kode Cloud di dasbor Anda. Setelah disebarkan, Anda dapat memanggil fungsi Anda dari Xamarin melalui REST:
Jika Anda memerlukan pustaka tambahan, instal melalui npm di folder proyek Cloud Code Anda. Setelah itu, require mereka di main.js. Pendekatan ini berguna untuk memanggil API pihak ketiga dari sisi server.
Di Back4App, kelas _User mengelola kredensial pengguna. Di bawah Pengaturan Aplikasi, Anda dapat mengaktifkan autentikasi pengguna, verifikasi email, dan pengaturan reset kata sandi.
Dari proyek Xamarin Anda, Anda dapat menulis metode C# untuk menangani pendaftaran dan masuk:
Anda kemudian dapat menyimpan token sesi di sisi klien untuk permintaan di masa mendatang.
Untuk mengintegrasikan masuk sosial (misalnya, Google, Facebook), konsultasikan dengan dokumentasi Masuk Sosial Back4App. Setiap penyedia memiliki alur OAuth-nya sendiri, yang dapat Anda tangani dari klien seluler. Kemudian, kirimkan token yang dikembalikan ke Back4App.
File dapat diunggah dengan mengirimkan permintaan POST dengan data file di dalam body. Misalnya, untuk menyimpan gambar dari aplikasi Xamarin Anda, baca gambar ke dalam array byte, lalu kirim:
Untuk mengamankan unggahan file, pergi ke Pengaturan Server Anda di Back4App dan sesuaikan Izin File. Misalnya, Anda hanya dapat mengizinkan pengguna yang terautentikasi untuk mengunggah.
Verifikasi email memastikan bahwa pengguna memiliki email yang mereka daftarkan. Tautan reset kata sandi memungkinkan mereka untuk mendapatkan kembali akses jika mereka lupa kata sandi mereka.
- Aktifkan verifikasi email di bawah Pengaturan Email.
- Edit template reset kata sandi dan atur alamat “Dari”.
- Anda juga dapat menyesuaikan konten email agar sesuai dengan merek Anda.
Setelah diaktifkan, jika seorang pengguna mendaftar dengan email, mereka akan mendapatkan tautan verifikasi. Panggilan reset kata sandi dilakukan ke API dasar yang sama dengan email pengguna untuk memicu email reset.
Pekerjaan Cloud memungkinkan Anda untuk menjadwalkan tugas rutin, seperti membersihkan data lama atau mengirim email ringkasan harian, semuanya dari platform Back4App.
Terapkan Kode Cloud, lalu jadwalkan pekerjaan di bawah Pengaturan Aplikasi > Pengaturan Server > Pekerjaan Latar Belakang.
- Tentukan webhook di Back4App dengan menavigasi ke Lainnya > WebHooks dan klik “Tambahkan Webhook.”
- Berikan endpoint, seperti https://your-service.com/webhook-endpoint.
- Pilih pemicu, seperti “Objek baru di kelas Todo.”
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/morUMdwsAbVQ1EmBfUfAA_image.png?format=webp)
Webhook dapat memberi tahu layanan pihak ketiga, sehingga aplikasi Xamarin Anda dapat tetap ringan sementara sistem eksternal menangani logika atau notifikasi tambahan.
Aplikasi Admin Back4App adalah cara yang ramah pengguna untuk menangani operasi CRUD tanpa menulis kueri. Aktifkan di Dasbor Aplikasi > Lainnya > Aplikasi Admin. Buat pengguna admin, pilih subdomain, dan masuk.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/jOFU8C0qiFm6wiVZXS9l0_image.png?format=webp)
Aplikasi Admin ini ideal untuk anggota tim non-teknis yang perlu mengelola data tetapi tidak seharusnya memiliki akses langsung ke database.
Anda baru saja melihat bagaimana membangun backend untuk xamarin menggunakan Back4App API. Anda membuat kelas yang aman, menambahkan CLP dan ACL, menangani otentikasi, dan menjelajahi unggahan file, penjadwalan tugas, dan integrasi dengan layanan eksternal. Pendekatan ini memastikan bahwa aplikasi mobile Anda tetap cepat dan fleksibel sambil memanfaatkan kekuatan database yang dihosting dan lingkungan cloud.
- Kembangkan aplikasi Xamarin Anda untuk menangani logika yang lebih kompleks, caching, atau peran dan izin yang lebih maju.
- Selami fitur-fitur canggih, seperti notifikasi push, atau integrasikan data waktu nyata dengan Live Queries jika Anda memerlukan pembaruan kolaboratif.
- Kunjungi dokumentasi resmi Back4App untuk panduan lebih dalam tentang keamanan, kinerja, dan debugging.
- Buat solusi dunia nyata dengan mencampurkan API pihak ketiga (gerbang pembayaran, analitik, media sosial) dengan backend Back4App Anda. Kombinasi ini dapat meningkatkan fungsionalitas klien mobile Anda dan menjaga kode Anda terorganisir.
![Doc contributor](https://s3.amazonaws.com/archbee-animals/cat.png)