Xamarin.Essentials:Peramban
Kelas Browser memungkinkan aplikasi untuk membuka tautan web di browser pilihan sistem yang dioptimalkan atau browser eksternal.
Untuk mulai menggunakan API ini, baca panduan memulai untuk Xamarin.Essentials memastikan pustaka diinstal dan disiapkan dengan benar di proyek Anda.
Untuk mengakses fungsionalitas Browser , diperlukan penyiapan spesifik platform berikut.
Jika versi Target Android proyek Anda diatur ke Android 11 (R API 30) Anda harus memperbarui Android Manifest dengan kueri yang digunakan dengan persyaratan visibilitas paket baru.
Buka file AndroidManifest.xml di bawah folder Properti dan tambahkan yang berikut ini di dalam node manifes:
<queries>
<intent>
<action android:name="android.intent.action.VIEW" />
<data android:scheme="http"/>
</intent>
<intent>
<action android:name="android.intent.action.VIEW" />
<data android:scheme="https"/>
</intent>
</queries>
Tambahkan referensi ke Xamarin.Essentials di kelas Anda:
using Xamarin.Essentials;
Fungsionalitas Browser berfungsi dengan memanggil OpenAsync
metode dengan Uri
dan BrowserLaunchMode
.
public class BrowserTest
{
public async Task OpenBrowser(Uri uri)
{
try
{
await Browser.OpenAsync(uri, BrowserLaunchMode.SystemPreferred);
}
catch(Exception ex)
{
// An unexpected error occured. No browser may be installed on the device.
}
}
}
Metode ini kembali setelah browser diluncurkan dan belum tentu ditutup oleh pengguna.
Saat menggunakan browser pilihan sistem, ada beberapa opsi penyesuaian yang tersedia untuk iOS dan Android. Ini termasuk TitleMode
(khusus Android), dan opsi warna pilihan untuk Toolbar
(iOS dan Android) dan Controls
(hanya iOS) yang muncul.
Opsi ini ditentukan menggunakan BrowserLaunchOptions
saat memanggil OpenAsync
.
await Browser.OpenAsync(uri, new BrowserLaunchOptions
{
LaunchMode = BrowserLaunchMode.SystemPreferred,
TitleMode = BrowserTitleMode.Show,
PreferredToolbarColor = Color.AliceBlue,
PreferredControlColor = Color.Violet
});
Mode Peluncuran menentukan bagaimana browser diluncurkan:
Tab Kustom akan mencoba digunakan untuk memuat Uri dan menjaga kesadaran navigasi.
Akan Intent
digunakan untuk meminta Uri dibuka melalui browser normal sistem.