2016-11-08 76 views
1

我有兩個名爲的應用程序,例如App_A和App_B。我有UIActivityViewController共享一個或一組文件:在iOS 10中使用UIActivityViewController在應用程序之間共享多個文件

NSArray *itemsToShare = [self getItemsToShare]; // returns list with NSUrl objects 
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:itemsToShare applicationActivities:nil]; 
// presenting controller 

當彈出窗口包含App_B在列表中。但是,當我選擇一個App_B圖標時,我只接收來自應用程序中itemsToShare列表中的第一個url:open_app:annotation:app_B delegate中的方法。另外,無論我嘗試共享多少文件,Documents/Inbox文件夾都只包含一個文件。

爲什麼UIActivityViewController只發送一個文件?這是正常的行爲,還是我錯過了什麼?

回答

1

將信息傳遞給其他應用程序有多種不同的方式。在你的情況下,你決定使用application:openURL:sourceApplication:annotation:。在這種情況下,是的,這只是將一個對象傳遞給其他應用程序。它旨在讓用戶將文件從當前應用程序複製到其他應用程序的收件箱。

+0

因此,即使我向UIActivityViewController發送了一個文件列表,它總是隻會激活一個接收器應用程序? –

+0

如果你這樣做,當然。試用iBooks。但是,看看方法簽名:它需要一個URL,而不是一個數組。 – matt

+0

我看到了它,但是當您使用幾個文件執行某些活動並且沒有在目標應用程序中收到它們時,會有點混淆。無論如何,謝謝 –

相關問題