دمج ميزات بحث Android في تطبيقك

تجربة طريقة "الكتابة"
‫Jetpack Compose هي مجموعة أدوات واجهة المستخدم التي يُنصح باستخدامها على Android. تعرَّف على كيفية إضافة وظيفة البحث في "إنشاء".

البحث هو إحدى الميزات الأساسية للمستخدمين على Android. يجب أن يتمكّن المستخدمون من البحث عن أي بيانات متاحة لهم، سواء كان المحتوى مخزّنًا على الجهاز أو على الإنترنت. للمساعدة في توفير تجربة بحث متسقة للمستخدمين، يوفّر نظام التشغيل Android إطار عمل للبحث يساعدك في تنفيذ وظيفة البحث في تطبيقك.

الشكل 1. مربّع حوار بحث يتضمّن اقتراحات بحث مخصّصة

يتيح إطار عمل البحث طريقتَين لإدخال طلب البحث: مربّع حوار البحث في أعلى الشاشة أو أداة بحث مصغّرة (SearchView) يمكنك تضمينها في تصميم نشاطك. في كلتا الحالتين، يساعد نظام التشغيل Android في تنفيذ البحث من خلال إرسال طلبات البحث إلى نشاط معيّن ينفّذ عمليات البحث. يمكنك أيضًا تفعيل مربّع حوار البحث أو التطبيق المصغّر لتقديم اقتراحات البحث أثناء كتابة المستخدم. يعرض الشكل 1 مثالاً على مربّع حوار البحث مع اقتراحات بحث اختيارية.

بعد إعداد مربّع حوار البحث أو أداة البحث، يمكنك إجراء ما يلي:

  • فعِّل ميزة "البحث الصوتي".
  • تقديم اقتراحات البحث استنادًا إلى طلبات البحث الأخيرة التي أجراها المستخدِمون
  • قدِّم اقتراحات بحث مخصّصة تتطابق مع النتائج الفعلية في بيانات تطبيقك.
  • عرض اقتراحات البحث في تطبيقك في "مربّع البحث السريع" على مستوى النظام

ملاحظة: لا يوفّر إطار عمل البحث واجهات برمجة تطبيقات للبحث في بياناتك. لإجراء عملية بحث، عليك استخدام واجهات برمجة التطبيقات المناسبة لبياناتك. على سبيل المثال، إذا كانت بياناتك مخزّنة في قاعدة بيانات SQLite، استخدِم واجهات برمجة التطبيقات لإجراء عمليات البحث.android.database.sqlite

بالإضافة إلى ذلك، ليس هناك ما يضمن توفير الجهاز لزر مخصّص للبحث يستدعي واجهة البحث في تطبيقك. عند استخدام مربّع حوار البحث أو واجهة مخصّصة، عليك توفير زر بحث في واجهة المستخدم يفعّل واجهة البحث. لمزيد من المعلومات، يُرجى الاطّلاع على استدعاء مربّع حوار البحث.

توضّح لك الصفحات التالية كيفية استخدام إطار عمل Android لتنفيذ البحث:

إنشاء واجهة بحث
كيفية إعداد تطبيقك لاستخدام مربّع حوار البحث أو أداة البحث
إضافة اقتراحات لطلبات البحث الأخيرة
كيفية تقديم اقتراحات استنادًا إلى طلبات البحث المستخدَمة سابقًا
إضافة اقتراحات مخصّصة
كيفية تقديم اقتراحات استنادًا إلى بيانات مخصّصة من تطبيقك وعرضها في "مربع البحث السريع" على مستوى النظام
الإعدادات القابلة للبحث
مستند مرجعي لملف الإعداد القابل للبحث تتضمّن المستندات الأخرى أيضًا مناقشة لملف الإعدادات من حيث السلوكيات المحدّدة.

حماية خصوصية المستخدم

عند تنفيذ ميزة البحث في تطبيقك، اتّخِذ خطوات لحماية خصوصية المستخدم. يرى العديد من المستخدمين أنّ أنشطتهم على هواتفهم، بما في ذلك عمليات البحث، هي معلومات خاصة. للحفاظ على خصوصية المستخدمين، يجب الالتزام بالمبادئ التالية:

  • عدم إرسال معلومات شخصية إلى الخوادم، وفي حال الضرورة، عدم تسجيلها

    المعلومات الشخصية هي أي معلومات يمكن أن تحدّد هوية المستخدمين، مثل أسمائهم أو عناوين بريدهم الإلكتروني أو معلومات الفوترة أو أي بيانات أخرى يمكن ربطها بشكل معقول بهذه المعلومات. إذا كان تطبيقك يتيح البحث بمساعدة خادم، تجنَّب إرسال معلومات شخصية مع طلبات البحث. على سبيل المثال، إذا كنت تبحث عن أنشطة تجارية بالقرب من رمز بريدي، لا تحتاج إلى إرسال رقم تعريف المستخدم أيضًا، بل أرسِل الرمز البريدي فقط إلى الخادم. إذا كان عليك إرسال معلومات شخصية، تجنَّب تسجيلها. إذا كان عليك تسجيلها، احرص على حماية هذه البيانات بعناية فائقة وامحها في أقرب وقت ممكن.

  • توفير طريقة للمستخدمين لمحو سجلّ البحث

    يساعد إطار عمل البحث تطبيقك في تقديم اقتراحات خاصة بالسياق أثناء كتابة المستخدم. في بعض الأحيان، تستند هذه الاقتراحات إلى عمليات البحث السابقة أو الإجراءات الأخرى التي اتّخذها المستخدم في جلسة سابقة. قد لا يريد المستخدم أن تظهر عمليات البحث السابقة لمستخدمي الأجهزة الآخرين. إذا كان تطبيقك يقدّم اقتراحات يمكن أن تكشف عن أنشطة البحث السابقة، عليك توفير طريقة للمستخدم لمحو سجلّ البحث. إذا كنت تستخدم SearchRecentSuggestions، يمكنك استدعاء الطريقة clearHistory(). إذا كنت تنفّذ اقتراحات مخصّصة، عليك توفير طريقة مشابهة "لمحو السجلّ" في مقدّم المحتوى يمكن للمستخدم تنفيذها.