Altbilgi içeriğine atla
IRONQR KULLANıMı

.NET MAUI ile QR Kodu tarayıcı nasıl kullanılır

Mobil uygulamalar, QR Kodlarını hızlı bilgi erişimi için kullanmaya gittikçe daha fazla yönelirken, verimli ve kolay entegre edilebilen bir QR Kod tarayıcıya ve ayrıca BarKodları okumak için bir .NET MAUI Barkod tarayıcıya ihtiyaç artıyor. .NETMAUI (Çoklu Platform Uygulama UI), Microsoft'un platformlar arası bir çerçevesi olarak iOS, Android, macOS ve Windows üzerinde uygulamalar oluşturmak için birleşik bir ortam sağlar. .NET MAUI uygulamasında QR Kodlarını tararken, geliştiricilerin süreci yönetmek için sezgisel ve güçlü bir kütüphaneye ihtiyaçları vardır.

IronQR geliştiricilerin QR kodları hızlı, doğru ve güvenilir bir şekilde oluşturup çözmeleri için popüler bir kütüphanedir. Bu makale, birden çok platformda sorunsuz şekilde çalışabilen bir QR/Barkod tarayıcı oluşturmak amacıyla .NET MAUI ile IronQR entegrasyonunu adım adım öğretecektir.

IronQR kullanarak QR Barkod Tarama nasıl uygulanır

  1. Bir .NET MAUI Projesi oluşturun.
  2. IronQR NuGet paketini yükleyin.
  3. Kameralar ve dosya depolama için izinleri ayarlayın.
  4. QR Kod Tarayıcıyı uygulayın.

IronQR for .NET MAUI Mobil Uygulamalara Giriş

IronQR, .NET uygulamalarında QR Kodları oluşturmayı ve çözümlemeyi basitleştiren güçlü ve kullanımı kolay bir kütüphanedir. QR ve Barkod tarama fonksiyonu için .NET MAUI mobil uygulamalarını da içerir. iOS, Android, macOS ve Windows gibi platformlar arasında QR Kod ve Barkod tarama işlevselliğini entegre etmek için hızlı ve güvenilir çözümler sunarak çapraz platform mobil uygulamalar inşa etmek için kritik öneme sahiptir.

IronQR for .NET MAUI Mobil Uygulamanın Özellikleri

  • Çapraz Platform Desteği: MAUI uygulamaları içinde iOS, Android, macOS ve Windows platformları arasında sorunsuz çalışır.
  • QR Kod Tarama: URL, metin, iletişim bilgileri vb. gibi çeşitli QR Kod türlerini verimli bir şekilde çözer. Ayrıca, verimli Barkod tespit algoritmaları ile birden fazla Barkodu okumayı destekler.
  • QR Kod Üretimi: URL'ler, metinler ve daha fazlası gibi verilerden kolayca QR Kodları oluşturulmasına olanak tanır.
  • Kamera İzni Yönetimi: Otomatik olarak kamera izin isteklerini yöneterek tarama işlemini basitleştirir.
  • Yüksek Performans: Minimum kaynak kullanımı ile hızlı ve güvenilir QR Kod tarama ve oluşturma.
  • Özelleştirilebilir Ayarlar: Tarama parametreleri ve QR Kod görünümü için özelleştirme seçenekleri sunar.
  • Kolay Entegrasyon: QR Kod tarama ve oluşturmayı .NET MAUI uygulamanıza eklemek için basit API ve minimum kurulum gerektirir.
  • Hata Yönetimi: Çeşitli senaryolarda sorunsuz işlevsellik sağlamak için ayrıntılı hata mesajları ve sorun giderme sunar.
  • Dış Bağımlılıklar Yok: ZXing Barkod tarayıcıdan farklı olarak, IronQR üçüncü taraf kütüphanelere veya karmaşık yapılandırmalara olan ihtiyaçı azaltarak bağımsız çalışır.
  • Çok Format Desteği: Gerçek dünyada kullanılan geniş bir QR Kod yelpazesi ile uyumluluğu sağlamak için birden fazla QR Kod formatını destekler.

Gereklilikler

