在颤动中获取设备 IMEI

Mah*_*bri 2 dart flutter

我如何在颤振中获取设备IMEI我正在尝试使用以下插件获取唯一标识符:

uuid_type: ^0.7.0-dev
uuid: ^1.0.3
unique_identifier: ^0.0.3
flutter_udid: ^0.0.3 
Run Code Online (Sandbox Code Playgroud)

他们所有人都获得了 ID,但设备的 IMEI ID 不同

当我尝试使用此示例DeviceInfoPlugin 中的device_info 插件时, 出现错误:

此版本中的多个项目都有项目

mas*_*rav 8

从android 10开始,Android 不再允许您访问 IMEI 或任何其他设备标识符。第三方应用程序不能使用 IMEI 和手机序列号以及其他不可重置的设备标识符。所以,现在您无法访问

getSerial(),

getImei(),

getDeviceId(),

getSimSerialNumber(),

getSubscriberId()
Run Code Online (Sandbox Code Playgroud)

您必须为此使用另一个唯一标识符,例如 Android ID

请参考:https ://developer.android.com/preview/privacy/data-identifiers#device-ids


Mah*_*bri 6

获取唯一标识符的最佳方法...

在Android中:unique_identifier用于获取IMEI

dev_dependencies:
  unique_identifier: ^0.0.3

  String  identifier =await UniqueIdentifier.serial;
Run Code Online (Sandbox Code Playgroud)

在 IOS 中:Apple 不再允许您检索 IMEI 或任何其他设备标识,但您可以生成 UDID 起诉:

import 'package:device_info/device_info.dart';

final DeviceInfoPlugin deviceInfoPlugin = new DeviceInfoPlugin();
      var data = await deviceInfoPlugin.iosInfo;
      identifier = data.identifierForVendor;
Run Code Online (Sandbox Code Playgroud)

  • ` Stringidentifier =await UniqueIdentifier.serial;` 这将返回 androidID 而不是 IMEI。 (2认同)