Esta página descreve como configurar o SDK do Android. Se você ainda não concluiu os pré-requisitos, faça isso primeiro.
Dependência
Importe o SDK "searchinapps" para um projeto do Android do GMaven. Abra o
arquivo build.gradle
do projeto, declare o repositório Maven do Google e adicione
a dependência do SDK:
repositories {
google()
...
}
dependencies {
implementation 'com.google.android.libraries.searchinapps:searchinapps:[version]'
...
}
Em seguida, crie seu projeto usando o Gradle.
Configuração do AndroidManifest.xml
Atualize o arquivo AndroidManifest.xml
do projeto Android para adicionar os seguintes
metadados:
com.google.searchinapps.API_KEY
: o valor da string da chave de API do SDK (confira acima).com.google.searchinapps.CLIENT_ID
: o valor de string do identificador de cliente do app (consulte acima).
Amostra AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.samples.quickstart.searchinapps">
<application
...
>
<meta-data
android:name="com.google.searchinapps.API_KEY"
android:value="[your api key]"/>
<meta-data
android:name="com.google.searchinapps.CLIENT_ID"
android:value="[your client id]"/>
...
</application>
</manifest>
Inicialização
Para usar as funções do SDK "searchinapps", no Activity
de destino ou em qualquer classe
responsável pela recuperação dos resultados da pesquisa, crie uma instância
SearchInAppsService
(é possível fazer isso na função onCreate
da classe Activity)
e também transmita a atividade ou o contexto do aplicativo nela.
Código de amostra
Java
package ...;
...
import androidx.appcompat.app.AppCompatActivity;
import com.google.android.libraries.searchinapps.SearchInAppsService;
...
public class MainActivity extends AppCompatActivity {
private SearchInAppsService service;
@Override
protected void onCreate(Bundle savedInstanceState) {
...
service = SearchInAppsService.create(this);
...
}
@Override
public void onDestroy() {
service.shutDown();
super.onDestroy();
}
}
Jetpack Compose
package ...
...
import android.os.Bundle
import androidx.activity.compose.setContent
import androidx.appcompat.app.AppCompatActivity
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
import androidx.compose.runtime.mutableStateOf
import androidx.compose.ui.platform.LocalContext
import com.google.android.libraries.searchinapps.SearchInAppsService
...
class MainActivityJetpack : AppCompatActivity() {
private var service: SearchInAppsService? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
SearchSuggestionsUI()
}
}
@Composable
fun SearchSuggestionsUI() {
...
var service by remember {
mutableStateOf<SearchInAppsService?>(
SearchInAppsService.create(LocalContext.current))
}
...
DisposableEffect(Unit) { onDispose { service?.shutDown() } }
...
}
...
}