2017-07-30 38 views
0

我的應用程序可以很好地與iCloud協同工作,至少在我的應用程序容器中的元數據查詢定位文檔方面。我可以在iOS 10.x和11(通過文件應用程序)中打開並保存這些文檔並在iCloud Drive中查看它們。應用程序不從iCloud Drive中的文檔啓動

但是,在iCloud Drive中查看它們時,點擊它們不會啓動我的應用程序,而是會顯示一個標識該文檔(準確地)爲MyApp文檔的視圖。但是,如果我點擊一個Pages文檔,Pages將啓動並打開文檔。

我錯過了什麼?我沒有正確設置偏好嗎?此外,在iOS 11中,如果我分享 - >添加人員,我的文檔將正確發送到其他iOS 11設備,並且發送的消息使用我的圖標並將其標識爲MyApp文檔。但是點擊共享消息(在消息中)要求在文件中而不是在MyApp中打開文檔,並且不會將該文件放在MyApp容器中,而是在metadataQuery未找到它的位置上一級。與頁面文檔相同的序列打開頁面並將文檔放入頁面容器中。同樣,Files文件準確地顯示了我的文檔圖標並將其標識爲MyApp文檔,但看起來並沒有將它連接到我的應用程序。

解釋是否有意義?任何想法,我沒有做對或不理解?感謝任何見解!

回答

1

找到了祕密。 plist需要一個屬性,允許它接收打開文檔的請求。該屬性爲LSSupportsOpeningDocumentsInPlace,它是一個布爾值,默認爲NO,但應該設置爲YES,以便調用相應的AppDelegate函數。當我添加(我在示例應用程序ShapeEdit中找到它)時,在iCloud Drive中輕敲我的應用程序的文檔啓動了該應用程序,並用我的代碼調用該函數以打開該文檔。

相關問題