handleWepinLink method
void
handleWepinLink(
- Uri linkUrl
)
Implementation
void handleWepinLink(Uri linkUrl) {
String? idToken;
if (kDebugMode) {
print('handleWepinLink : $linkUrl');
}
String deepLinkScheme = 'wepin.${_wepinOptions.appId}://';
if (!linkUrl.toString().startsWith(deepLinkScheme)) {
if (kDebugMode) {
print('Invalid DeepLink Scheme');
}
return;
}
if (Platform.isIOS) {
// if (await supportsCloseForLaunchMode(LaunchMode.inAppBrowserView)) {
// closeInAppWebView();
// }
closeInAppWebView();
}
Map<String, String> param = linkUrl.queryParameters;
idToken = param['token'];
if (idToken == null || idToken.isEmpty) {
// wepinWallet에서 widget으로 돌아오는 경우
if (kDebugMode) {
//print('token_is_null or empty');
}
return;
}
if (kDebugMode) {
//print('received_token : $idToken');
}
// showDialog(
// context: _appContext,
// builder: (context) {
// _wepinFlutter = WepinFlutter(_wepinOptions,
// Uri.parse('?token=${idToken}'), _appContext.widget);
// return _wepinFlutter!;
// });
NERequestHeader neRequestHeader = NERequestHeader();
NERequestBody neRequestBody = NERequestBody(
command: 'set_token', parameter: SetTokenParameter(idToken));
_wepinFlutter!.sendNativeEvent(
NERequest(header: neRequestHeader, body: neRequestBody));
}