23
votes

In short, my team has a mobile site and an app in the appstore. We have added the meta tag to show the smart app banner. I saw it and everything worked as expected. Problem is, I just closed the banner and now it doesn't reappear. I did the same thing with the Ted.com smart app banner with the same results.

Currently, we're using the iPad with IOS7 and I have read all over that it is a cookie preventing the reappearance of the banner. I have cleared Safari's cache and cookies numerous times, made sure to close safari from memory, run safari in private mode, and I've even rebooted the iPad but those dismissed smart banners still don't reappear. Is there something I'm missing? Most of what I've read about the cookies seem to be specific to IOS6, is there a difference here with IOS7? Anyone have an idea as to how to make these dismissed smart app banners reappear?

6
Just to note, I factory reset the iPad and the smart banners returned... That can't be the solution! There must be another, simple way.Gobo

6 Answers

14
votes

This issue is solely iOS 7. In iOS 6 all you had to do was clear the Safari cookies and history. Apple must have changed something in how they store if an app banner has been closed in iOS 6 vs iOS 7. Surprise!

The following steps are what I have determined gets the smart-app banner to appear again, confirmed on a device running iOS 7.0.4:

  1. Settings -> Safari -> Clear history
  2. Settings -> Safari -> Clear cookies and data
  3. Settings -> General -> Reset -> Reset Location & Privacy
  4. Settings -> General -> Reset -> Reset All Settings

Not the cleanest, but it gets the job done.

4
votes

Also had this problem on both iOS8 and iOS9.

Using the info on this page (thanks!), I found the following solution:

USE AT YOUR OWN RISK!

Tested with iTunes 12.3.1.23 on OSX 10.9.5 with iPhone 5S running iOS 8.4.1

  1. Find the app-id by searching the website's source by searching for "app-id" Example for www.marktplaats.nl: <meta name="apple-itunes-app" content="app-id=373963365, app-argument=marktplaats://homepage">
  2. Make a "local computer backup" with iTunes
  3. Find your backup (probably in: ~/Library/Application Support/MobileSync/)
  4. Make a copy of your backup just in case (Yes: a backup of a backup :-)
  5. Search backup for the app-id. I used: grep "373963365" -r * in the Backup folder
  6. For my example grep found a "hide banner file" starting with 03f01e41fc5d containing the app-id:

bplist00—Y373963365

  1. Change the app-id number to an app-id number from which you never want to see a smart app banner or just increment the app-id by one and save the file.
  2. Restore the changed backup to your device.

Notes:

  • Making, copying, searching and restoring a backup takes some time if you have a 16GB backup like me; be patient.
  • You might find multiple app-ids in the "hide banner file". I don't see why this procedure wouldn't work for changing multiple app-ids
  • Don't delete the "hide banner file" as this will corrupt your backup.
  • Incrementing the app-id by one or choosing any other 9 figure random number will hide that "random" smart app banner!
  • I also successfully did this on a new iPad running iOS 9.0.2

For those who want to go the jailbreak way: I found the file on a jailbroken iPad here: /var/mobile/Containers/Data/Application/{Safari App ID}/Library/Webkit/StoreBannerTracker.plist

@Apple: why can't we just delete this using Clear History and Website Data ????

2
votes

1.remove app from device

2.Settings -> Safari -> Clear History and Website Data

3.Open the safari and open your website

4.Install the app from store

5.reload website

6.good luck

1
votes

There is a way to reset the smart banner behaviour without resetting all preferences. It requires either jailbreaking your iDevice or using an iTunes backup editor such as iExplorer.

Jailbreak method

  1. Navigate to Safari application directory (e.g. using iFile):

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

(If you are using iFile, application names can be displayed along side the app id folder names. Enable Preferences -> File Manager -> Application Names)

  1. Delete or rename the file StoreBannerTracker.plist

Backup editor method

  1. Backup your iDevice using iTunes. (Probably best not to encrypt the backup)
  2. Use an iTunes backup editor such as iExplorer to delete StoreBannerTracker.plist. In iExplorer:
    • Browse Local iTunes Backups -> {Name of your iDevice} -> Backup Explorer -> AppDomain-com.apple.mobilesafari -> Library -> WebKit
    • Right-click StoreBannerTracker.plist and click Delete
  3. Restore the backup to your iDevice using iTunes

(Disclaimer: I haven't tried this method because I use iExplorer in demo mode, which doesn't allow changes.)

-1
votes

Tap on Settings > General > Usage > wait for a while till the list of the apps appear... > Show all apps > Safari > Website Data > Remove All Website Data.

I've tried this on iOS 7 with iPhone 5s, and it will show the smart banner back.

Cheers.

-3
votes

Try clearing Safari Cookies and Data and it should reappear