我发现了一个相关的问题:无法让新的 AppLinks 在 iOS 或 Android 上运行但我不确定它是否与我面临的问题完全相似。因此,我提出了这个问题。
如果我理解正确:https ://developers.facebook.com/docs/applinks/ios
当我单击具有正确元数据的正确应用链接时:-
案例1:我安装了应用程序:
预期操作 1:它将导航到应用程序内的特定页面。
案例 2:我没有安装应用程序:
预期操作 2:它将引导我到应用程序的应用商店页面下载。
以下是我到目前为止所做的配置:-
应用链接网址: http ://watchoverme.parseapp.com/
应用链接元数据:
<html>
<head>
<title>Watch Over Me</title>
<meta property="al:ios:app_store_id" content="431208868"/>
<meta property="al:ios:app_name" content="Watch Over Me" />
<meta property="al:ios:url" content="watchoverme://promotion" />
<meta property="al:web:url"
content="https://itunes.apple.com/app/id431208868?mt=8" />
</head>
<body>
Yo!
</body>
</html>
在应用程序方面,我添加了自定义 url 方案,如下面的屏幕截图:-
到目前为止,我已经测试了以下几个场景:-
场景 1:我创建了另一个简单的应用程序,使用一个按钮来打开应用程序链接。
按钮的代码:-
- (IBAction)appLinkTapped:(UIButton *)sender {
NSLog(@"appLinkTapped");
UIApplication *app = [UIApplication sharedApplication];
NSString *path = @"watchoverme://promotion";
NSURL *ourURL = [NSURL URLWithString:path];
/*
if(![app
canOpenURL:ourURL]){
path = @"http://watchoverme.parseapp.com/";
ourURL = [NSURL URLWithString:path];
}*/
[app openURL:ourURL];
}
结果 1:如果我安装了 WatchOverMe 应用程序并点击按钮,我可以打开 WatchOverMe 应用程序。伟大的!。但是,如果未安装 WatchOverMe 应用程序并且我点击按钮,则不会发生任何事情。我应该被引导到 iTunes App Store 下载该应用程序吗?还是我做错了什么?
场景 2:我在 Facebook 上发布了链接 ( http://watchoverme.parseapp.com/ ) 并尝试在我的手机上点击该链接。
结果 2:无论我是否安装了该应用程序,它都只显示空白网站。
问题:我是否在配置上遗漏了一些东西,直到它无法触发上述预期的 applink 行为?
谢谢
更新#1
感谢李明为我指明了正确的方向。我想更好地了解应用链接的工作原理。所以,我做了更多的测试,这就是我发现的: -
从上面的屏幕截图:
案例 A:我使用 Watch Over Me 应用程序共享应用程序链接(您将看到“通过 Watch Over Me”)
结果 A:当我点击 Facebook 应用程序上的链接时。如果我安装了 Watch Over Me 应用程序,它会将我重定向到该应用程序。如果我没有安装该应用程序,它会将我重定向到 iTunes 应用程序商店进行下载。它工作得很好!
案例 B:我只使用状态更新分享应用链接。(没有通过Watch Over Me)
结果B:它只会打开空白网页。
那么,只有当我们通过 Facebook 发布应用链接时,应用链接才有效?并且不通过我们的状态更新发布 Applink?
更新#2
我在 2014 年 9 月 1 日再次测试。以上两种情况都运行良好!非常感谢李明。