Android arama özelliklerini uygulamanıza entegre edin

Yazma yöntemini deneyin
Jetpack Compose, Android için önerilen kullanıcı arayüzü araç setidir. Oluşturma'ya arama işlevselliği eklemeyi öğrenin.

Arama, Android'deki temel kullanıcı özelliklerinden biridir. Kullanıcılar, içerik cihazda veya internette bulunsa da kendilerine sunulan tüm verileri arayabilmelidir. Android, kullanıcılar için tutarlı bir arama deneyimi oluşturmanıza yardımcı olmak amacıyla uygulamanızda arama işlevini uygulamanıza yardımcı olan bir arama çerçevesi sunar.

1.şekil Özel arama önerileri içeren bir arama iletişim kutusu.

Arama çerçevesi, iki arama girişi modu sunar: ekranın üst kısmındaki bir arama iletişim kutusu veya etkinlik düzeninize yerleştirebileceğiniz bir arama widget'ı (SearchView). Her iki durumda da Android sistemi, arama sorgularını arama yapan belirli bir etkinliğe ileterek arama uygulamanıza yardımcı olur. Kullanıcı yazarken arama önerileri sunmak için arama iletişim kutusunu veya widget'ı da etkinleştirebilirsiniz. Şekil 1'de, isteğe bağlı arama önerileri içeren arama iletişim kutusunun bir örneği gösterilmektedir.

Arama iletişim kutusunu veya arama widget'ını ayarladıktan sonra şunları yapabilirsiniz:

  • Sesli aramayı etkinleştirin.
  • Son kullanıcı sorgularına göre arama önerileri sunma
  • Uygulama verilerinizdeki gerçek sonuçlarla eşleşen özel arama önerileri sunun.
  • Uygulamanızın arama önerilerini sistem genelindeki Hızlı Arama Kutusunda sunun.

Not: Arama çerçevesi, verilerinizde arama yapmanızı sağlayan API'ler sunmaz. Arama yapmak için verilerinize uygun API'leri kullanmanız gerekir. Örneğin, verileriniz bir SQLite veritabanında depolanıyorsa arama yapmak için android.database.sqlite API'lerini kullanın.

Ayrıca, bir cihazın, uygulamanızdaki arama arayüzünü çağıran özel bir ARAMA düğmesi sağlayacağı garanti edilmez. Arama iletişim kutusunu veya özel bir arayüzü kullanırken kullanıcı arayüzünüzde arama arayüzünü etkinleştiren bir arama düğmesi sağlamanız gerekir. Daha fazla bilgi için Arama iletişim kutusunu çağırma başlıklı makaleyi inceleyin.

Aşağıdaki sayfalarda, Android'in çerçevesini kullanarak aramayı nasıl uygulayacağınız gösterilmektedir:

Arama arayüzü oluşturma
Uygulamanızı arama iletişim kutusunu veya arama widget'ını kullanacak şekilde ayarlama
Son sorgu önerilerini ekleme
Daha önce kullanılan sorgulara göre nasıl öneri sunulur?
Özel öneriler ekleme
Uygulamanızdaki özel verilere dayalı öneriler sunma ve bunları sistem genelindeki hızlı arama kutusunda gösterme
Aranabilir yapılandırma
Arama yapılabilir yapılandırma dosyası için referans doküman. Diğer belgelerde de yapılandırma dosyası belirli davranışlar açısından ele alınır.

Kullanıcı gizliliğini koruma

Uygulamanızda arama işlevini uygularken kullanıcının gizliliğini korumak için gerekli adımları atın. Birçok kullanıcı, telefondaki etkinliklerini (aramalar dahil) özel bilgi olarak kabul eder. Kullanıcı gizliliğini korumak için aşağıdaki ilkeleri uygulayın:

  • Sunuculara kişisel bilgi göndermeyin. Göndermeniz gerekiyorsa da bu bilgileri günlüğe kaydetmeyin.

    Kişisel bilgiler, kullanıcılarınızı kişisel olarak tanımlayabilecek her türlü bilgidir. Örneğin, kullanıcılarınızın adları, e-posta adresleri, fatura bilgileri veya bu tür bilgilerle makul şekilde ilişkilendirilebilecek diğer veriler. Uygulamanız, sunucu yardımıyla arama işlevi uyguluyorsa arama sorgularıyla birlikte kişisel bilgi göndermeyin. Örneğin, bir posta kodunun yakınındaki işletmeleri arıyorsanız kullanıcı kimliğini de göndermeniz gerekmez. Sunucuya yalnızca posta kodunu gönderin. Kişisel bilgi göndermeniz gerekiyorsa bu bilgileri günlüğe kaydetmeyin. Kaydetmeniz gerekiyorsa bu verileri çok dikkatli bir şekilde koruyun ve mümkün olan en kısa sürede silin.

  • Kullanıcılara arama geçmişlerini temizleme olanağı sunun.

    Arama çerçevesi, kullanıcı yazarken uygulamanızın bağlama özgü öneriler sunmasına yardımcı olur. Bu öneriler bazen önceki aramalara veya kullanıcının daha önceki bir oturumda gerçekleştirdiği diğer işlemlere dayanır. Kullanıcılar, önceki aramalarının diğer cihaz kullanıcılarına gösterilmesini istemeyebilir. Uygulamanız, önceki arama etkinliklerini ortaya çıkarabilecek öneriler sunuyorsa kullanıcının arama geçmişini temizlemesine olanak tanıyan bir yöntem uygulayın. SearchRecentSuggestions kullanıyorsanız clearHistory() yöntemini çağırabilirsiniz. Özel öneriler uyguluyorsanız içerik sağlayıcınızda kullanıcının çalıştırabileceği benzer bir "geçmişi temizle" yöntemi sağlamanız gerekir.