مكوِّن "البحث المتقدّم عن الأماكن"
يوفّر الإصدار المتقدّم من مكوِّن "البحث عن الأماكن" الميزات نفسها التي يوفّرها الإصدار Place Search Essentials. ويتيح لك أيضًا ضبط أزرار الإجراءات في المكوِّن وتطبيق خيارات البحث والفلترة على المراجعات والوسائط التي تظهر.
إعدادات "البحث المتقدّم عن الأماكن"
استخدِم AdvancedPlaceSearchFragment للوصول إلى الميزات المتقدّمة.
ضبط أزرار الإجراءات
استخدِم واجهة PlaceActionProvider الخاصة بـ AdvancedPlaceSearchFragment لتحديد أزرار الإجراءات وتخصيصها.
متطلبات تحديد المصدر المرئية
ملاحظة مهمة: يجب أن توضّح للمستخدمين متى سيشارك زر إجراء مخصّص معلومات المستخدم مع جهة خارجية غير Google. يمكنك الاطّلاع على متطلبات تحديد المصدر المرئية.
يعرض المثال صورة مخصّصة توضّح أنّه سيتم إرسال معلومات المستخدم إلى "Altostrat".
تطبيق خيارات البحث والفلترة
استخدِم واجهتَي SearchMediaOptions وSearchReviewsOptions الخاصتَين بـ AdvancedPlaceSearchFragment لتفعيل البحث عن الوسائط أو المراجعات وفلترتها.
أمثلة على "البحث المتقدّم عن الأماكن"
إنشاء جزء `AdvancedPlaceSearch`
Kotlin
// Initialize Places first Places.initializeWithNewPlacesApiEnabled(context, API_KEY) // How the fragment is created AdvancedPlaceSearchFragment.newInstance( selectedContent, orientation, R.style.BrandedPlaceDetailsTheme, ) // Fragment supports the same configs that PlaceSearchFragment supported fragment.preferTruncation = false fragment.attributionPosition = AttributionPosition.BOTTOM fragment.selectable = true
إجراء بحث
Kotlin
// Performing a search works the same as with a regular placeSearchFragment. advancedPlaceSearchFragment.configureFromSearchByTextRequest(searchByTextRequest) advancedPlaceSearchFragment.configureFromSearchNearbyRequest(searchNearbyRequest)
الاستماع إلى النتائج
Kotlin
// attach the existing PlaceSearchFragmentListener to get notified about when places load or are selected from the results list. override fun onAttachFragment(fragment: Fragment) { super.onAttachFragment(fragment) when (fragment) { // Reuse the placeSearchFragmetnListener from the Essentials version is AdvancedPlaceSearchFragment -> fragment.registerListener(placeSearchFragmentListener) // use placeListFragmentListener, its functionally identical but with a new name. is AdvancedPlaceListFragment -> fragment.registerListener(advancedPlaceListFragmentListener) } }