【问题标题】:No implementation found for method getAndroidDeviceInfo找不到方法 getAndroidDeviceInfo 的实现
【发布时间】:2018-10-06 05:31:38
【问题描述】:

我正在尝试在插件页面中运行此 example 我得到这个错误

I/flutter ( 3273): MissingPluginException(No implementation found for method getAndroidDeviceInfo on channel plugins.flutter.io/device_info)
I/flutter ( 3273): #0      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:153:7)
I/flutter ( 3273): <asynchronous suspension>
I/flutter ( 3273): #1      DeviceInfoPlugin.androidInfo (package:device_info/device_info.dart:25:35)
I/flutter ( 3273): <asynchronous suspension>
I/flutter ( 3273): #2      _MyAppState.initPlatformState (/data/user/0/com.yourcompany.demos/cache/demosSWKRJL/demos/lib/main.dart:37:67)
I/flutter ( 3273): <asynchronous suspension>
I/flutter ( 3273): #3      _MyAppState.initState (/data/user/0/com.yourcompany.demos/cache/demosSWKRJL/demos/lib/main.dart:29:5)
I/flutter ( 3273): #4      StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:3734:58)
I/flutter ( 3273): #5      ComponentElement.mount (package:flutter/src/widgets/framework.dart:3600:5)
I/flutter ( 3273): #6      Element.inflateWidget (package:flutter/src/widgets/framework.dart:2890:14)
I/flutter ( 3273): #7      Element.updateChild (package:flutter/src/widgets/framework.dart:2693:12)
I/flutter ( 3273): #8      RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:852:16)
I/flutter ( 3273): #9      RenderObjectToWidgetElement.mount (package:flutter/src/widgets/binding.dart:823:5)
I/flutter ( 3273): #10     RenderObje

【问题讨论】:

  • 您是否将device_info: "^0.2.0" 包含在pubspec.yaml 中,以便更好地共享您的代码,以便在您共享的示例代码完美运行时容易理解问题
  • 请运行flutter doctor -v 并粘贴结果 - 我刚刚在我的系统上运行插件没有问题。另外,在运行应用程序之前尝试运行flutter packages get。您可能还想尝试使用 flutter upgrade 升级到最新的颤振。
  • 我认为这是一个错误,因为尝试过的示例是一部真正的手机,它可以工作并再次尝试,效果很好,谢谢
  • 分享你的 pubspec.yaml

标签: dart flutter


【解决方案1】:

按照这4个步骤就可以了

  flutter clean

flutter pub get

flutter clean

flutter run

【讨论】:

    【解决方案2】:

    我在这里找到了答案:https://pub.dev/packages/device_info_plus/example

    正如@challeget 回答的那样,您需要检查设备。

    【讨论】:

      【解决方案3】:

      停止应用并重新启动构建。这对我有用。

      【讨论】:

      【解决方案4】:

      这不是错误

      这与@challeget 回答的平台特定编码无关

      • 您只需要重新构建并再次运行应用程序,flutter-plugin 即可添加并正常工作。

      热重启不起作用

      :hearts [顺便说一句,这是一个功能请求]

      【讨论】:

      • 这是有效的答案。
      【解决方案5】:
      DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
      if (Platform.isAndroid) {
        AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
      } else if (Platform.isIOS) {
        IosDeviceInfo iosInfo = await deviceInfo.iosInfo;
      }
      

      你需要判断设备。

      【讨论】:

      • 不鼓励仅使用代码的答案。请单击编辑并添加一些单词来总结您的代码如何解决问题。谢谢
      猜你喜欢
      • 2020-09-15
      • 1970-01-01
      • 2021-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-26
      • 2018-11-20
      相关资源
      最近更新 更多