Aprimorar desempenho da pesquisa

Melhore a classificação do seu app na Pesquisa Google, da criação de conteúdo à análise de desempenho.

Análise com referências da Pesquisa

Você pode usar a informação de referência dos links ao seu app proveniente da Pesquisa Google em outras ferramentas de análise. Por exemplo, nosso codelab nas indicações de rastreamento ao seu app mostra como você pode usar as referências da pesquisa em conjunto com o Google Analytics para análise geral de apps.

Se você quiser criar sua própria solução de rastreamento do tráfego de pesquisa para seu aplicativo, transmita mais um android.intent.extra.REFERRER_NAME para ele usando o Android Debug Bridge. O comando de exemplo a seguir demonstra como fazer isso, supondo que o nome do pacote do app seja package_name e o URL do aplicativo seja www.examplepetstore.com:

adb shell am start
   -a android.intent.action.VIEW
   -c android.intent.category.BROWSABLE
   -e android.intent.extra.REFERRER_NAME android-app://com.google.android.googlequicksearchbox/https/www.examplepetstore.com
   -d http://examplepetstore.com/host_path com.examplepetstore.android

Esse teste simula a abertura de um URL HTTP em seu app e a transmissão da informação de referência especificando que o tráfego veio do Google app.

Extrair informação de referência

A classe com.google.firebase.appindexing.AndroidAppUri ajuda a extrair os URIs de referência. Um intent adicional fornece as informações de referência ao URL HTTP com a seguinte chave: android.intent.extra.REFERRER_NAME.

Os exemplos abaixo mostram valores de referenciador de várias fontes:

  • Chrome: https://www.google.com
  • Google app: android-app://com.google.android.googlequicksearchbox/https/www.google.com
  • Googlebot: android-app://com.google.appcrawler
  • Rastreador de app do Google AdsBot: android-app://com.google.adscrawler

O snippet de código a seguir mostra como extrair informação de referência da Pesquisa.

Java
Android

public class MeasureActivity extends AppCompatActivity {

    @Override
    public Uri getReferrer() {

        // There is a built in function available from SDK>=22
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) {
            return super.getReferrer();
        }

        Intent intent = getIntent();
        Uri referrer = (Uri) intent.getExtras().get("android.intent.extra.REFERRER");
        if (referrer != null) {
            return referrer;
        }

        String referrerName = intent.getStringExtra("android.intent.extra.REFERRER_NAME");

        if (referrerName != null) {
            try {
                return Uri.parse(referrerName);
            } catch (ParseException e) {
                // ...
            }
        }

        return null;
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // ...
        Uri referrer = getReferrer();

        if (referrer != null) {
            if (referrer.getScheme().equals("http") || referrer.getScheme().equals("https")) {
                // App was opened from a browser
                // host will contain the host path (e.g. www.google.com)
                String host = referrer.getHost();

                // Add analytics code below to track this click from web Search
                // ...

            } else if (referrer.getScheme().equals("android-app")) {
                // App was opened from another app
                AndroidAppUri appUri = AndroidAppUri.newAndroidAppUri(referrer);
                String referrerPackage = appUri.getPackageName();
                if ("com.google.android.googlequicksearchbox".equals(referrerPackage)) {
                    // App was opened from the Google app
                    // host will contain the host path (e.g. www.google.com)
                    String host = appUri.getDeepLinkUri().getHost();

                    // Add analytics code below to track this click from the Google app
                    // ...

                } else if ("com.google.appcrawler".equals(referrerPackage)) {
                    // Make sure this is not being counted as part of app usage
                    // ...
                }
            }
        }
        // ...
    }
}

Kotlin
Android

class MeasureActivity : AppCompatActivity() {

    override fun getReferrer(): Uri? {

        // There is a built in function available from SDK>=22
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) {
            return super.getReferrer()
        }

        val intent = intent
        val referrer = intent?.extras?.get("android.intent.extra.REFERRER") as Uri?
        if (referrer != null) {
            return referrer
        }

        val referrerName = intent.getStringExtra("android.intent.extra.REFERRER_NAME")

        if (referrerName != null) {
            try {
                return Uri.parse(referrerName)
            } catch (e: ParseException) {
                // ...
            }
        }

        return null
    }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        // ...
        val referrer = referrer

        if (referrer != null) {
            if (referrer.scheme == "http" || referrer.scheme == "https") {
                // App was opened from a browser
                // host will contain the host path (e.g. www.google.com)
                val host = referrer.host

                // Add analytics code below to track this click from web Search
                // ...
            } else if (referrer.scheme == "android-app") {
                // App was opened from another app
                val appUri = AndroidAppUri.newAndroidAppUri(referrer)
                val referrerPackage = appUri.packageName
                if ("com.google.android.googlequicksearchbox" == referrerPackage) {
                    // App was opened from the Google app
                    // host will contain the host path (e.g. www.google.com)
                    val host = appUri.deepLinkUri.host

                    // Add analytics code below to track this click from the Google app
                    // ...
                } else if ("com.google.appcrawler" == referrerPackage) {
                    // Make sure this is not being counted as part of app usage
                    // ...
                }
            }
        }
        // ...
    }
}

Criar conteúdo de qualidade na Web e em dispositivos móveis

É possível aprimorar a classificação do seu app oferecendo conteúdo de alta qualidade no app e no site associado. Isso é possível porque nossos sistemas analisam a associação entre as duas propriedades para determinar a classificação dos resultados da Pesquisa na Web e em dispositivos móveis. Em especial, lembre-se de:

  • garantir que o site associado cumpra nossas diretrizes de design e conteúdo;
  • seguir as mesmas práticas recomendadas em nosso guia SEO para dispositivos móveis;

Para garantir a melhor experiência de pesquisa para os usuários, o Google pode realizar ações corretivas em casos considerados como abuso, fraude ou outras ações prejudiciais a essa experiência. Entre as penalidades possíveis estão o rebaixamento ou a remoção de URLs HTTP dos resultados da Pesquisa Google.

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.