Uygulama işlemine başlamadan önce aşağıdaki ön gerekliliklere sahip olduğunuzdan emin olun:

  1. Visual Studio 2022 veya daha sonraki bir sürüm yüklü.
  2. .NET 6.0 SDK veya daha yeni (çünkü .NET MAUI, .NET 6 ve sonraki sürümler üzerinde inşa edilmiştir).
  3. QR Kod taraması ve Barkod tespiti için IronQR NuGet Paketi.
  4. .NET MAUI uygulaması (Eğer zaten bir tane yoksa, Visual Studio'da yeni bir MAUI uygulaması oluşturabilirsiniz).

Adım 1: Bir .NET MAUI Projesi Oluşturun

Başlamak için basit bir .NET MAUI projesi oluşturalım:

  1. Visual Studio'yu açın ve Yeni bir proje oluştur seçeneğine tıklayın.
  2. .NET MAUI Uygulaması şablonunu seçin.

    Yeni Proje

  3. Projeyi adlandırın (örneğin, MauiQRCodeScanner), bir konum seçin ve İleri tıklayın.

    Proje Konfigürasyonu

    Gerekli .NET sürümünü seçin ve Oluştur tıklayın.

    Hedef Çerçeve

Adım 2: IronQR NuGet paketini yükleyin

IronQR, QR Kod üretme ve tarama işlevlerini sağlayan üçüncü taraf bir kütüphanedir. IronQR'u yüklemek için, NuGet üzerinden eklemeniz gerekir:

  1. Visual Studio'da, Çözüm Gezgini'nde Bağımlılıklar üzerinde sağ tıklayın.
  2. NuGet Paketlerini Yönet tıklayın.
  3. Gözat sekmesinde, IronQR'u arayın ve ilgili paketi (genellikle IronQR veya özellikle MAUI için mevcutsa IronQr.Maui) Yükle tıklayın.
  4. Herhangi bir lisansı kabul edin ve kütüphanenin yüklendiğinden emin olun.

    IronQR

Adım 3: Kamera ve dosya depolama için İzinleri Ayarlayın

Uygulamanızın QR Kodları tarayabilmesi için, mobil platformlarda (iOS ve Android) kamera izinlerini istemeniz gerekir. Aşağıdaki izinleri nasıl ekleyebileceğiniz hakkında.

Android

AndroidManifest.xml dosyasında, kamera iznini ekleyin:

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
XML

iOS

Info.plist dosyasında, kamera kullanım açıklamasını ekleyin:

<key>NSCameraUsageDescription</key>
<string>We need access to your camera to scan QR codes</string>
<key>NSCameraUsageDescription</key>
<string>We need access to your camera to scan QR codes</string>
XML

Adım 4: QR Kod Tarayıcıyı Uygulayın

Şimdi MAUI Barkod tarayıcı uygulamamızda QR tarayıcı için basit bir UI oluşturalım. Taramayı başlatmak için bir buton ve taranan QR Kod metnini göstermek için bir etiket kullanacağız.

XML ad alanında MainPage.xaml dosyasını düzenleyin.

<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             x:Class="MauiQRCodeScanner.MainPage">

    <StackLayout Padding="20" VerticalOptions="Center">
        <Button x:Name="scanButton" Text="Scan QR Code" Clicked="OnScanButtonClicked" />
        <Label x:Name="resultLabel" Text="Scan Result will appear here" HorizontalOptions="Center" VerticalOptions="CenterAndExpand"/>
    </StackLayout>
</ContentPage>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             x:Class="MauiQRCodeScanner.MainPage">

    <StackLayout Padding="20" VerticalOptions="Center">
        <Button x:Name="scanButton" Text="Scan QR Code" Clicked="OnScanButtonClicked" />
        <Label x:Name="resultLabel" Text="Scan Result will appear here" HorizontalOptions="Center" VerticalOptions="CenterAndExpand"/>
    </StackLayout>
</ContentPage>
XML

Artık, MainPage.xaml.cs içerisinde, kamera izinlerini ve QR Kodu tarama mantığını ele alacaksınız. Bunu nasıl uygulayacağınız burada:

using IronQrCode;
using Microsoft.Maui.Controls;
using Microsoft.Maui.Essentials;

namespace MauiQRCodeScanner
{
    public partial class MainPage : ContentPage
    {
        public MainPage()
        {
            License.LicenseKey = "Your key";  // Add your IronQR license key here
            InitializeComponent();
        }

        // OnScanButtonClicked method with object sender as input
        private async void OnScanButtonClicked(object sender, EventArgs e)
        {
            // Check for camera permission
            var status = await Permissions.RequestAsync<Permissions.Camera>();
            if (status != PermissionStatus.Granted)
            {
                await DisplayAlert("Permission Denied", "Cannot scan QR codes without camera permission", "OK");
                return;
            }

            // Start scanning QR codes
            try
            {
                var images = await FilePicker.Default.PickAsync(new PickOptions
                {
                    PickerTitle = "Pick image",
                    FileTypes = FilePickerFileType.Images
                });
                var imageSource = images.FullPath.ToString();

                var inputBmp = AnyBitmap.FromFile(imageSource);
                // Load the asset into QrImageInput
                QrImageInput imageInput = new QrImageInput(inputBmp);

                // Create a QR Reader object
                QrReader reader = new QrReader();

                // Read the input and get all embedded QR Codes
                IEnumerable<QrResult> results = reader.Read(imageInput);

                if (results.Any())
                {
                    resultLabel.Text = "Scanned Text: " + results.First().Value; 
        // Display the result
                }
                else
                {
                    resultLabel.Text = "No QR code detected";
                }
        }
        catch (Exception ex)
        {
            resultLabel.Text = "Error: " + ex.Message;
        }
        }
    }
}
using IronQrCode;
using Microsoft.Maui.Controls;
using Microsoft.Maui.Essentials;

namespace MauiQRCodeScanner
{
    public partial class MainPage : ContentPage
    {
        public MainPage()
        {
            License.LicenseKey = "Your key";  // Add your IronQR license key here
            InitializeComponent();
        }

        // OnScanButtonClicked method with object sender as input
        private async void OnScanButtonClicked(object sender, EventArgs e)
        {
            // Check for camera permission
            var status = await Permissions.RequestAsync<Permissions.Camera>();
            if (status != PermissionStatus.Granted)
            {
                await DisplayAlert("Permission Denied", "Cannot scan QR codes without camera permission", "OK");
                return;
            }

            // Start scanning QR codes
            try
            {
                var images = await FilePicker.Default.PickAsync(new PickOptions
                {
                    PickerTitle = "Pick image",
                    FileTypes = FilePickerFileType.Images
                });
                var imageSource = images.FullPath.ToString();

                var inputBmp = AnyBitmap.FromFile(imageSource);
                // Load the asset into QrImageInput
                QrImageInput imageInput = new QrImageInput(inputBmp);

                // Create a QR Reader object
                QrReader reader = new QrReader();

                // Read the input and get all embedded QR Codes
                IEnumerable<QrResult> results = reader.Read(imageInput);

                if (results.Any())
                {
                    resultLabel.Text = "Scanned Text: " + results.First().Value; 
        // Display the result
                }
                else
                {
                    resultLabel.Text = "No QR code detected";
                }
        }
        catch (Exception ex)
        {
            resultLabel.Text = "Error: " + ex.Message;
        }
        }
    }
}
Imports IronQrCode
Imports Microsoft.Maui.Controls
Imports Microsoft.Maui.Essentials

Namespace MauiQRCodeScanner
	Partial Public Class MainPage
		Inherits ContentPage

		Public Sub New()
			License.LicenseKey = "Your key" ' Add your IronQR license key here
			InitializeComponent()
		End Sub

		' OnScanButtonClicked method with object sender as input
		Private Async Sub OnScanButtonClicked(ByVal sender As Object, ByVal e As EventArgs)
			' Check for camera permission
			Dim status = Await Permissions.RequestAsync(Of Permissions.Camera)()
			If status <> PermissionStatus.Granted Then
				Await DisplayAlert("Permission Denied", "Cannot scan QR codes without camera permission", "OK")
				Return
			End If

			' Start scanning QR codes
			Try
				Dim images = Await FilePicker.Default.PickAsync(New PickOptions With {
					.PickerTitle = "Pick image",
					.FileTypes = FilePickerFileType.Images
				})
				Dim imageSource = images.FullPath.ToString()

				Dim inputBmp = AnyBitmap.FromFile(imageSource)
				' Load the asset into QrImageInput
				Dim imageInput As New QrImageInput(inputBmp)

				' Create a QR Reader object
				Dim reader As New QrReader()

				' Read the input and get all embedded QR Codes
				Dim results As IEnumerable(Of QrResult) = reader.Read(imageInput)

				If results.Any() Then
					resultLabel.Text = "Scanned Text: " & results.First().Value
		' Display the result
				Else
					resultLabel.Text = "No QR code detected"
				End If
		Catch ex As Exception
			resultLabel.Text = "Error: " & ex.Message
		End Try
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Kod Açıklaması

  • İzinler: Permissions.RequestAsync<Permissions.Camera>() kullanarak kamera izinlerini talep ediyoruz. İzin reddedilirse, kullanıcıya bir uyarı gösterilir.
  • IronQR Tarayıcı: QR Kodlarını taramak için IronQR kütüphane nesneleri ve yöntemlerini kullanın. QrReader.Read() yöntemi QR Kodlarını çözmeyi dener ve sonuç etikette gösterilir.

Giriş QR Kodu

QR Kodu Girişi

Çıktı

QR Kodu Çıkışı

Gerekli QR Kodu seçin veya Kamera beslemesinden yakalayın.

QR Kodunu Seç

Sonuç aşağıdaki gibi UI'da gösterilir.

QR Kodu UI Çıkışı

IronQR Lisansı (Deneme Mevcut)

IronQR mobil uygulama kodunda bir lisans anahtarı ile çalışır. Geliştiriciler deneme lisansını kolayca lisans sayfasından alabilirler. IronQR kütüphanesini kullanmadan önce kodda bir yere lisansı yerleştirin.

License.LicenseKey = "Your License";
License.LicenseKey = "Your License";
License.LicenseKey = "Your License"
$vbLabelText   $csharpLabel

Sonuç

Bu makalede, IronQR kullanarak .NET MAUI uygulamasında bir QR Kod tarayıcı oluşturma sürecini adım adım inceledik. .NET MAUI uygulaması kurarak, IronQR paketini yükleyerek ve UI ve tarama mantığını uygulayarak başladık. IronQR, .NET MAUI uygulamasında QR Kod taramasını inanılmaz derecede basit ve etkili hale getirir.

IronQR kütüphanesi, .NET MAUI ile oluşturulmuş uygulamaların akıllı telefonlar, tabletler veya masaüstü sistemler olsun, tüm hedef cihazlarda QR Kod işlevselliğine sürekli erişimini sağlayan çapraz platform olacak şekilde tasarlandı. IronQR, manuel izin yönetiminin zahmetini ortadan kaldıran otomatik kamera izni yönetimi gibi özellikleri de destekler ve QR Kod taramayı entegre etmeyi kolaylaştırır.

Kısacası, IronQR for .NET MAUI, geliştiricilerin mobil uygulamalarında hızla QR Kod tarama ve oluşturma özelliklerini uygulamalarına olanak tanıyarak geliştirmeyi hızlandırır ve tüm platformlarda kullanıcı deneyimini iyileştirir.

Sıkça Sorulan Sorular

.NET MAUI uygulamasına QR Kod tarayıcı nasıl entegre edebilirim?

.NET MAUI uygulamasına QR Kod tarayıcı entegre etmek için, NuGet aracılığıyla IronQR kütüphanesini kullanın ve QR Kodlarını decode etmek için QrReader.Read() kullanın.

QR taraması için bir .NET MAUI projesi oluşturmanın adımları nelerdir?

Visual Studio'yu açarak başlayın, .NET MAUI App şablonunu kullanarak yeni bir proje oluşturun ve gerekli .NET sürümünü seçin. Ardından, QR taramayı uygulamak için IronQR kütüphanesini yükleyin.

.NET MAUI uygulamalarında QR taraması için hangi izinler gereklidir?

QR taraması kamera izinlerini gerektirir. Android'de, gereken izinleri AndroidManifest.xml dosyasına ekleyin ve iOS'ta Info.plist ile kamera kullanımı açıklaması güncelleyin.

.NET MAUI uygulamasında kamera izinlerini nasıl yönetirim?

Kamera izinlerini istemek için Permissions.RequestAsync() komutunu kullanın. Reddetme durumunda kullanıcıyı bilgilendiren bir uyarı gösterin.

QR taraması için IronQR kütüphanesini kullanmanın faydaları nelerdir?

IronQR, platformlar arası destek, yüksek performans, özelleştirilebilir ayarlar, otomatik kamera izin yönetimi ve çok formatlı destek sunar, bu da onu .NET MAUI uygulamaları için ideal hale getirir.

.NET MAUI uygulamamda QR Kod tarama sorunlarını nasıl çözebilirim?

IronQR kütüphanesinin doğru kurulduğundan, kamera izinlerinin verildiğinden ve cihaz kamerasının çalıştığından emin olun. Kodda herhangi bir hata için try-catch bloklarını kontrol edin.

.NET MAUI ve QR taraması ile geliştirmeye başlamak için ne gereklidir?

Visual Studio 2022 veya sonrası, .NET 6.0 SDK veya günceli ve QR Kod taraması ile Barkod algılama sağlamak için IronQR NuGet Paketi gereklidir.

QR kod kütüphanesi için deneme lisansını nasıl alabilirim?

IronQR lisans sayfasını ziyaret ederek bir deneme lisans anahtarı alın. IronQR özelliklerini kullanmadan önce bu lisans anahtarını kodunuza ekleyin.

IronQR kütüphanesi, hangi formatlar için QR taramasını destekliyor?

IronQR, farklı uygulamalar ve platformlarda kullanılmasını sağlamak için çok sayıda QR Kod ve Barkod formatını destekler.

.NET uygulamasında QR Kodları nasıl oluşturabilirim?

IronQR kütüphanesinin metodlarını kullanarak QR Kodlarını etkili bir şekilde oluşturun, uygulamanızın ihtiyaçlarına göre ayarları özelleştirmenize izin verin.

Jordi Bardia
Yazılım Mühendisi
Jordi Python, C# ve C++ konularında en yetkin, Iron Software'deki yeteneklerini kullanmadığı zamanlarda; oyun programlıyor. Ürün testi, ürün geliştirme ve araştırma sorumluluklarını paylaşan Jordi, sürekli ürün gelişimine büyük değer katıyor. Çeşitli deneyimleri onu ...
Daha Fazlasını Oku

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara