Dr Stu
Dr Stu

Reputation: 173

Is there a way to launch a popup for mobile device browser ONLY if App not already installed?

I am looking for a way to launch a popup when a website is viewed via a mobile browser, asking the user if they would like to install our App. But I only want the popup prompt to appear if the App is not already installed.

I have used the following JavaScript (which will work for Apple devices:

<script type="text/javascript">
if( /iPad|iPhone/i.test(navigator.userAgent) ) {
var url=confirm("Would you like to download our mobile application?");
if (url==true)
{
var url = window.location.href = 'http://www.itunes.com';
url.show(); 
}
else
{
}
}
</script>

As has been discussed here: App notification popup mobile device web browser

However, this popup launches on iOS regardless. I understand you can check for an app url scheme (and so find out if the App is installed) here: How to launch apps (facebook/twitter/etc) from mobile browser but fall back to hyperlink if the app isn't installed

Can I accomplish this by incorporating these two techniques?

Upvotes: 3

Views: 7399

Answers (2)

amit_saxena
amit_saxena

Reputation: 7614

You can use this if your app has a custom URL scheme:

<script type="text/javascript">
function startMyApp()
{
  document.location = 'appCustomScheme://';
  setTimeout( function()
  {
      if( confirm( 'Install app?'))
      {
        document.location = 'http://itunes.apple.com/us/app/yourAppId';
      }
  }, 300);
 }
</script>

and call the function startMyApp() on page load, or if you need to bind it to some javascript event (click, etc.).

Upvotes: 2

Satheesh
Satheesh

Reputation: 11276

If you are trying to detect whether twitter or Facebook is installed in your device you can use this in your script.

var url = window.location.href = 'fb://';

for twitter

var url = window.location.href = 'twitter://';

If it does not work, try taking out the //. The above statements will open the twitter or facebook app, you can use that in a if loop or something to detect whether a app is installed on the device.

Upvotes: 0

Related Questions