(Precaución, tráfico bajo el corte)Preparar y distribuir una aplicación iOS dentro de una empresa no es una tarea fácil, especialmente cuando la aplicación está escrita en Windows usando Visual Studio, y la mayoría de los tutoriales en Internet describen MacOS exclusivamente usando Xcode. Sin embargo, después de horas de batalla con la creación de Apple, logramos lo que parecía imposible, a saber:
cruzar una jirafa con un rinoceronte para ensamblar la aplicación Xamarin IOS en el archivo Xcode, inmediatamente en MacOS, después de obtener los archivos necesarios para la distribución, y finalmente crear un enlace donde La aplicación será distribuida.
Sí, no es muy difícil de escuchar. Sin embargo, cuando se trata de desarrollar aplicaciones para dispositivos Apple, todo se vuelve varias veces incomprensible y complicado. Y después de una victoria triunfante pero difícil, queríamos dejar nuestra huella en la historia escribiendo este tutorial.
Prerrequisitos:1. Debe haber una cuenta Apple Enterprise: $ 299 por año.
1 paso Crea un certificado.
1. Primero, en una Mac, debe crear una solicitud para crear un certificado. Para hacer esto, abra el acceso de llavero, por ejemplo, a través de una búsqueda:


2. Seleccione el acceso de llavero en la esquina superior izquierda de la pantalla, seleccione "asistente de certificado" -> "solicitar un certificado de una autoridad de certificación" en el menú emergente, se abrirá la ventana correspondiente:


3. En la ventana que aparece, complete los campos "Dirección de correo electrónico del usuario" - su correo electrónico, y "Nombre común" - el nombre de la clave. Y también seleccione la opción "Guardado en disco" para guardar el archivo de solicitud en la computadora. Y presione el botón "Continuar":

4. A continuación, aparecerá una ventana en la que deberá especificar el nombre del archivo de solicitud y seleccionar la ruta para guardar el archivo. Realizamos los cambios necesarios y guardamos:

5. Después de guardar con éxito, aparecerá la siguiente ventana. Haga clic en "Listo":

6. Después de que podamos ver que el archivo de solicitud se creó en la ubicación de guardado (en este ejemplo, en el escritorio). O podemos ver la clave creada en la lista de claves en "acceso a llavero":


7. Luego, necesitamos crear un certificado, podemos hacerlo en el sitio web de
Apple para desarrolladores iniciando sesión en nuestra cuenta:



8. Después de iniciar sesión con éxito, vamos a "Certificados, ID y perfiles", también en la página de certificados que necesita para asegurarse de que esté seleccionado "IOS, tvOS, watchOS":


9. A continuación, en la página, en la sección "Certificados", seleccione "Producción":

10. En la página, haga clic en el botón con la imagen "+" para crear un certificado. Aparece una página en la que debe seleccionar el tipo de certificado que se creará:


11. En este ejemplo, estamos interesados en el método de distribución interno, así que seleccione "In-House and Ad Hoc" como tipo de certificado. Después de hacer clic en el botón "Continuar":

12. Después de pasar a la página siguiente para crear un certificado, describirá cómo crear una solicitud de MacOS para un certificado. Ya hemos creado esta solicitud en los párrafos anteriores. Presione el botón "Continuar":

13. En el siguiente paso, deberá descargar el archivo de solicitud que creamos anteriormente en el escritorio. Después de una descarga exitosa, haga clic en "Continuar":


14. Después de eso, se generará el certificado, y en la página siguiente se puede descargar a la computadora:

15. Descargue el certificado, en este ejemplo, en el escritorio. También podemos ver el certificado creado en el sitio:


Como podemos ver, al final recibimos con éxito un certificado. El siguiente paso es crear una ID de aplicación.
2 pasos. Crear ID de aplicaciones.
En el paso anterior, creamos con éxito el certificado, ahora necesitamos crear la identificación de aplicaciones. Para hacer esto, necesitas:
1. En el sitio web de
Apple para desarrolladores , en su cuenta, primero vaya a “Certificados, ID y perfiles”, también en la página de certificados, debe asegurarse de que esté seleccionado “IOS, tvOS, watchOS”:


