این صفحه نحوه راهاندازی با Android SDK را شرح میدهد. اگر پیش نیازها را کامل نکرده اید، ابتدا آنها را تکمیل کنید.
وابستگی
SDK "searchinapps" را به یک پروژه اندروید از GMaven وارد کنید. فایل build.gradle
پروژه خود را باز کنید، مخزن Google Maven را اعلام کنید و وابستگی SDK را اضافه کنید:
repositories {
google()
...
}
dependencies {
implementation 'com.google.android.libraries.searchinapps:searchinapps:[version]'
...
}
سپس پروژه خود را با استفاده از Gradle بسازید.
پیکربندی AndroidManifest.xml
فایل AndroidManifest.xml
پروژه Android خود را بهروزرسانی کنید تا متادیتای زیر را اضافه کنید:
-
com.google.searchinapps.API_KEY
: مقدار رشته کلید api SDK شما (به بالا مراجعه کنید). -
com.google.searchinapps.CLIENT_ID
: مقدار رشته ای شناسه مشتری برنامه شما (به بالا مراجعه کنید).
نمونه 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>
مقداردهی اولیه
برای استفاده از توابع "searchinapps" SDK، در Activity
هدف یا هر کلاسی که مسئول بازیابی نتایج جستجو است، یک نمونه SearchInAppsService
ایجاد کنید (شما می توانید آن را در تابع onCreate
کلاس Activity انجام دهید) و همچنین فعالیت یا Context برنامه را به آن منتقل کنید.
کد نمونه
جاوا
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() } }
...
}
...
}