Bu yazımda flutter’da kullanıcıların cihaz modeli ‘nin nasıl tespit edileceğini göstereceğim. Bir mobil uygulama, farklı yapılandırmalara sahip çeşitli mobil cihazlarda çalışıyor olabilir. Bu nedenle, geliştiricilerin kullanıcıların cihaz modelini almaları önemlidir çünkü cihazlara özgü hata ve sorunları bu şekilde ele alıp soruna çözüm oluşturabilir.
Flutter’da mobil cihaz modeli nasıl öğrenilir?
Bu işlem için device_info eklentisini kullanacağız. Bu eklenti, cihazı hakkında bilgi veren bir Flutter paketidir. Paketi, pubspec.yaml dosyasına ekleyin.
dependencies:
flutter:
sdk: flutter
device_info: ^2.0.0
Ekledikten sonra terminalde aşağıdaki kodu çalıştırın.
flutter pub get
Aşağıdaki kodda oluşturduğumuz fonksiyon ile birlikte cihazın platforma göre cihaz bilgilerini alıyoruz.
if (Platform.isAndroid) {
AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
print(androidInfo.model);
} else if (Platform.isIOS) {
IosDeviceInfo iosInfo = await deviceInfo.iosInfo;
print(iosInfo.utsname.machine);
Aşağıda, örnek olması açısından Flutter’da cihaz modelini tespit etmek için basit bir proje örneği oluşurtum.
import 'package:flutter/material.dart';
import 'dart:io';
import 'package:device_info/device_info.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Cihaz Modeli Öğrenme',
home: FlutterExample(),
);
}
}
class FlutterExample extends StatefulWidget {
FlutterExample({Key key}) : super(key: key);
@override
_FlutterExampleState createState() => _FlutterExampleState();
}
class _FlutterExampleState extends State<FlutterExample> {
final DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
getModel() async {
if (Platform.isAndroid) {
AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
print(androidInfo.model);
} else if (Platform.isIOS) {
IosDeviceInfo iosInfo = await deviceInfo.iosInfo;
print(iosInfo.utsname.machine);
}
}
@override
void initState() {
getModel();
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Flutter Cihaz Modeli')),
body: Center(child: Text('Cihaz Bilgisi Örneği')));
}
}
Çıktı:
