Усовершенствования поиска приложений в Xamarin.iOS
В этой статье рассматриваются усовершенствования Apple, внесенные в поиск приложений в iOS 10 и способы их реализации в Xamarin.iOS.
В iOS 10 Apple сделала несколько улучшений для поиска приложений, таких как Deepsourced Deep-Linking, In-App Search, Search и Визуализация результатов проверки. В этой статье рассматривается реализация этих функций в приложении Xamarin.iOS.
О усовершенствованиях поиска приложений
Core Spotlight в iOS 10 предоставляет несколько улучшений для поиска приложений, таких как:
- Crowdsourced Deep-Link Популярность (с разностной конфиденциальностью) — предоставляет способ продвижения содержимого глубоко связанного приложения в результатах поиска.
- Поиск в приложении — используйте новый
CSSearchQuery
класс для предоставления возможности поиска в приложении Spotlight, аналогично тому, как работают приложения "Почта", "Сообщения" и "Заметки". - Продолжение поиска. Позволяет пользователю запускать поиск в Центре в центре внимания или Safari, а затем открывать приложение и продолжать поиск.
- Визуализация результатов проверки — средство проверки API поиска приложений Apple теперь отображает визуальное представление разметки веб-сайта и глубокое связывание при подготовке тестов.
- Общий доступ к изображениям приложения сообщений— позволяет отображать популярные образы в приложении, предоставляемые для совместного использования в сообщениях (с помощью расширения приложения сообщений) в поисках в Центре внимания.
В следующих разделах подробно рассматриваются эти разделы.
Популярность deep-link в Краудсорсорд
iOS 10 предоставляет механизм подсчета частоты, за которой следуют популярные глубокие ссылки в приложение и используют эту информацию для улучшения ранжирования содержимого приложения в результатах поиска, а также защиты удостоверения пользователя с помощью разностной конфиденциальности.
Для приложений, использующих NSUserActivity
объекты для предоставления URL-адресов глубокой связи и присвоения свойствуEligibleForPublicIndexing
, true
iOS 10 отправляет подмножество разностных хэшей конфиденциальности на серверы Apple. Затем эта информация используется для продвижения популярного содержимого в приложении в результатах поиска.
Дополнительные сведения о реализации глубокой компоновки в приложении Xamarin.iOS см. в документации по поиску с помощью NSUserActivity .
Поиск в приложении
Реализуя новый класс CSSearchQuery , приложение может предоставить технологии поиска и сопоставления в Центре внимания, чтобы найти содержимое внутри себя без необходимости оставлять приложение (аналогично работе приложения "Почта", "Сообщения и заметки").
Как правило, приложения, которые поддерживают, CSSearchQuery
не должны поддерживать собственный отдельный индекс поиска.
Продолжение поиска
В iOS 9 Apple представила API поиска (например, Core Spotlight и NSUserActivity
веб-разметку), чтобы обеспечить глубокий вкус содержимого в приложении, чтобы пользователи могли искать это содержимое с помощью интерфейсов поиска в Spotlight и Safari. Дополнительные сведения см. в документации по новым API поиска.
В iOS 10 Apple основывается на этой функции, позволяя пользователю начать поиск в Spotlight или Safari, а затем продолжить поиск при открытии приложения.
Чтобы реализовать эту функцию, измените файл приложенияInfo.plist
, добавьте CoreSpotlightContinuation
ключ логического типа и задайте для нее значениеYES
:
Чтобы ответить пользователю на продолжение результата поиска (NSUserActivity
), измените файл и переопределите AppDelegate.cs
ContinueUserActivity
метод. Например:
public override bool ContinueUserActivity (UIApplication application, NSUserActivity userActivity, UIApplicationRestorationHandler completionHandler)
{
// Take action based on the activity type
switch (userActivity.ActivityType) {
case "com.xamarin.platform":
// Restore the state of the app here...
break;
default:
if (userActivity.ActivityType == CSSearchQuery.ContinuationActionType) {
var search = userActivity.UserInfo.KeyForValue(CSSearchQuery.QueryString);
// Continue user's search here...
}
break;
}
return true;
}
Этот код ищет тип действия продолжения запроса (userActivity.ActivityType == CSSearchQuery.ContinuationActionType
), а затем считывает текущий запрос пользователя из NSUserActivity
словаря сведений о пользователе (userActivity.UserInfo.KeyForValue(CSSearchQuery.QueryString)
). Отсюда приложение должно принять меры, чтобы продолжить поиск пользователя.
Дополнительные сведения о работе с поиском в приложении Xamarin.iOS см. в нашей документации по поиску в Core Spotlight .
Визуализация результатов проверки
Средство проверки API поиска приложений Apple теперь отображает визуальное представление разметки веб-сайта и глубокого связывания (включая разметку, например определенную в Schema.org) при подготовке тестов.
С помощью средства проверки разработчик может просмотреть сведения, индексированные Applebot Web Crawler для сайта, например название, описание, URL-адрес и другие поддерживаемые элементы.
Дополнительные сведения о работе с веб-разметкой см . в документации по Веб-разметке Seach.
Общий доступ к образам приложения сообщений
Если расширение приложения сообщений предоставляет изображения для совместного использования в сообщениях, расширение можно настроить, чтобы разрешить пользователю выполнять поиск в Центре внимания популярных образов из сообщений, не оставляя приложение.
Чтобы включить эту функцию, сделайте следующее:
- Создайте расширение приложения сообщений.
com.apple.developer.associated-domains
Добавьте права приложения и добавьте список веб-доменов, на которых размещены изображения, которым предоставляется общий доступ к расширению приложения сообщений. Для каждого домена укажитеspotlight-image-search
службу.- Добавьте файл на
apple-app-site-association
веб-сайт, на котором размещены изображения. Этот файл содержит словарь дляspotlight-image-search
службы и содержит идентификатор приложения, который является префиксом идентификатора команды или идентификатора приложения, за которым следует идентификатор пакета. Файл может содержать до 500 путей и шаблонов, которые будут индексированы в Центре внимания и включены в популярные поиски изображений. Дополнительные сведения см. в документации по созданию и отправке файла ассоциаций Apple. - Разрешите Applebot обходить веб-сайты. Ознакомьтесь с документацией Apple About Applebot.
Дополнительные сведения см. в документации по интеграции приложений сообщений.
Итоги
В этой статье рассматриваются улучшения Apple, внесенные в поиск приложений в iOS 10 и как реализовать их в Xamarin.iOS.