[flutter] device_info 라이브러리를 사용하여 디바이스의 시스템 언어 설정 가져오기
Flutter 애플리케이션을 개발할 때 디바이스의 시스템 언어 설정을 가져와야할 때가 있습니다. 이를 위해 device_info
라이브러리를 사용할 수 있습니다. 이 라이브러리는 Android와 iOS의 기기 정보를 제공해주는 패키지입니다.
device_info 라이브러리 설치하기
먼저 device_info
라이브러리를 프로젝트에 추가해야 합니다. pubspec.yaml
파일을 열고 의존성으로 device_info
를 추가합니다.
dependencies:
flutter:
sdk: flutter
device_info: ^2.0.0 # 최신 버전 확인 필요
의존성을 추가한 후 터미널에서 아래 명령어를 실행하여 패키지를 다운로드 받습니다.
flutter pub get
디바이스의 시스템 언어 설정 가져오기
이제 device_info
라이브러리를 사용하여 디바이스의 시스템 언어 설정을 가져와보겠습니다.
import 'package:flutter/material.dart';
import 'package:device_info/device_info.dart';
class LanguageScreen extends StatefulWidget {
@override
_LanguageScreenState createState() => _LanguageScreenState();
}
class _LanguageScreenState extends State<LanguageScreen> {
String deviceLanguage = '';
@override
void initState() {
super.initState();
getDeviceLanguage();
}
Future<void> getDeviceLanguage() async {
DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
setState(() {
deviceLanguage = androidInfo.locale.languageCode;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('시스템 언어 설정 가져오기'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
'디바이스의 시스템 언어 설정:',
),
SizedBox(height: 10),
Text(
deviceLanguage,
style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold),
),
],
),
),
);
}
}
위의 예제 코드에서는 device_info
패키지를 사용하여 디바이스의 시스템 언어 설정을 가져오는 방법을 보여줍니다. getDeviceLanguage()
메소드에서 device_info
패키지를 초기화한 후, androidInfo.locale.languageCode
를 통해 디바이스의 언어 설정을 가져옵니다.
시스템 언어 설정을 가져오면 deviceLanguage
변수에 저장되고, 이를 화면에 출력합니다.
이제 위의 예제 코드를 실행하면 디바이스의 시스템 언어 설정을 확인할 수 있습니다.