[flutter] 플러터에서 device_info 패키지를 이용하여 디바이스의 보이스 콜 기능 지원 여부 확인하기
플러터(Flutter) 앱을 개발하다보면, 디바이스의 보이스 콜 기능을 지원하는지 확인해야 할 때가 있을 수 있습니다. 이때 device_info 패키지를 사용하면 간단하게 디바이스의 정보를 가져와서 보이스 콜 기능을 지원하는지 여부를 확인할 수 있습니다.
device_info 패키지 설치하기
먼저, pubspec.yaml 파일에 device_info 패키지를 아래와 같이 추가해주세요.
dependencies:
device_info: ^2.0.3
그리고, 패키지를 설치하기 위해 터미널을 열고 다음 명령어를 실행해주세요.
$ flutter pub get
device_info 패키지를 이용하여 보이스 콜 기능 지원 여부 확인하기
device_info 패키지를 사용하면 어떤 디바이스에서 앱이 실행되고 있는지 알 수 있습니다. 이 정보를 가지고 보이스 콜 기능을 지원하는지 여부를 확인할 수 있습니다.
import 'package:device_info/device_info.dart';
bool isVoiceCallSupported() {
if (Platform.isAndroid) {
AndroidDeviceInfo androidInfo = DeviceInfoPlugin().androidInfo;
return androidInfo.hasSystemFeature('android.hardware.telephony');
} else if (Platform.isIOS) {
IosDeviceInfo iosInfo = DeviceInfoPlugin().iosInfo;
return false; // iOS에서 보이스 콜 기능 지원 여부 확인은 안됨 (기본적으로 지원됨)
} else {
return false; // 다른 플랫폼은 보이스 콜 기능 지원 여부 확인이 안됨
}
}
위 예제 코드는 플랫폼별로 디바이스 정보를 가져와서 안드로이드의 경우 ‘android.hardware.telephony’ 시스템 피처를 가지고 있는지 확인합니다. 가지고 있다면 보이스 콜 기능을 지원하는 것으로 간주됩니다.
사용 예시
위에서 정의한 isVoiceCallSupported()
함수를 호출하여 보이스 콜 기능을 지원하는지 여부를 확인할 수 있습니다.
bool isSupported = isVoiceCallSupported();
if (isSupported) {
print("보이스 콜 기능을 지원합니다.");
} else {
print("보이스 콜 기능을 지원하지 않습니다.");
}
위 예제는 보이스 콜 기능을 지원하는지 여부를 확인하여 그 결과를 출력하는 간단한 예시입니다.