interface<T extends SignResult> method
Future<T?>
interface<T extends SignResult>(
- BuildContext context,
- SignRequest<
T> signRequest, { - CryptSignatureTheme? theme,
Открыть экран выбора сертификата и подписать В случает подписи PKCS7 на Android возвращает PKCS7SignResult Возвращает SignResult для всеъ остальных
Implementation
Future<T?> interface<T extends SignResult>(BuildContext context, SignRequest<T> signRequest, {CryptSignatureTheme? theme}) async {
NavigatorState navigator = Navigator.of(context);
Directory directory = await getApplicationDocumentsDirectory();
await Directory('${directory.path}/certificates').create();
T? result = await navigator.push(
FadePageRoute(
builder: (context) => MultiProvider(
providers: [
Provider<CryptSignatureProvider>(create: (context) => CryptSignatureProvider(context, theme ?? CryptSignatureTheme(), signRequest)),
Provider<CertificateRepository>(create: (context) => certificateRepository),
ChangeNotifierProvider<LockService>(create: (context) => LockService()),
ChangeNotifierProvider<LicenseService>(create: (context) => LicenseService(context.read<LockService>())),
],
builder: (context, child) => const HomeWidget(),
),
),
);
return result;
}