ios objective-c ios8 icloud drive

ios - Usando el UIDocumentPickerViewController, ¿es posible mostrar un servicio predeterminado(Dropbox, Google Drive, etc.) la primera vez que se abre como Slack?



objective-c ios8 (3)

Normalmente, el comportamiento con UIDocumentPicker es que usted presenta, entonces el usuario debe usar el menú "Ubicaciones" en la parte superior derecha para cambiar entre los servicios. ¿Es posible mostrar primero "Dropbox" o "Google Drive" de forma predeterminada? Casi como si estuviéramos "empinando" en el servicio UIDocumentPicker.

Parece que la aplicación Slack puede hacer esto y también la aplicación MyMail, pero no pude encontrar una API para ello. ¿Algunas ideas?


Ejemplo de código Swift:

let documentProvider = UIDocumentMenuViewController(documentTypes: ["public.image", "public.audio", "public.movie", "public.text", "public.item", "public.content", "public.source-code"], in: .import) documentProvider.delegate = self self.present(documentProvider, animated: true, completion: nil)


En lugar de usar un UIDocumentPickerViewController, intente usar un UIDocumentMenuViewController. Aquí está la documentación relevante .

UIDocumentMenuViewController *documentProviderMenu = [[UIDocumentMenuViewController alloc] initWithDocumentTypes:[self UTIs] inMode:UIDocumentPickerModeImport]; documentProviderMenu.delegate = self; [self presentViewController:documentProviderMenu animated:YES completion:nil];

De forma predeterminada, esto mostrará aplicaciones que incluyen una extensión de proveedor de documentos (como Dropbox, Google Drive, iCloud, etc.). Entonces, si un usuario tiene Dropbox o Google Drive instalado en su dispositivo, estas opciones se mostrarán automáticamente.

También puede agregar opciones personalizadas al menú llamando al addOptionWithTitle:image:order:handler:


No se trata específicamente de Google Drive, pero en un trabajo anterior necesitaba mostrar Facebook cuando el SDK de Apple no me mostraba Facebook. (El caso de ventaja aquí era que la cuenta de Facebook del usuario no estaba en Configuración).

Así que agarré su icono e hice una entrada personalizada.

Sospecho que podrías hacer lo mismo aquí. Toma el ícono de Google Drive y conviértelo en un documento personalizado. Y cuando el usuario lo selecciona, se lo entregan a Google.

Esto es solo una conjetura ya que no he usado UIDocumentPicker. Y además, es bastante hacker.