2. A continuación, en la página, en la sección "Identificadores", debe seleccionar "ID de aplicación":


3. En la página, haga clic en el botón con la imagen "+" para crear la ID de la aplicación. Aparece una página en la que debe seleccionar la configuración para la ID creada. La configuración de ID es individual para su aplicación, la única aclaración importante es que en la columna de ID de aplicación de Suffix debe seleccionar la ID de aplicación explícita:


4. Después de crear la ID de la aplicación, se puede ver en el sitio:

Como resultado de dos pasos, recibimos con éxito un certificado y creamos una ID de aplicación. A continuación, necesitamos crear perfiles de aprovisionamiento utilizando el certificado creado. Y esto nos lleva al siguiente paso, “3 pasos. Creación de perfiles de aprovisionamiento ".
3 pasos. Creación de perfiles de aprovisionamiento.
En el paso anterior, creamos con éxito el certificado, ahora necesitamos crear perfiles de aprovisionamiento con él. Para hacer esto, necesitas:
1. En el sitio web de
Apple para desarrolladores , en su cuenta, primero vaya a "Certificados, ID y perfiles", también en la página de certificados, debe asegurarse de que esté seleccionado "IOS, tvOS, watchOS":


2. A continuación, en la página, en la sección "Perfiles de aprovisionamiento", seleccione "Distribución":


3. En la página, haga clic en el botón con la imagen "+" para crear los Perfiles de aprovisionamiento. Aparece una página en la que debe seleccionar el tipo de perfil que se creará:

4. En este ejemplo, estamos interesados en el método de distribución interno, respectivamente, seleccione el tipo de perfil "In House" y haga clic en el botón "Continuar":

5. En la página siguiente, seleccione la ID de la aplicación creada anteriormente en el paso 2:

6. Después de hacer clic en el botón "Continuar", procederemos a la selección del certificado, lo creamos en el paso 1. A continuación, haga clic en el botón "Continuar":

7. En la página siguiente, necesitamos completar el campo con el nombre del perfil y verificar los datos antes de generar el perfil:

8. Después de que se genera el perfil y se puede descargar:

9. Descargue el perfil de aprovisionamiento, en este ejemplo, en el escritorio. También podemos ver el perfil de aprovisionamiento creado en el sitio y ver que está activo:


Siguiendo los resultados de 3 pasos, hemos creado con éxito el perfil de aprovisionamiento.
4 pasos. Crear archivos Xcode (.xcarchive) basados en su aplicación en Visual Studio en Windows y luego crear archivos .ipa y .plist
Los pasos anteriores se realizaron en una computadora de Apple (Mac), luego le diré cómo crear .xcarchive en Visual Studio 2017 para Windows, inmediatamente en una Mac.
1. Para hacer esto, necesitamos la aplicación Xamarin en Visual Studio, que se conectará a la Mac:

2. En la solución, debe seleccionar el proyecto IOS haciendo clic derecho sobre él. En el menú que aparece, seleccione "Propiedades". En la ventana que se abre, seleccione "configuración de paquete ios". Luego, seleccione en la "configuración de paquete" - "aprovisionamiento manual", y debajo en la columna "aprovisionamiento manual" seleccione su certificado y perfil que creamos en los pasos anteriores:


3. En el proyecto IOS, seleccione el archivo Info.plist y asegúrese de que el "identificador de paquete" coincida con la ID de aplicación deseada:


4. Luego, abra la línea de comandos del desarrollador en Visual Studio (como administrador) "Símbolo del sistema del desarrollador para VS 2017" y vaya al directorio con el proyecto ios o especifique la dirección completa al crear el comando. Este comando creará un archivo .xcarchive en Mac desde Visual Studio. El archivo en sí no contiene los archivos .ipa y .plist que necesitamos distribuir, por lo que después de generar el archivo necesitamos crearlos. Obtenga más información sobre cómo crear un archivo
aquí .
Comando: msbuild /p:Configuration=Release /p:ServerAddress=10.211.55.2 /p:ServerUser=xamUser /p:Platform=iPhone /p:ArchiveOnBuild=true /t:"Build" MyProject.csproj


