Pregunta

Problema:


Creación de aplicaciones empresariales de una naturaleza de suite y necesita poder pasar datos de una aplicación a otra. Ejemplo: APP1 es un lector de código de barras que produce y la lista de inventario. APP2 necesita una copia "nueva" de la misma información de la lista de inventario que APP1 acaba de producir para lograr su objetivo de producir órdenes de compra. Las dos aplicaciones y bases de datos son dos grandes para exprimirse en una sola aplicación, además de que la suite continuará creciendo con más y más aplicaciones.


Comprensión:


Entiendo completamente que "cada" aplicación está en su propia caja de arena. Sin embargo, al leer los documentos con respecto a la nueva API de UidocumentInteractionController, parece que una aplicación puede sumergirse fuera del sandbox solo un poco para "leer", "ver" o "abrir" un documento que no estaba separado del paquete o creado dentro de la aplicación.


Flujo de datos:


Estoy tratando de mantenerlo simple. He estado utilizando la aplicación de muestra DocInteraction descargada de Apple, y otra aplicación ... llamada App1 para intentar trabajar con un archivo de texto simple. En APP1, creo un archivo TXT simple y lo guardo en la carpeta de documentos. (¿Pero esto todavía está dentro de la caja de arena de la aplicación?). En la muestra modificada DocInteraction, he estado tratando de figurar una forma de "ver", "Abrir" o mejor "leer" el archivo TXT creado. Si puedo pasar un archivo TXT simple entre los dos, puedo incluir una estructura CSV para actualizar las bases de datos en cada lado cuando se abren las aplicaciones.

He intentado utilizar las teclas de opciones de lanzamiento sin suerte.

En resumen, parece que no puedo entenderlo:

  1. ¿A dónde deben ir los datos de App1?
  2. ¿Cómo encontrar los datos en la otra aplicación, digamos APP2?
  3. ¿Cómo "abrir" el archivo que existe dentro del sandbox de otra aplicación?

Resultado final: he tratado de mantenerme alejado del

Esquema de documentos de interacción del documento:

  • Vista previa de un documento o opciones de presentación
  • Registrando su soporte de tipos de archivos
  • Abrir archivos de otras aplicaciones
  • Mostrar e imprimir vistas previas de vista rápida

Es el "Abrir archivos de otras aplicaciones"Con el que estoy más interesado. Me ordena utilizar la aplicación: Did FinishLaunchingWithOptions: Método pasando los valores de diccionario para las claves. Aquí es donde me pierdo? "¿Qué" buscar? Y todavía no estoy claro al director adecuado para el que App1 debería guardar información para que las claves apunten al lugar correcto?


La apertura de archivos adjuntos de archivos de correo electrónico y la apertura de PDF en iBooks no pueden ser los únicos lugares donde puede utilizar esta API o que Apple no hubiera pasado por todo el trabajo, ya están permitidos hablar desde App-to-App.


Nota: No estoy tratando de hacer que APP1 transmita directamente los datos a los archivos de APP2. ¡No creo que Apple permita eso! Estoy tratando de hacer que APP1 aumente sus datos, guárdelo en la ubicación adecuada, por lo que cuando el usuario decide usar APP2, los datos pueden estar disponibles para APP2 "Lectura" los datos.


Si alguien tiene una aplicación de muestra, tutorial o incluso una idea sólida de cómo hacer que esto funcione, realmente apreciaría la ayuda.

-¡Gracias!

PD: Alguien con 1,500 o más reputación, ¡cree una etiqueta "uidocumentInteraction" para stackoverflow!

¿Fue útil?

Solución

Lo tengo funcionando el mes pasado. Aquí está mi modelo mental:

APP1 crea un archivo en cualquier lugar de su Sandbox.

APP1 llama a DocInteraction para mostrar la GUI "Abrir en" para ese archivo

El usuario elige "Abrir en APP2"

El iOS copia el archivo de un sandbox a otro y inicia la aplicación2.

APP2 implementa Didfinishlaunchingwithurl y carga la URL suministrada (que es la copia en su sandbox)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top