Sto sviluppando il mio provider di archiviazione e utilizzo il codice di esempio "NewBox" di Apple (il suo collegamento è scaduto) come app host. Idealmente, spero di vedere che posso importare (copiare) file dal provider di archiviazione nella sandbox del mio NewBox o esportare/spostare file in altre app.iOS8: provider di archiviazione di estensione (importazione, esportazione, spostamento) non funziona
A Newbox applicazione ospite, quando voglio importare il file, io uso:
UIDocumentMenuViewController *vc = [[UIDocumentMenuViewController alloc] initWithDocumentTypes:@[(NSString *)kUTTypeRTF,(NSString *)kUTTypePNG,(NSString *)kUTTypeText,(NSString *)kUTTypePlainText,(NSString *)kUTTypePDF, (NSString *)kUTTypeImage] inMode:UIDocumentPickerModeImport];
Una volta che prendo in mano un file, nel mio UIDocumentPickerExtensionViewController, invoco:
- (void)pickDocument:(NSURL *)documentURL {
[self dismissGrantingAccessToURL:documentURL];
}
Dopo aver richiamato il comandoGrantingAccessToURL, la vista del selettore verrà chiusa e tornerà all'app host e verrà richiamato didPickDocumentAtURL dell'applicazione host.
Tuttavia, "didPickDocumentAtURL" riceve l'URL del file originale che ho selezionato, non il nuovo URL che il sistema copia nella sandbox di NewBox. Questo è anche familiare alle circostanze di esportazione e spostamento. Ho frainteso l'importazione/esportazione/spostamento? Ho pensato che questa azione sui file come la copia sulla sandbox dell'applicazione host venga eseguita dal sistema e l'app host otterrà un nuovo URL del file a cui accedere.
Ho provato su iOS8 beta4 e questo problema esiste ancora.
Grazie!
Hey..Does questo metodo "didPickDocumentAtURL" di lavoro per te? .. Dopo prendo documenti da iCloud, il controllo non si avvicina nemmeno a questo metodo. . Cosa mi manca qui? –
Intendi didPickDocumentAtURL dell'app host? Potrebbe essere un bug che a volte non ha chiamato. Chiuderò manualmente l'app e riproverò con il corretto richiamo. – user3793349