5. Después de la ejecución exitosa del comando en la Mac, debería haberse creado un archivo. Necesitamos ejecutar Xcode, seleccionar "Windows" en él y seleccionar "Organazer" en este menú. Allí, en la sección "Archivo", veremos el archivo .xcarchive creado:



6. Ahora necesitamos crear archivos .ipa y .plist basados en el archivo creado.
Con su ayuda, podemos distribuir nuestra aplicación sin pasar por AppStore, por ejemplo, dentro de la empresa. A continuación, debemos hacer clic en el botón "Distribuir aplicación". En el menú que aparece, seleccione "Enterprise" y haga clic en el botón "Siguiente":

7. A continuación, debe seleccionar los dispositivos a los que puede distribuir y asegúrese de seleccionar "incluir manifiesto para instalación inalámbrica" para poder descargar la aplicación desde el navegador:

8. En la siguiente ventana, especifique "Nombre": el nombre de la aplicación; "URL de la aplicación": ruta al archivo .ipa; "URL de la pantalla de imagen": ruta al icono 57x57; "URL de la imagen a tamaño completo": ruta al icono 512x512.
Es importante que el servidor en el que se encuentran los archivos .ipa y .plist esté encriptado, es decir, https es obligatorio. El ejemplo usa el servicio de
Dropbox . Al usar el servicio de Dropbox,
es importante saber : la ruta correcta al archivo a través del enlace público no debe comenzar con "https://www.dropbox.com/", como se indica en el enlace generado, sino con "https://dl.dropboxusercontent.com/ "

9. En el siguiente paso, debemos seleccionar el certificado creado y el Perfil de aprovisionamiento:

10. Después de ver la aplicación ensamblada con éxito, y debemos elegir dónde guardar la carpeta con la aplicación, que distribuiremos después de:


11. Después de guardar, se creó una carpeta en el escritorio. Puede ver el contenido de la carpeta en las capturas de pantalla a continuación, cuando se generan 4 archivos .plist y generalmente 1 .ipa, pero en la aplicación de prueba esto es un poco diferente, pero en este caso nos interesará un archivo cuyo nombre solo contenga el nombre de nuestra aplicación. En cuanto a los 4 archivos .plist, entonces necesitamos el archivo "manifest.plist". Para instalar la aplicación, necesita un plist, que describe las propiedades previas a la instalación. Obtenga más información sobre Enterprise Distribution y vea cómo se ve manifest.plist
aquí :



Por lo tanto, en este paso, hemos creado con éxito los archivos .ipa y .plist de la aplicación creada en Visual Studio 2017, y que utilizaremos para la distribución interna.
5 pasos. Distribución de aplicaciones
En los pasos anteriores, preparamos nuestra aplicación para distribución. En este paso, crearemos un archivo html simple con el enlace y lo colocaremos en el IIS local, esto se hace para simplificar el ejemplo, pero la ubicación del enlace no importa. Enlace no de ejemplo
se puede colocar en su propio sitio para que esté disponible para los empleados, como archivos de aplicación, se debe colocar en su propio servidor. Sin embargo, en este ejemplo, como se mencionó anteriormente, utilizamos el servicio de Dropbox.
1. Primero debemos colocar los archivos (iconos, archivo .ipa y manifest.plist) en Dropbox y ponerlos a disposición en el enlace:

2. Después de crear el archivo html, los siguientes contenidos:
<html> <body> <a href="itms-services://?action=download-manifest&url=https://www.yoursite.ru/dirname/manifest.plist"> Install iOS in-house App</a> </body> </html>
3. A continuación, cargue este archivo html en el IIS local (o en su sitio) y, siguiendo este enlace desde un dispositivo móvil, se nos pedirá que instalemos la aplicación. Después de instalar la aplicación, el usuario debe confirmar la confianza en el certificado en el dispositivo
Configuración → General → Administración de dispositivos → “Nombre de la empresa”, entonces solo los usuarios pueden abrir la aplicación:



Resumen
Siguiendo los resultados de 5 pasos, creamos un certificado y un Perfil de aprovisionamiento, recopilamos un archivo Xcode de Visual Studio 2017, recibimos archivos .ipa y .plist para su distribución, y también pudimos instalar con éxito la aplicación en el dispositivo haciendo clic en el enlace, evitando así la AppStore.