flatter:PlatformException(错误,尝试调用虚拟方法';java.lang.Object android.app.Activity.getSystemService(java.lang.String)';

flatter:PlatformException(错误,尝试调用虚拟方法';java.lang.Object android.app.Activity.getSystemService(java.lang.String)';,java,android,flutter,Java,Android,Flutter,我正在尝试使用插件以管理员身份启用我的应用程序 下面是我的代码: @override void initState() { super.initState(); Admin.enable(); _callStreamSubscription = phoneStateCallEvent.listen((PhoneStateCallEvent event) { print('Call is Incoming or Connect

我正在尝试使用插件以管理员身份启用我的应用程序

下面是我的代码:

  @override
  void initState() {
    super.initState();  
    Admin.enable();            
    _callStreamSubscription = phoneStateCallEvent.listen((PhoneStateCallEvent event) {
      print('Call is Incoming or Connected: ' + event.stateC);  
      if(event.stateC=="true"){        
        _invokeNativeMethod("startRecording");
      }
      else if(event.stateC=="false"){        
        _invokeNativeMethod("stopRecording");      
      }
    });   
  }
错误如下:

E/flutter ( 8036): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: PlatformException(error, Attempt to invoke virtual method 'java.lang.Object android.app.Activity.getSystemService(java.lang.String)' on a null object reference, null)
E/flutter ( 8036): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7)
E/flutter ( 8036): #1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:321:33)
E/flutter ( 8036): <asynchronous suspension>                            
E/flutter ( 8036): #2      Admin.enable (package:admin/admin.dart:10:21)
E/flutter ( 8036): #3      _MyHomePageState.initState (package:automatic_call_recorder/main.dart:55:11)

E/flatter(8036):[ERROR:flatter/lib/ui/ui\u dart\u state.cc(157)]未处理的异常:PlatformException(错误,尝试在空对象引用上调用虚拟方法“java.lang.Object android.app.Activity.getSystemService(java.lang.String)”,空)
E/flatter(8036):#0 StandardMethodCodec.decodeEnvelope(包:flatter/src/services/message_编解码器。dart:569:7)
E/flatter(8036):#1 MethodChannel.invokeMethod(包:flatter/src/services/platform_channel.dart:321:33)
E/颤振(8036):
E/flatter(8036):#2 Admin.enable(包:Admin/Admin.dart:10:21)
E/flatter(8036):#3_MyHomePageState.initState(包:自动呼叫记录器/main.dart:55:11)

非常感谢您的帮助!!

因此,我得到了解决方案:

实际上,我试着在我的旧包中添加代码,在旧包中我有平台特定的代码,其中我删除了这一行

GeneratedPluginRegistrant.registerWith(flutterEngine);
正是因为这个原因才发生了错误。
因此,我再次添加了该行,现在它工作正常。

因此,我得到了解决方案:

实际上,我试着在我的旧包中添加代码,在旧包中我有平台特定的代码,其中我删除了这一行

GeneratedPluginRegistrant.registerWith(flutterEngine);
正是因为这个原因才发生了错误。
因此,我再次添加了该行,它现在运行良好。

此软件包仍处于开发状态,可能他还没有准备好使用。请与软件包的创建者联系。@Milvintiss感谢您的回复。我尝试运行该示例,但它运行良好。顺便说一句,得到了解决方案。此软件包仍处于开发状态,可能他还没有准备好使用。请与创建者联系r的程序包。@Milvintiss谢谢你的回复。我试着运行这个示例,但它运行得很好。顺便说一句,得到了解决方案。好的,那么你到底在哪里删除了这一行,然后重新添加了这一行,请注意?:)更新:没关系,我实际上是按照程序包
firebase\u消息:^7.0.3
的说明添加了这一行,但是现在,我已升级到
firebase\u消息:^8.0.0-dev.14
。所以我只是解开了所有这些旧指令,删除了
Application.java
文件,并撤销了对
androidmanifest.xml
的所有更改。。。现在,我的项目也运行良好!:)所以我想这里的结论是:要么添加要么删除该行!;)@卡罗里纳赫德:很抱歉,回复晚了。如果您正在使用Java,那么在android/app/src/main/Java/{package_name}/MainActivity.Java中,或者在Kotlin中,在android/app/src/main/Java/{package_name}/MainActivity.ktOk中,那么您到底在哪里删除并重新添加了这一行,plz?:)更新:没关系,我实际上是按照包
firebase\u消息:^7.0.3
的说明添加了这一行,但现在,我已升级到
firebase\u消息:^8.0.0-dev.14
。所以我只是解开了所有这些旧指令,删除了
Application.java
文件,并撤销了对
androidmanifest.xml
的所有更改。。。现在,我的项目也运行良好!:)所以我想这里的结论是:要么添加要么删除该行!;)@卡罗里纳赫德:很抱歉,回复晚了。如果您正在使用Java,那么在android/app/src/main/Java/{package_name}/MainActivity.Java中,或者在Kotlin中,使用android/app/src/main/Java/{package_name}/MainActivity.kt