ユーザーが写真編集拡張機能を使用して写真の編集を開始した後、アプリ (写真) を閉じて、後で戻ってくる可能性があります。そのアセットへの変更をどのように処理するのか疑問に思っています。テンプレートでは、Apple は変更を処理しません。そのアセットがもう存在しない場合はどうなりますか? 別のデバイスで削除された場合、またはアセットが開かれてから編集された場合はどうなりますか? 削除された場合は、おそらく拡張機能をキャンセルする必要があります。変更された場合は、プレビュー イメージを更新するだけで済みます。
アセットの変更を処理するだけでなく、拡張機能でレンダリングされる写真のプレビューに影響するため、ユーザーがメイン アプリで変更できるようにするデフォルト設定の変更も処理する必要があります。ユーザーが写真に戻ったとき (拡張機能が前面に表示される) を検出してプレビューを更新するだけで、写真が変更され、アプリの設定が変更された場合に対処できると思いました (しかし、よくわかりません)。アセットがもう存在しない場合はどうなりますか)。残念ながら、このコードは、アプリ (拡張子が表示された写真) を閉じてアプリに戻ったときに関数を呼び出しません。
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
NSNotificationCenter.defaultCenter().addObserver(self, selector: "willBeResumed", name: UIApplicationWillEnterForegroundNotification, object: nil)
}
func willBeResumed() {
updatePhotoPreview() //doesn't get here
}
拡張機能が画面に表示されたまま写真を閉じたときに、拡張機能に戻ったときに表示されるプレビューが常に正確であることを確認できるように、アセットの変更とアプリの設定の変更を処理するにはどうすればよいですか?