Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我的应用程序正在通过iOS中的URL方案打开,如何获取完整的URL?_Ios_Angular_Ionic4_Deeplink - Fatal编程技术网

我的应用程序正在通过iOS中的URL方案打开,如何获取完整的URL?

我的应用程序正在通过iOS中的URL方案打开,如何获取完整的URL?,ios,angular,ionic4,deeplink,Ios,Angular,Ionic4,Deeplink,在我的iOS应用程序中,我正在用另一个应用程序打开一个iApp浏览器并问一个问题。然后,第二个应用程序使用我配置的方案再次调用我的应用程序(如myapp://),完整的url如下myapp://something/:answer. 我设法在InApp浏览器中打开了应用程序,然后当它调用myapp:///时,我的应用程序重新打开,但我需要完整的url,这样我才能得到答案 到目前为止,我用一些例子尝试了我发现的一切,比如和,但没有运气 使用deeplinks,我尝试跟踪文档,但从未调用subscri

在我的iOS应用程序中,我正在用另一个应用程序打开一个iApp浏览器并问一个问题。然后,第二个应用程序使用我配置的方案再次调用我的应用程序(如myapp://),完整的url如下myapp://something/:answer. 我设法在InApp浏览器中打开了应用程序,然后当它调用myapp:///时,我的应用程序重新打开,但我需要完整的url,这样我才能得到答案

到目前为止,我用一些例子尝试了我发现的一切,比如和,但没有运气

使用deeplinks,我尝试跟踪文档,但从未调用subscribe,也看不到控制台日志

openSecondApp() {
  this.platform.ready().then( () => {
    if (this.platform.is('ios')) {
      const url = 'secondapp://link/question';

      const options: InAppBrowserOptions = {
        location : 'no',
        hidden : 'no',
        clearcache : 'yes',
        clearsessioncache : 'yes',
        closebuttoncaption : 'Close',
        disallowoverscroll : 'no',
        presentationstyle : 'pagesheet',
      };

      const browser = this.inAppBrowser.create(url, '_system');

      this.deeplinks.route({
        '/': 'ThisPage'
      }).subscribe(match => {
        console.log(match);
      }, nomatch => {
        console.log(nomatch);
      });
    }
  });
}
对于自定义url方案,我不知道将handleOpenURL函数放在哪里。我试图将它放在index.html中的
标记的末尾:

function handleOpenURL(url) {
  console.log("url: " + url);
}
但它从未被呼叫过

(我使用的是iOS,我使用的是带电容器的Ionic4。)


有人可以分享一个如何做到这一点的例子吗?

你必须使用电容器API

import { Plugins } from '@capacitor/core';

const { App } = Plugins;

App.addListener('appUrlOpen', (data: any) => {
  // data.url contains the url that is opening your app
});