我在应用商店里有一个名为“法语翻译+”的应用程序。应用图标下方没有足够的空间显示整个名称,因此我设置CFBundleDisplayName =“Translator +"。但是,当我在iOS搜索中键入“法语”时,我的应用不会出现在应用程序部分的结果中。如何让iOS搜索在应用图标下方显示“Translator +”的同时索引“French Translator+”?
的数据
628mspwn1#
问题 * 已在Specify Spotlight keywords iOS 9中回答正如你所指出的,Core Spotlight在应用程序中索引数据。数据是 * 你 * 提供的。所以你所需要做的就是提供一些数据,以便Spotlight搜索可以找到你的应用程序。把这个添加到application(_:didFinishLaunchingWithOptions:)对我来说很有效:
application(_:didFinishLaunchingWithOptions:)
let attributeSet = CSSearchableItemAttributeSet(itemContentType: "application") attributeSet.title = "French Translator" attributeSet.keywords = ["french", "translation", "translator"] attributeSet.contentDescription = "French Language Translation App" let item = CSSearchableItem(uniqueIdentifier: "5C0B7719-3BE7-4441-892D-A786AA431BDD", domainIdentifier: nil, attributeSet: attributeSet) CSSearchableIndex.default().indexSearchableItems([item]) { print("Finished indexing with \(String(describing: $0))") }
字符串
ltqd579y2#
我发现title和keywords在某些时候是无效的。这对我来说很有效。
title
keywords
let attributeSet = CSSearchableItemAttributeSet(contentType: .text) attributeSet.displayName = "Name" attributeSet.contentDescription = "Descruption" attributeSet.artist = "Lucas" let searchableItem = CSSearchableItem(uniqueIdentifier: "starWar", domainIdentifier: "com.fatbobman.Movies.Sci-fi", attributeSet: attributeSet) CSSearchableIndex.default().indexSearchableItems([searchableItem]){ error in if let error = error { print(error.localizedDescription) } }
2条答案
按热度按时间628mspwn1#
问题 * 已在Specify Spotlight keywords iOS 9中回答
正如你所指出的,Core Spotlight在应用程序中索引数据。数据是 * 你 * 提供的。所以你所需要做的就是提供一些数据,以便Spotlight搜索可以找到你的应用程序。
把这个添加到
application(_:didFinishLaunchingWithOptions:)
对我来说很有效:字符串
ltqd579y2#
我发现
title
和keywords
在某些时候是无效的。这对我来说很有效。字符串