[flutter] 디바이스의 브랜드 정보를 알아내는 방법 with device_info
플러터(Flutter) 앱을 개발할 때, 디바이스의 브랜드 정보를 알아내는 것은 가끔 필요한 경우가 있을 수 있습니다. 이를 위해 device_info
패키지를 사용하여 디바이스의 브랜드 정보를 얻을 수 있습니다.
device_info
패키지 추가
먼저, device_info
패키지를 프로젝트에 추가해야 합니다. pubspec.yaml
파일의 dependencies
섹션에 아래와 같이 device_info
패키지를 추가합니다:
dependencies:
flutter:
sdk: flutter
device_info: ^2.0.0
그리고 flutter pub get
명령어를 실행하여 패키지를 다운로드합니다.
브랜드 정보 가져오기
device_info
패키지를 사용하여 디바이스의 브랜드 정보를 가져오는 방법은 다음과 같습니다:
import 'package:device_info/device_info.dart';
String getDeviceBrand() {
String brand = '';
DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
if (defaultTargetPlatform == TargetPlatform.android) {
AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
brand = androidInfo.brand;
} else if (defaultTargetPlatform == TargetPlatform.iOS) {
IosDeviceInfo iosInfo = await deviceInfo.iosInfo;
brand = iosInfo.brand;
}
return brand;
}
이제 getDeviceBrand()
함수를 호출하면 사용 중인 디바이스의 브랜드 정보를 얻을 수 있습니다. 이 함수는 android
와 iOS
플랫폼에 모두 호환됩니다.
예제 사용
브랜드 정보를 얻기 위해 getDeviceBrand()
함수를 사용하는 예제를 보겠습니다:
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Device Brand Example',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: Scaffold(
appBar: AppBar(
title: Text('Device Brand Example'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
'Device Brand:',
),
FutureBuilder<String>(
future: getDeviceBrand(),
builder: (BuildContext context, AsyncSnapshot<String> snapshot) {
if (snapshot.connectionState == ConnectionState.done) {
return Text(
snapshot.data,
style: TextStyle(
fontWeight: FontWeight.bold,
fontSize: 24,
),
);
} else {
return CircularProgressIndicator();
}
},
),
],
),
),
),
);
}
}
이 예제는 앱의 첫 화면에 “Device Brand”라는 텍스트를 표시하고, getDeviceBrand()
함수를 사용하여 디바이스의 브랜드 정보를 로딩한 후에 해당 정보를 출력합니다.
앱을 실행하면 디바이스의 브랜드 정보가 표시될 것입니다.