2013-07-30 24 views
7

Ví dụ: Ứng dụng chứa tin nhắn. Người dùng tìm kiếm chú ý bằng chuỗi từ tin nhắn. Spotlight tìm thấy ứng dụng đó.Ứng dụng có thể cung cấp một móc cho Spotlight để tìm kiếm nội dung trong ứng dụng không?

Tôi đã nghe rằng ánh đèn sân khấu có thể tìm kiếm nội dung ứng dụng. Nhưng làm thế nào để đưa nó lên Spotlight trên iOS?

+0

Tôi đoán bạn nghe sai, tôi không thể tìm thấy một điều duy nhất trong tài liệu về hội nhập với ánh đèn sân khấu trên iOS. – rckoenes

+0

http://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/SpotlightCoreData/SpotlightCoreData.pdf – utahwithak

+0

@openfrog, tôi chưa thấy nó được thực hiện trong iphone và ipad nhưng nó có thể được thực hiện với mac, đây là liên kết đến mã mẫu spotlighter cho mac nếu có thể giúp. https://developer.apple.com/library/mac/#samplecode/Spotlighter/Introduction/Intro.html#//apple_ref/doc/uid/DTS40008818 –

Trả lời

8

Theo Core Data Spotlight Integration Programming Guide, các chức năng bạn muốn là không có sẵn cho iOS, chỉ dành cho Mac OS X.

+1

Điều này đã thay đổi với các bản cập nhật cho iOS9. Hiện tại có API tìm kiếm để thêm nội dung ứng dụng vào Spotlight. Xin vui lòng xem câu trả lời của tôi dưới đây. – reshat2

4

này bây giờ có thể từ iOS9 trở đi.

Apple đã phát hành một SDK CoreSpotlight (WWDC2015) ở đâu, bạn có thể tích hợp ứng dụng của mình vào tiêu điểm của iOS và có thể thực hiện tìm kiếm nội dung.

Có nhiều cách khác để thực sự tích hợp các hoạt động người dùng khác nhau vào ứng dụng của bạn và cũng có thể tìm kiếm mọi thứ ngay cả khi ứng dụng của bạn chưa được cài đặt trên thiết bị.

Nếu ứng dụng của bạn là một ứng dụng xử lý pdf chẳng hạn, nếu người dùng tìm kiếm pdf trên thiết bị của mình, ứng dụng của bạn có thể xuất hiện trong tùy chọn nổi bật dưới dạng ứng dụng mà anh có thể sử dụng để đọc pdf, ngay cả khi ứng dụng của bạn không được cài đặt trên thiết bị của người dùng. Xem xét ví dụ của bạn, bây giờ có thể nếu bạn tìm kiếm chuỗi thông báo trong tiêu điểm, đèn chiếu có thể mở ứng dụng của bạn và bạn có thể khiến người dùng thực sự điều hướng để tìm chính xác thư trong ứng dụng của bạn.

Thêm liên kết bên dưới: Bạn có thể tìm thấy chi tiết để triển khai.

https://developer.apple.com/library/prerelease/ios/releasenotes/General/WhatsNewIniOS/Articles/iOS9.html#//apple_ref/doc/uid/TP40016198-SW3

-Tejas

+0

có nghĩa là cho tất cả các cụm từ tìm kiếm có thể có liên quan đến ứng dụng của chúng tôi, cần phải được thêm vào trong CSSearchableIndex dưới dạng SearchableItem? – christijk

+0

Trả lời ngắn gọn: Có. Trả lời dài: Tìm kiếm thực sự cung cấp cho bạn quyền kiểm soát tốt hơn những gì bạn cần tìm kiếm trong nội dung của ứng dụng. Vì vậy, bạn sẽ phải lập chỉ mục mọi đối tượng bạn cần tìm kiếm từ ánh đèn sân khấu bằng cách thêm một CSSearchableItem. –

+0

Đã thêm một liên kết trong câu trả lời của tôi. Bạn có thể biết thêm chi tiết về các điều khoản. –

1

Dưới đây là một ví dụ về cách thêm nội dung ứng dụng của bạn để Spotlight thông qua tìm kiếm mới của API. Đây là có sẵn trên iOS9 sử dụng XCode 7.

CSSearchableItemAttributeSet * attributes = [[CSSearchableItemAttributeSet alloc] initWithItemContentType:(NSString *)kUTTypeImage]; //Or whatever type 
attributes.contentDescription = @"This is my content description."; 
attributes.displayName = @"Display Name"; 
attributes.keywords = @["Stuff","Widget"]; 
attributes.subject = @"Subject"; 
attributes.title = @"Title"; 

CSSearchableItem *item = [[CSSearchableItem alloc] initWithUniqueIdentifier:someUniqueId domainIdentifier:@"SomeGroupName" attributeSet:attributes]; 

[[CSSearchableIndex defaultSearchableIndex] indexSearchableItems:@[item] completionHandler:nil]; 

Khi người sử dụng chọn các mục trong ánh đèn sân khấu, các phương pháp sau đây:

-(BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray *))restorationHandler 

trong appdelegate của bạn sẽ được gọi. Kiểm tra từ điển userInfo trong đối tượng userActivity và gửi người dùng đến màn hình thích hợp.

+0

Vì vậy, cách tìm kiếm đang hoạt động ở đây .. người dùng nên tìm kiếm tiêu đề hoặc cho các từ khóa? – christijk

+2

Bất kỳ một trong số đó sẽ hoạt động. Tiêu đề, từ khóa, chủ đề mọi thứ trở thành một từ khóa. –

Các vấn đề liên quan