Hey Guys,
I'd like to say I'm pretty experienced in FF & Custom code by now, however this error has me at a loss. Whenever I build the custom widget as posted below, I get this error in the FF web editor:
"Unknown error compiling custom code. A common cause is a custom widget or action whose name in the code does not match the name provided in the editor."
Whenever I build the project in the Windows Desktop editor, directly to my attached phone, it will compile and run fine. However, I do see a more detailed error in the logs;
(This error is gone whenever I delete the relevant custom widget)
โโโก EXCEPTION CAUGHT BY WIDGETS LIBRARY โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
The following _TypeError was thrown building StreamBuilder<UsersRecord?>(dirty, state:
_StreamBuilderBaseState<UsersRecord?, AsyncSnapshot<UsersRecord?>>#b57c6):
Null check operator used on a null value
The relevant error-causing widget was:
StreamBuilder<UsersRecord?>
StreamBuilder:file:///C:/Users/yorid/AppData/Roaming/FlutterFlow/flutterflow/label_guard_mobile/lib/auth/firebase_auth/auth_util.dart:69:41
When the exception was thrown, this was the stack:
#0 _HomePageWidgetState.build.<anonymous closure> (package:label_guard_mobile/pages/home_page/home_page_widget.dart:62:63)
#1 AuthUserStreamWidget.build.<anonymous closure> (package:label_guard_mobile/auth/firebase_auth/auth_util.dart:71:41)
#2 StreamBuilder.build (package:flutter/src/widgets/async.dart:437:81)
#3 _StreamBuilderBaseState.build (package:flutter/src/widgets/async.dart:120:48)
#4 StatefulElement.build (package:flutter/src/widgets/framework.dart:5592:27)
#5 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5480:15)
#6 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#7 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#8 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5462:5)
#9 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5634:11)
#10 ComponentElement.mount (package:flutter/src/widgets/framework.dart:5456:5)
... Normal element mounting (15 frames)
#25 Element.inflateWidget (package:flutter/src/widgets/framework.dart:4335:16)
#26 Element.updateChild (package:flutter/src/widgets/framework.dart:3840:20)
#27 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6765:14)
#28 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#29 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#30 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#31 StatelessElement.update (package:flutter/src/widgets/framework.dart:5556:5)
#32 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#33 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6765:14)
#34 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#35 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6765:14)
#36 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#37 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#38 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#39 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#40 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#41 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#42 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6765:14)
#43 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#44 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#45 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#46 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#47 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#48 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#49 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6765:14)
#50 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#51 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#52 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#53 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#54 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#55 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#56 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#57 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#58 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#59 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#60 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#61 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6765:14)
#62 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#63 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#64 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#65 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#66 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#67 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#68 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6765:14)
#69 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#70 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#71 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#72 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#73 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#74 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#75 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#76 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#77 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#78 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#79 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#80 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#81 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#82 StatelessElement.update (package:flutter/src/widgets/framework.dart:5556:5)
#83 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#84 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#85 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#86 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#87 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#88 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#89 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6765:14)
#90 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#91 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#92 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#93 ProxyElement.update (package:flutter/src/widgets/framework.dart:5809:5)
#94 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:105:11)
#95 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#96 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6765:14)
#97 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#98 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#99 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#100 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#101 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#102 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#103 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#104 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#105 ProxyElement.update (package:flutter/src/widgets/framework.dart:5809:5)
#106 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#107 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#108 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#109 ProxyElement.update (package:flutter/src/widgets/framework.dart:5809:5)
#110 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#111 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#112 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#113 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#114 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#115 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#116 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#117 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#118 StatelessElement.update (package:flutter/src/widgets/framework.dart:5556:5)
#119 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#120 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#121 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#122 StatelessElement.update (package:flutter/src/widgets/framework.dart:5556:5)
#123 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#124 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6765:14)
#125 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#126 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#127 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#128 ProxyElement.update (package:flutter/src/widgets/framework.dart:5809:5)
#129 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#130 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#131 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#132 ProxyElement.update (package:flutter/src/widgets/framework.dart:5809:5)
#133 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#134 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#135 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#136 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#137 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#138 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#139 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#140 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#141 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#142 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5)
#143 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15)
#144 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16)
#145 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11)
#146 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7)
#147 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2904:19)
#148 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:989:21)
#149 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:448:5)
#150 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1386:15)
#151 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1311:9)
#152 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:1169:5)
#153 _invoke (dart:ui/hooks.dart:312:13)
#154 PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:399:5)
#155 _drawFrame (dart:ui/hooks.dart:283:31)
My Custom Widget:
// Automatic FlutterFlow imports
import '/backend/backend.dart';
import '/backend/schema/structs/index.dart';
import '/flutter_flow/flutter_flow_theme.dart';
import '/flutter_flow/flutter_flow_util.dart';
import '/custom_code/widgets/index.dart'; // Imports other custom widgets
import '/custom_code/actions/index.dart'; // Imports custom actions
import '/flutter_flow/custom_functions.dart'; // Imports custom functions
import 'package:flutter/material.dart';
// Begin custom widget code
// DO NOT REMOVE OR MODIFY THE CODE ABOVE!
import 'dart:convert';
import 'dart:async';
import 'package:zebra_datawedge/zebra_datawedge.dart';
class NewCustomWidget2 extends StatefulWidget {
const NewCustomWidget2({
super.key,
this.width,
this.height,
});
final double? width;
final double? height;
@override
State<NewCustomWidget2> createState() => _NewCustomWidget2State();
}
class _NewCustomWidget2State extends State<NewCustomWidget2> {
String _data = "waiting...";
String _labelType = "waiting...";
String _source = "waiting...";
@override
void initState() {
super.initState();
initDataWedgeListener();
}
// create a listener for data wedge package
Future<void> initDataWedgeListener() async {
ZebraDataWedge.listenForDataWedgeEvent((response) {
if (response != null && response is String) {
setState(() {
Map<String, dynamic>? jsonResponse;
try {
jsonResponse = json.decode(response);
} catch (e) {
//TODO handling
}
if (jsonResponse != null) {
_data = jsonResponse["decodedData"];
_labelType = jsonResponse["decodedLabelType"];
_source = jsonResponse["decodedSource"];
print(_data);
print(_labelType);
print(_source);
} else {
_source = "An error occured";
print('Error scanning');
}
});
}
});
}
@override
Widget build(BuildContext context) {
return Container();
}
}