Flutter Unhandled Exception: Null check operator used on a null value

Viewed 1437

I am getting the following error Unhandled Exception: Null check operator and I am not sure if it is something wrong in my code or the library I am using. I am trying to test the livequery of the parse_server_sdk used by back4app because I require sending and receiving images in Realtime. Here is the relevant code:

 import 'dart:io';
import 'package:filepicker_windows/filepicker_windows.dart';
import 'package:flutter/material.dart';
import 'package:parse_server_sdk_flutter/parse_server_sdk.dart';

    void main() async {
      final keyApplicationId = 'EPARW6nRAAyp5uehoDE7rBEby4wtehcZf9EayykS';
      final keyClientKey = 'fDaL2DjyC9YdwCwZ4RB5c5vhACROaMOO1EjjL4Zn';
      final keyParseServerUrl = 'https://parseapi.back4app.com';
      final LIVE_QUERY_URL = 'wss://samuraichat.b4a.io';
    
      await Parse().initialize(keyApplicationId, keyParseServerUrl,
          clientKey: keyClientKey,
          autoSendSessionId: true,
          liveQueryUrl: LIVE_QUERY_URL,
          coreStore: CoreStoreMemoryImp());
    
      final LiveQuery liveQuery = LiveQuery();
    
      QueryBuilder<ParseObject> query =
          QueryBuilder<ParseObject>(ParseObject('FirstClass'))
            ..whereEqualTo('chatId', 1);
    
      Subscription subscription = await liveQuery.client.subscribe(query);
    
      subscription.on(LiveQueryEvent.create, (value) {
        print('*** CREATE ***: ${DateTime.now().toString()}\n $value ');
        print((value as ParseObject).objectId);
        print((value as ParseObject).get('message'));
      });
    
      runApp(MyApp());
    }

Here is the error stack:

[ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: Null check operator used on a null value
#0      MethodChannel.binaryMessenger (package:flutter/src/services/platform_channel.dart:142:86)
#1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:148:36)
#2      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:331:12)
#3      MethodChannelConnectivity.checkConnectivity (package:connectivity_platform_interface/src/method_channel_connectivity.dart:41:29)
#4      Connectivity.checkConnectivity (package:connectivity/connectivity.dart:46:22)
#5      Parse.checkConnectivity (package:parse_server_sdk_flutter/parse_server_sdk.dart:106:34)
#6      new LiveQueryReconnectingController (package:parse_server_sdk/src/network/parse_live_query.dart:45:28)
#7      new LiveQueryClient._internal (package:parse_server_sdk/src/network/parse_live_query.dart:146:30)
#8      LiveQueryClient._getInstance (package:parse_server_sdk/src/network/parse_live_query.dart:153:35)
#9      new LiveQuery (package:parse_server_sdk/src/network/parse_live_query.dart:416:30)
#10     main (package:chat_app/main.dart:18:37)
<asynchronous suspension>

Thanks.

2 Answers

Try to clean your app cache:

flutter clean

This bug should be fixed with this PR.

You use the current nullsafety branch by overriding the dependency in your pubspec.yaml:

dependency_overrides:
  parse_server_sdk_flutter:
    git:
      url: https://github.com/parse-community/Parse-SDK-Flutter.git
      ref: nullsafety
      path: packages/flutter
  parse_server_sdk:
    git:
      url: https://github.com/parse-community/Parse-SDK-Flutter.git
      ref: nullsafety
      path: packages/dart
Related