void initState() { super.initState(); _razorpay = Razorpay(); _razorpay.on(Razorpay.EVENT_PAYMENT_SUCCESS, handlePaymentSucces); _razorpay.on(Razorpay.EVENT_PAYMENT_ERROR, handlePaymentError); _razorpay.on(Razorpay.EVENT_EXTERNAL_WALLET, handleExternalWallet); coursePrice = widget.courseModel.ogprice + '00'; coursename = widget.courseModel.coursename; username = userModel!.name; docidcourse = widget.courseModel.docid; flickManager = FlickManager( videoPlayerController: VideoPlayerController.networkUrl(Uri.parse("${widget.courseModel.demovideolink.toString()}")), autoPlay: false, // Start playing as soon as the video loads ); } @override void dispose() { // Ensure proper disposal of resources flickManager.dispose(); _razorpay.clear(); // flickManager.flickVideoManager?.videoPlayerController?.dispose(); super.dispose(); }