You've added an HTTP or HTTPS intent filter to your Android app with the hope of having your app launch when someone navigates to your defined Url. Seemed easy enough.

Code in place, you punch the Url into a browser address bar to test, but nothing happens.


I recently tried testing this, myself, and saw similar results. I saw posts like this and that trying to explain how to fix the problem, but nothing worked.

The Problem

Punching the Url into a browser address bar won't necessarily launch your app. I've seen it work, but not consistently.

Code Snippet

Your Activity class should have a similar IntentFilter attribute:

[IntentFilter(new[]{Intent.ActionView},
        Categories=new[]{Intent.CategoryDefault,
        Intent.CategoryBrowsable},
        DataScheme="https", 
        DataHost="*.example.com",
        DataPathPrefix="/mobile/home")]

Better Testing

Create a file on your testing device called test.html with the following contents:

<html>  
    <body>
        <a href="https://test.example.com/mobile/home">Tap</a>
    </body>
</html>  

Once created and saved, tap the file and open in a browser or HTML viewer. Tap the hyperlink.

If you've done everything else right, you should now see the intent chooser dialog appear with your app listed.

Success!