Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to promote/open app from Google search website results?

Background

When you search on Google's search engine website on an Android device (via Chrome web browser) something like "how to get to X" (where X is a geographic location, like a city name) , the first item that is shown is a card that allows to navigate to the location you've written.

When choosing to navigate, there are 2 options:

  • if the Android device has Google-Maps installed, it opens the app and navigates there.
  • if the Android device doesn't have Google-Maps installed, it goes to the play store to the app's page, to install it.

as shown below:

enter image description here

In addition, on some cases, for something, Google can put an extra textbox to search within the website it has found, to get the results on it. Such a thing occurs for the Hebrew website "Zap" (which compares prices of products) :

enter image description here

The question

  1. Is there a promotion-program or service or anything to promote a website/app/both this way (deep linking and search box)? If so, where should I start?

  2. Suppose you already have a website that can perform search queries, how do you do the check of whether the app is installed or not (inside the website, not via Google's search engine), and act accordingly? Can this be done only on Google Chrome app?

What should be done (code in android-app, website and others) in order to have those features?

like image 733
android developer Avatar asked Apr 27 '15 14:04

android developer


People also ask

How do I get my app to show up in Google search?

To set up your Android app for indexing by Google, use the Android App Links Assistant in Android Studio or follow these steps: Create deep links to specific content in your app by adding intent filters in your app manifest. Verify ownership of your app content through a website association.

How can I get Google search results on my website?

The simplest (and fastest) way to get Google to index your website is to submit it to Google Search Console. You can also ask other website owners to link to your website; when Google encounters these links, it may add it to its index.


1 Answers

For your first question, what you might be looking for is what is called App Indexing. As Google itself describes it:

App Indexing lets Google index apps just like websites. Deep links to your Android app appear in Google Search results, letting users get to your native mobile experience quickly, landing exactly on the right content within your app.

Basically, the App Indexing API is the one responsible for informing the web of the deep links present in your application. So, first of all, you'll have to add those deeplinks to your mobile application. You can do that in android by specifying Intent Filters and defining a schema like described here and on iOS by defining URLTypes as described here.

Once you have your deeplinks working, you'll add the App Indexing API to your app through Google Play Services. Basically, you'll add calls to every onStart() and onStop() of the Activitys you're interested into indexing with code like:

// in onStart()
AppIndex.AppIndexApi.start(mClient, viewAction);

// in onStop()
AppIndex.AppIndexApi.end(mClient, viewAction);

You can also find more details for the API and how to set it up in detail here.

Since last month, you can also drive installs of your app through App Indexing, as noticed here.

PS: If you're interested, there are nice DevBytes videos about App Indexing here and here.


The search box in Google Chrome results is called Sitelinks Search Box, so if you do have already a querying mechanism on your website, all you have to do is implement the schema.org markup on it:

<script type="application/ld+json">
{
   "@context": "http://schema.org",
   "@type": "WebSite",
   "url": "https://www.example-petstore.com/",
   "potentialAction": {
       "@type": "SearchAction",
       "target": "https://query.example-petstore.com/search?q={search_term_string}",
       "query-input": "required name=search_term_string"
    }
}
</script>

After that, you'll have to wait a little for Google to update its crawlers with your new information. You can find detailed information about the markup with examples and troubleshooting here.

like image 109
Júlio Zynger Avatar answered Oct 16 '22 13:10

Júlio Zynger