1

我在 Apple App Store 上发布了 2 个 iOS 应用程序,一个是 iPhone 应用程序,另一个是 iPad 应用程序,我需要在我的网站上使用 iOS 智能应用程序横幅,所以我为这两个应用程序添加了 2 个元标记。

<meta name="apple-itunes-app" content="app-id=iPhoneAppID" />
<meta name="apple-itunes-app" content="app-id=iPadAppID" />

我期望浏览器应该知道在用户访问我的网站时向用户显示的正确应用程序,但事实并非如此。

因此,如果用户从 iPhone 浏览器访问,我需要一种在 iOS 智能应用程序横幅中显示 iPhone 应用程序的方法,如果他从 iPad 浏览器访问,则显示 iPad 应用程序。

4

1 回答 1

2

好的,我想我找到了解决方案,但它不是来自 Apple,而是一个 jQuery 插件: http ://www.dunnsolutions.com/content/application-development-blog/-/blogs/smart-app-banners-for -ios 和安卓

“如果您在 App Store 中有两个版本的应用程序(例如,一个适用于 iPad,另一个适用于 iPhone/iPod),您可以使用 JavaScript 检查浏览器的用户代理并确定要插入您的网页头部的适当元标记页。”

if ( /(iPad).*AppleWebKit.*Mobile.*Safari/.test(navigator.userAgent) ) {
  var headNode = document.getElementsByTagName("head")[0];
  var sbNode = document.createElement('meta');
  sbNode.name = 'apple-itunes-app';
  sbNode.content = 'app-id=your-iPadAppId';
  headNode.appendChild(sbNode);
} else if ( /(iPhone|iPod).*AppleWebKit.*Mobile.*Safari/.test(navigator.userAgent) ) {
  var headNode = document.getElementsByTagName("head")[0];
  var sbNode = document.createElement('meta');                    
  sbNode.name = 'apple-itunes-app';                
  sbNode.content = 'app-id=your-iPhoneAppId';
  headNode.appendChild(sbNode);
}
于 2014-05-29T09:53:06.020 回答