如何成功关闭React / React Native应用程序中的Inappbrowser

时间:2019-08-23 09:01:12

标签: javascript reactjs react-native browser

我很难在我的本机应用程序中使用inappbrowser

我必须从本机应用程序登录到Web上的特定URL,所以我决定使用inappbrowser将浏览器嵌入到应用程序中,然后打开作为React应用程序的登录Web URL。为此,请执行以下操作:

 try {
  await InAppBrowser.isAvailable();
  InAppBrowser.open(
    'http://loginUrl/login',
    {
      // iOS Properties
      dismissButtonStyle: 'cancel',
      readerMode: false,
      modalPresentationStyle: 'overFullScreen',
      modalTransitionStyle: 'partialCurl',
      modalEnabled: true,
      animated: false,
    },
  ).then(result => {
    alert(JSON.stringify(result));
  });
} catch (error) {
  alert(error.message);
}

内置浏览器成功打开,我可以从那里登录。

这是我的问题:如何在登录成功后关闭此浏览器以返回?

我尝试使用Deeplink在Web或应用程序上进行重定向,具体取决于我来自以下平台的平台:

if (origin === 'web') { 
   // web redirect
   window.location = 'http://ip/loginSucess';
} else {
   // mobile deeplink redirect
   window.location = 'mobApp://app/routing?screen=app/loginSucess';
}

问题是,当我使用登录表单时,我已经在应用程序上了,因此它什么也不做,不会关闭浏览器。当我使用野生动物园登录手机时,它实际上可以正常工作,然后使用Deeplink将我正确重定向到该应用程序。

当我在浏览器中按“取消”时,我只会收到然后结果警报,但是我不知道如何触发成功。.

以前有人遇到过这个问题吗?如果没有url控制或成功回调,似乎无法使用此程序包。

0 个答案:

没有答案