Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.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
如何在邮件中使用公共链接启动iphone和android应用程序_Android_Ios - Fatal编程技术网

如何在邮件中使用公共链接启动iphone和android应用程序

如何在邮件中使用公共链接启动iphone和android应用程序,android,ios,Android,Ios,我有一个要求,比如,我需要从邮件中的链接启动一个应用程序,该应用程序将适用于android和iphone 我试着从邮件中的链接重定向到网页,然后从那里我会打开基于操作系统的应用程序,但这在ios中运行良好,而不是在android中。我有附加代码 $(document).ready(function() { if (navigator.userAgent.indexOf('iP') != -1) { setTimeout(function() { documen

我有一个要求,比如,我需要从邮件中的链接启动一个应用程序,该应用程序将适用于android和iphone

我试着从邮件中的链接重定向到网页,然后从那里我会打开基于操作系统的应用程序,但这在ios中运行良好,而不是在android中。我有附加代码

$(document).ready(function() {

    if (navigator.userAgent.indexOf('iP') != -1) {

    setTimeout(function() {
        document.location = 'http://www.test.com';
    }, 300);

    self.location = "testapp://";
    } else if (navigator.userAgent.indexOf('Android') != -1) {

        document.location = 'http://www.test.com';     
    } else {
        alert('windows');
    }
});

有什么想法吗?我在这个问题上绞尽脑汁已经一个星期了。…

在android上,至少你可以让你的应用程序监听,并提供对特定URL的响应

因此,您可以设置一个IntentFilter来侦听
http://yoururl.com/somestuff
每当单击该url时,用户都会看到一个能够处理该url的应用程序列表,其中包括您的应用程序,最有可能的是devce上加载的任何浏览器。不过,我对iOS没有任何指导,也不确定是否可以做到同样的事情。

Android解决方案:(堆栈溢出)

iOS解决方案:(堆栈溢出)

具有相同链接的解决方案?
您可以尝试提供相同的url方案(前缀)-以前从未尝试过。否则,您需要链接到服务器并执行重定向。但这是一个不好的行为,因为这会先打开浏览器,然后打开你的应用。

谢谢你的回复。我已经尝试过了,但当你从应用中出来时,它会导航到邮件,而不是手机的主网格。有什么想法吗?它应该导航到邮件,这将是活动堆栈中的前一件事。这是操作系统的默认行为,这将是用户所期望的,因为设备上的所有其他功能都是这样工作的。但是,如果你死心塌地地想要破坏活动堆栈流,你可以手动启动活动的onStop()内部的启动器来处理链接。是的,我同意你的答案。但问题是假设我从邮件中的链接启动了应用程序,在这两者之间,如果我按手机上的home按钮,再按gmail,它显示的是应用程序(当我按下home键时进入后台状态的特定屏幕),而不是gmail。这就是我问这个问题的原因。你应该在问题本身中包含这一点,那时我们无法知道=)。一个潜在的解决方案是让你的活动在清单中包含android:noHistory=“true”。感谢你的回复,我尝试了两种方法,因为你对同一链接提出了建议,第一种方法的问题是我无法给出ios的通用方案,比如,bcoz在iphone中,我们可以提供如下定制方案myapp://test.com...any 想法?我尝试了第二种方法,比如重定向到网页。它在iphone中运行良好,但正如你所说,它先打开网页,然后再打开应用程序。但它在android中根本不起作用。我还附上了我的代码……请尽可能地浏览一下……给我一些想法。。。。