Как скрыть URL-адрес местоположения в браузере приложений

#angular #ionic-framework #inappbrowser

#angular #ionic-framework #inappbrowser

Вопрос:

Всем доброго времени суток, пожалуйста, я пытаюсь интегрировать платежный шлюз в мое приложение ionic, код работает хорошо, но единственная проблема, с которой я сталкиваюсь, — это как скрыть URL-адрес местоположения в браузере приложений

Вот как это открывается

Вот как это открывается

Я хочу, чтобы он открывался вот так, без строки URL
Я хочу, чтобы он открывался вот так, без строки URL

Вот приведенный ниже код. Спасибо

 constructor(
  private rave: Rave, 
  private ravePayment: RavePayment, 
  private misc: Misc,
  private iab: InAppBrowser,
  ) { }

...


this.rave.init(PRODUCTION_FLAG, "YOUR_PUBLIC_KEY")
      .then(_ => {
        var paymentObject = this.ravePayment.create({
          customer_email: "nuser@example.com",
          amount: 2000,
          customer_phone: "23412345667",
          currency: "NGN",
          txref: "rave-1234567",
          meta: [{
              metaname: "flightID",
              metavalue: "AP1234"
          }]
      })
        this.rave.preRender(paymentObject)
          .then(secure_link => {
            secure_link = secure_link  " ";
            const browser: InAppBrowserObject = this.rave.render(secure_link, this.iab);
            browser.on("loadstop")
                .subscribe((event: InAppBrowserEvent) => {
                  if(event.url.indexOf('https://your-redirect-url') != -1) {
                    if(this.rave.paymentStatus(url) == 'failed') {
                      this.alertCtrl.create({
                        title: "Message",
                        message: "Oops! Transaction failed"
                      }).present();
                    }else {
                      this.alertCtrl.create({
                        title: "Message",
                        message: "Transaction successful"
                      }).present();
                    }
                    browser.close()
                  }
                })
          }).catch(error => {
            // Error or invalid paymentObject passed in
          })
      })
  

Ответ №1:

Для Cordova в браузере приложений вы можете передать объект options с помощью location как no

 var ref = cordova.InAppBrowser.open(url, target, options);
  

Ваш код станет

 this.rave.render(secure_link, this.iab,{location: 'no'})
  

Ссылка

Редактировать —

Попробуйте создать объект iab, а затем передать его this.rave.render

 let browser = this.theInAppBrowser.create(secure_link, _blank,{location: 'no'});
  

А затем передать его следующим образом

 this.rave.render(secure_link, browser)
  

Комментарии:

1. Спасибо за ваш быстрый ответ, но я получил это сообщение об ошибке «Ожидалось 2 аргумента, но получено 3», когда я включил 3-й аргумент.