flutter中获取手机的型号和名称
时间: 2024-11-18 16:16:42 浏览: 27
Flutter中获取屏幕及Widget的宽高示例代码
在 Flutter 中获取手机的型号和名称,可以利用 Android 和 iOS 平台提供的系统 API。以下是简单的步骤:
### 对于 Android 端:
1. 首先导入 `device_info` 插件,它提供设备信息的功能:
```dart
import 'package:device_info/device_info.dart';
```
2. 初始化并请求设备信息:
```dart
finalDeviceInfo = await DeviceInfoPlugin().getDevice();
```
3. 获取设备型号和名称:
```dart
String model = deviceInfo.model; // 设备型号
String name = deviceInfo.name; // 设备名称 (通常与品牌名相关)
```
### 对于 iOS 端:
由于 Flutter 通过桥接(Native Platform Channel)与原生 iOS 应用交互,你需要在 Objective-C 或 Swift 的代码中获取设备信息,然后传递给 Flutter。
1. 在 `ios/Runner/Generated/Classes/MyAppPlugin.m` 文件(Objective-C)或 `ios/Runner/Generated/Plugins/MyAppPlugin.swift` 文件(Swift)中添加相应的代码。
2. 使用 `UIDevice` 类获取设备信息:
```objc
NSString *modelName = [UIDevice currentDevice].model;
NSString *appName = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleDisplayName"];
```
或者在 Swift:
```swift
let modelName = UIDevice.current.model
let appName = Bundle.main.localizedObject(forInfoDictionaryKey: "CFBundleDisplayName") ?? ""
```
记得在 Flutter 端处理从 Native 收到的数据。
**
阅读全文