pull/41/head
Sultan khan 1 month ago
parent b78c78ed8b
commit fe36c2a1c1

@ -1,5 +1,6 @@
import 'dart:convert';
import 'dart:developer';
import 'dart:io';
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/services.dart' show rootBundle;
import 'package:flutter/material.dart';
@ -36,6 +37,7 @@ import 'package:hmg_patient_app_new/services/localauth_service.dart';
import 'package:hmg_patient_app_new/services/navigation_service.dart';
import 'package:hmg_patient_app_new/widgets/loader/bottomsheet_loader.dart';
import 'package:hmg_patient_app_new/widgets/bottomsheet/exception_bottom_sheet.dart';
import 'package:sms_otp_auto_verify/sms_otp_auto_verify.dart';
import 'models/request_models/get_user_mobile_device_data.dart';
import 'models/request_models/insert_patient_mobile_deviceinfo.dart';
@ -355,7 +357,7 @@ class AuthenticationViewModel extends ChangeNotifier {
);
// TODO: GET APP SMS SIGNATURE HERE
request.sMSSignature = "enKTDcqbOVd";
request.sMSSignature =await getSignature();
if (checkIsUserComingForRegister(request: payload)) {
_appState.setUserRegistrationPayload = RegistrationDataModelPayload.fromJson(payload);
@ -921,4 +923,12 @@ class AuthenticationViewModel extends ChangeNotifier {
},
);
}
Future<String?> getSignature() async {
if (Platform.isAndroid) {
return await SmsVerification.getAppSignature();
} else {
return null;
}
}
}

@ -9,6 +9,7 @@ import 'package:hmg_patient_app_new/core/utils/size_utils.dart';
import 'package:hmg_patient_app_new/extensions/widget_extensions.dart';
import 'package:hmg_patient_app_new/theme/colors.dart';
import 'package:hmg_patient_app_new/widgets/appbar/app_bar_widget.dart';
import 'package:sms_otp_auto_verify/sms_otp_auto_verify.dart';
typedef OnDone = void Function(String text);
@ -132,6 +133,7 @@ class OTPWidgetState extends State<OTPWidget> with SingleTickerProviderStateMixi
widget.controller!.addListener(_controllerListener);
}
focusNode.addListener(_focusListener);
checkSignature();
}
void _controllerListener() {
@ -209,7 +211,15 @@ class OTPWidgetState extends State<OTPWidget> with SingleTickerProviderStateMixi
],
);
}
void checkSignature() async {
SmsVerification.startListeningSms().then((message) {
final intRegex = RegExp(r'\d+', multiLine: true);
var otp = SmsVerification.getCode(message, intRegex);
widget.controller!.text = otp;
_onTextChanged(text);
SmsVerification.stopListening();
});
}
Widget _touchPinBoxRow() {
return widget.hideDefaultKeyboard
? _pinBoxRow(context)
@ -462,6 +472,7 @@ class _OTPVerificationScreenState extends State<OTPVerificationScreen> {
super.initState();
_otpController = TextEditingController();
_startResendTimer();
}
@override
@ -506,6 +517,7 @@ class _OTPVerificationScreenState extends State<OTPVerificationScreen> {
_startResendTimer();
// autoFillOtp("1234");
widget.onResendOTPPressed(widget.phoneNumber);
}
}
@ -618,5 +630,11 @@ class _OTPVerificationScreenState extends State<OTPVerificationScreen> {
if (otp.length != _otpLength) return;
_isVerifying = false;
_otpController.text = otp;
setState(() {
});
}
}

@ -66,6 +66,7 @@ dependencies:
firebase_analytics: ^11.5.1
jiffy: ^6.4.3
hijri_gregorian_calendar: ^0.1.1
sms_otp_auto_verify: ^2.2.0
web: any
flutter_staggered_animations: ^1.1.1

Loading…
Cancel
Save