Halaman ini menjelaskan cara menyiapkan Android SDK. Jika Anda belum menyelesaikan prasyarat, selesaikan terlebih dahulu.
Dependensi
Impor SDK "searchinapps" ke dalam project Android dari GMaven. Buka file build.gradle
project Anda, deklarasikan repositori Maven Google, lalu tambahkan dependensi SDK:
repositories {
google()
...
}
dependencies {
implementation 'com.google.android.libraries.searchinapps:searchinapps:[version]'
...
}
Kemudian, build project Anda menggunakan Gradle.
Konfigurasi AndroidManifest.xml
Perbarui file AndroidManifest.xml
project Android Anda untuk menambahkan metadata
berikut:
com.google.searchinapps.API_KEY
: nilai string kunci API SDK Anda (lihat di atas).com.google.searchinapps.CLIENT_ID
: nilai string ID klien aplikasi Anda (lihat di atas).
Sampel 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>
Inisialisasi
Untuk menggunakan fungsi SDK "searchinapps", di Activity
target atau class
apa pun yang bertanggung jawab untuk mengambil hasil penelusuran, buat
instance SearchInAppsService
(Anda dapat melakukannya di fungsi
onCreate
class Aktivitas) dan juga teruskan Konteks aktivitas atau aplikasi ke dalamnya.
Kode contoh
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() } }
...
}
...
}