iOS 9 App Search sendUserActivityToServer after it had been invalidated, so doing nothing

Viewed 719

I want to index my notes for global search. I used a tutorial by Ray Wenderlich.

I added string into info.plist:

"myapp.com.notes.note"

Here is my object:

struct Note {

    public static let domainIdentifier = "myapp.com.notes.note"
    public var userActivityUserInfo:[String: Any] {
        return ["id": note_id]
    }
    public var userActivity: NSUserActivity {
        let activity = NSUserActivity(activityType: Note.domainIdentifier)
        activity.title = "\(note.title)"
        activity.userInfo = userActivityUserInfo
        activity.keywords = [note.title, note.text]

        return activity
    }
}

But I don't understand how to register it. In my view controller I tried:

override func viewDidLoad() {
   super.viewDidLoad()
   for note in self.notes {

      note.userActivity.becomeCurrent()
   }
}

But always get:

sendUserActivityToServer, called on activity EC1785C0-2904-4F0A-9885-F4DB91C4B245 after it had been invalidated, so doing nothing.

1 Answers
Related