Android arama özelliklerini uygulamanıza entegre edin
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
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.
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-08-26 UTC.
[null,null,["Son güncelleme tarihi: 2025-08-26 UTC."],[],[],null,["Try the Compose way \nJetpack Compose is the recommended UI toolkit for Android. Learn how to add search functionality in Compose. \n[Search bar →](/develop/ui/compose/components/search-bar) \n\nSearch is a core user feature on Android. Users must be able\nto search any data that is available to them, whether the content is located on the device or\nthe internet. To help create a consistent search experience for users, Android provides a\nsearch framework that helps you implement search for your application. \n\n**Figure 1.** A search dialog with custom\nsearch suggestions.\n\nThe search framework offers two modes of search input: a search dialog at the top of the\nscreen or a search widget ([SearchView](/reference/android/widget/SearchView)) that you can embed in your activity\nlayout. In either case, the Android system assists your search implementation by\ndelivering search queries to a specific activity that performs searches. You can also enable\nthe search dialog or widget to provide search suggestions as the user types. Figure 1 shows an\nexample of the search dialog with optional search suggestions.\n\nOnce you set up either the search dialog or the search widget, you can do the following:\n\n- Enable voice search.\n- Provide search suggestions based on recent user queries.\n- Provide custom search suggestions that match actual results in your application data.\n- Offer your application's search suggestions in the system-wide Quick Search Box.\n\n**Note** : The search framework does *not* provide APIs to\nsearch your data. To perform a search, you need to use APIs appropriate for your data. For example,\nif your data is stored in an SQLite database, use the [android.database.sqlite](/reference/android/database/sqlite/package-summary)\nAPIs to perform searches.\n\n\u003cbr /\u003e\n\n\nAlso, there is no guarantee that a device provides a dedicated SEARCH button that invokes the\nsearch interface in your application. When using the search dialog or a custom interface, you\nmust provide a search button in your UI that activates the search interface. For more\ninformation, see [Invoke the search\ndialog](/develop/ui/views/search/search-dialog#InvokingTheSearchDialog).\n\nThe following pages show you how to use Android's framework to implement search:\n\n**[Create a search interface](/develop/ui/views/search/search-dialog)**\n: How to set up your application to use the search dialog or search widget.\n\n**[Add recent query\nsuggestions](/develop/ui/views/search/adding-recent-query-suggestions)**\n: How to provide suggestions based on queries previously used.\n\n**[Add custom suggestions](/develop/ui/views/search/adding-custom-suggestions)**\n: How to provide suggestions based on custom data from your application and offer them\n in the system-wide Quick Search Box.\n\n**[Searchable configuration](/develop/ui/views/search/searchable-config)**\n: A reference document for the searchable configuration file. The other\n documents also discuss the configuration file in terms of specific behaviors.\n\nProtect user privacy\n\nWhen you implement search in your application, take steps to protect the user's\nprivacy. Many users consider their activities on their phone---including searches---to\nbe private information. To protect users' privacy, abide by the following\nprinciples:\n\n- **Don't send personal information to servers‐and if you must, don't log it.**\n\n Personal information is any information that can personally identify your users, such as their\n names, email addresses, billing information, or other data that can be reasonably linked to such\n information. If your application implements search with the assistance of a server, avoid sending\n personal information along with the search queries. For example, if you are searching for businesses\n near a ZIP code,\n you don't need to send the user ID as well; send only the ZIP code to the server. If you must\n send personal information, avoid logging it. If you must log it, protect that data\n very carefully and erase it as soon as possible.\n- **Provide users with a way to clear their search history.**\n\n The search framework helps your application provide context-specific suggestions while the user\n types. Sometimes these\n suggestions are based on previous searches or other actions taken by the user in an earlier\n session. A user might not want previous searches to be revealed to other device users. If your\n application provides suggestions that\n can reveal previous search activities, implement a way for the user to clear their\n search history. If you are using [SearchRecentSuggestions](/reference/android/provider/SearchRecentSuggestions),\n you can call the\n [clearHistory()](/reference/android/provider/SearchRecentSuggestions#clearHistory())\n method. If you are implementing custom suggestions, you need to provide a similar \"clear history\"\n method in your content provider that the user can execute."]]