智能应用横幅在iPad上关闭后不再出现,使用的是IOS7系统。

28

简而言之,我的团队有一个移动网站和在 appstore 上的应用程序。我们已经添加了元标签来显示智能应用程序横幅。我看到了它,一切都按预期工作。问题是,我只是关闭了横幅,现在它不再出现。我用同样的结果关闭了 Ted.com 的智能应用程序横幅。

目前,我们正在使用 IOS7 的 iPad,并且我已经阅读过所有关于它是 cookie 导致横幅不再出现的内容。我已经多次清除了 Safari 的缓存和 cookie,确保从内存中关闭了 Safari,以私人模式运行 Safari,甚至重新启动了 iPad,但这些已被解除的智能横幅仍然不会重新出现。我错过了什么吗?我所读到的关于 cookie 的大部分内容似乎都是特定于 IOS6 的,这里 IOS7 是否有所不同?有没有人知道如何使这些被关闭的智能应用程序横幅重新出现的想法?


1
只是要注意,我恢复了iPad出厂设置,智能横幅又回来了...那不可能是解决方案!一定还有另外一种简单的方法。 - Gobo
7个回答

14

这个问题只出现在iOS 7上。在iOS 6中,您只需要清除Safari的cookies和历史记录即可。苹果一定改变了存储方式,以区别于在iOS 6与iOS 7中关闭应用程序横幅的方法。惊喜吧!

以下步骤是我确定可以再次出现智能应用程序横幅的步骤,已在运行iOS 7.0.4的设备上进行确认:

  1. 设置 -> Safari -> 清除历史记录
  2. 设置 -> Safari -> 清除cookie和数据
  3. 设置 -> 通用 -> 重置 -> 重置位置与隐私
  4. 设置 -> 通用 -> 重置 -> 重置所有设置

不是最简洁的方法,但可以完成工作。


同样适用于iOS 7.0 - 不幸的是,“重置所有设置”似乎是不可避免的。 - Bill Keller
重置所有设置是我在写问题时使用的解决方案,不幸的是,苹果肯定会修复这个问题。 - Gobo
2
重置所有设置是解决这个问题的答案,直到(如果)苹果修复此问题。 - Gobo
2
很不幸,在iOS 9上,您必须“重置所有内容和设置”...我想知道他们在iOS 10上会如何让它变得更加痛苦... - Tamás Zahola

7

1.从设备中删除应用程序

2.设置 -> Safari -> 清除历史记录和网站数据

3.打开Safari并打开您的网站

4.从商店安装应用程序

5.重新加载网站

6.祝你好运


3
在iOS 14.8上,清除历史记录和网站数据的步骤足以使横幅出现。但它让我面临一个新问题:横幅提供了在应用商店中查看应用的选项,而不是打开我已经用XCode安装的开发者版本。我想要打开那个版本,因为我想测试是否正确实现了application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any)函数。 - Cowirrie

4
我也在iOS8和iOS9上遇到了这个问题。通过这个页面上的信息(感谢!),我找到了以下解决方案:
请自行承担风险!
在OSX 10.9.5上,使用iTunes 12.3.1.23测试,iPhone 5S运行iOS 8.4.1。
1.通过搜索网站源代码中的“app-id”来查找应用程序ID。 例如,对于www.marktplaats.nl:<meta name="apple-itunes-app" content="app-id=373963365, app-argument=marktplaats://homepage">
2. 使用iTunes进行“本地计算机备份”。
3. 找到您的备份(可能在:〜/ Library / Application Support / MobileSync /)。
4. 为以防万一制作备份副本(是的:备份的备份:-)。
5. 在备份中搜索“app-id”。 我在Backup文件夹中使用了grep "373963365" -r *。
6. 对于我的例子,grep找到一个以03f01e41fc5d开头的“隐藏横幅文件”,其中包含“app-id”:
bplist00—Y373963365
7. 将“app-id”数字更改为您永远不想看到智能应用程序横幅的“app-id”数字,或者只是将“app-id”增加1并保存文件。
8. 将更改后的备份还原到设备上。
注:
如果您像我一样有一个16GB的备份,请耐心等待制作,复制,搜索和还原备份需要一些时间。
您可能会在“隐藏横幅文件”中找到多个“app-id”。 我不知道为什么这个过程不能用于更改多个“app-id”。
不要删除“隐藏横幅文件”,因为这会破坏您的备份。
将“app-id”增加1或选择任何其他9位随机数字都将隐藏那个“随机”智能应用程序横幅!
我还在运行iOS 9.0.2的新iPad上成功完成了此操作。
对于那些想通过越狱的方式进行操作的人:我在越狱的iPad上找到了该文件: /var/mobile/Containers/Data/Application/{Safari App ID}/Library/Webkit/StoreBannerTracker.plist
@Apple:为什么我们不能使用“清除历史记录和网站数据”来删除它?

1

有一种方法可以重置智能横幅的行为,而不必重置所有偏好设置。需要越狱您的iDevice或使用iTunes备份编辑器,例如iExplorer。

越狱方法

  1. 导航到Safari应用程序目录(例如使用iFile):

/var/mobile/Applications/{Safari App ID}/Library/Webkit

(如果您使用iFile,则应用程序名称可以显示在应用程序ID文件夹名称旁边。启用首选项 -> 文件管理器 -> 应用程序名称

  1. 删除或重命名文件StoreBannerTracker.plist

备份编辑器方法

  1. 使用iTunes备份您的iDevice。(最好不要加密备份)
  2. 使用iTunes备份编辑器(如iExplorer)删除StoreBannerTracker.plist。在iExplorer中:
    • 浏览本地iTunes备份 -> {您的iDevice名称} -> 备份浏览器 -> AppDomain-com.apple.mobilesafari -> Library -> WebKit
    • 右键单击StoreBannerTracker.plist并单击删除
  3. 使用iTunes将备份恢复到您的iDevice上

(免责声明:我没有尝试过这种方法,因为我使用的是iExplorer的演示模式,不允许更改。)


0

对于任何使用iOS14+的人(因为我没有更旧的版本)。

智能应用程序横幅每次从Slack打开网页时都会刷新显示。


-1

点击 设置 > 通用 > 储存空间与 iCloud 用量 > 等待一段时间直到应用列表出现... > 显示所有应用 > Safari > 网站数据 > 删除所有网站数据

我已在 iPhone 5s 上的 iOS 7 上尝试过这个方法,它会重新显示智能横幅。

谢谢。


2
我刚在iOS 7.1的iPad上测试了一下,但没有成功。我会尝试用iPhone再次测试。 - Gobo
3
iOS 7.1版本的iPhone上无法显示智能应用横幅,即使执行“删除所有网站数据”操作也无效。 - gmcnaughton

-3
尝试清除Safari的Cookies和数据,然后它应该重新出现。

我之前提到过我已经尝试多次清除cookie和数据,但在IOS7上似乎没有用,我已经在不同的IOS7设备上尝试过了。 - Gobo
哦,那可能是个问题。我还没有在iOS 7设备上尝试过这个。 - Batman
我也尝试了这个,但是没有起作用。还试过关闭应用程序然后重新打开,甚至重启整个设备,都没有效果。我在苹果帮助页面上发送了反馈,关于智能应用横幅(https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/PromotingAppswithAppBanners/PromotingAppswithAppBanners.html),但是我不知道还能做什么。 - Jon z

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接