शुरू करना

इस पेज पर, Android SDK टूल को सेट अप करने का तरीका बताया गया है. अगर आपने ज़रूरी शर्तें पूरी नहीं की हैं, तो पहले उन्हें पूरा करें.

निर्भर है

"searchinapps" SDK टूल को GMaven से किसी Android प्रोजेक्ट में इंपोर्ट करें. अपने प्रोजेक्ट की build.gradle फ़ाइल खोलें, Google Maven रिपॉज़िटरी का एलान करें, और SDK डिपेंडेंसी जोड़ें:

repositories {
  google()
  ...
}

dependencies {
  implementation 'com.google.android.libraries.searchinapps:searchinapps:[version]'
  ...
}

इसके बाद, Gradle का इस्तेमाल करके अपना प्रोजेक्ट बनाएं.

AndroidManifest.xml कॉन्फ़िगरेशन

यहां दिया गया मेटाडेटा जोड़ने के लिए, अपने Android प्रोजेक्ट की AndroidManifest.xml फ़ाइल को अपडेट करें:

  1. com.google.searchinapps.API_KEY: आपके SDK टूल के एपीआई पासकोड की स्ट्रिंग वैल्यू (ऊपर देखें).
  2. 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 फ़ंक्शन में किया जा सकता है). साथ ही, इसमें गतिविधि या ऐप्लिकेशन कॉन्टेक्स्ट भी पास किया जा सकता है.

नमूना कोड

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() } }
    ...
  }
  ...
}

अगला लेख: खोज की सुविधाएं