Saltar al contenido

Crear un proyecto Swift que envuelve una web

Configura la URL, la identidad de la app y la ventana, y la página muestra la lista de archivos y el código Swift antes de descargar. El proyecto por defecto son 5 archivos y 3.821 bytes; build.command lo compila con las Xcode Command Line Tools en una .app sin firmar. El icono solo se acepta si sus bytes son realmente PNG o JPEG, hasta 10 MB; si no, se rechaza y el ZIP se crea sin icono.

Se ejecuta localmente en tu navegador
Generación local ·
ConfiguraciónSwift + WKWebView
Vista previamacOS 12+
VoriTools Desktop
KNative WKWebView wrapperhttps://voritools.com/
Contenido del proyecto
Compilar en tu Mac

Sin firma por diseño

Privado e inspeccionable

Cómo generar un proyecto de app para macOS

Rellena el formulario y la vista previa lo sigue: nombre de la app, URL del sitio, identificador de paquete, versión, tamaño de ventana, los dos interruptores de ventana y un icono local opcional. El identificador se rellena a partir del nombre mientras no lo edites tú, y la lista de archivos y el código Swift aparecen a la derecha antes de descargar nada. Aquí no intervienen ni compilador ni servidor.

Lo que sale se compiló de verdad durante las pruebas: el proyecto por defecto son 5 archivos en 3.821 bytes y build.command lo compiló con las Xcode Command Line Tools en una .app funcional. Un icono PNG de 256 px produjo un AppIcon.icns de 269.370 bytes, y la misma imagen guardada como JPEG uno de 1.837.743 bytes. Un archivo de texto renombrado a .png, o cualquier imagen de más de 10 MB, se rechazan en la línea de estado y el ZIP se empaqueta sin icono en lugar de incluir uno que rompería la compilación en el Mac.

  1. Escribe el nombre de la app y la URL del sitio. Una URL sin esquema recibe https:// delante y la vista previa muestra la dirección que cargará la app.
  2. Ajusta el identificador de paquete (dominio inverso, por ejemplo com.example.myapp) y la versión. El identificador sigue acompañando al nombre mientras no lo toques.
  3. Fija el ancho y el alto de la ventana dentro de 480–2560 × 320–1600 y decide si la ventana se puede redimensionar y si muestra barra de título.
  4. Elige un icono local PNG o JPEG si lo quieres; el límite son 10 MB. El archivo solo se lee en el navegador y el script de compilación lo convierte en AppIcon.icns.
  5. Pulsa Descargar proyecto macOS (.zip). Descomprime el ZIP y haz doble clic en build.command — o ejecuta chmod +x build.command && ./build.command — y la .app terminada aparece en la carpeta build.

Los archivos del ZIP, las reglas del icono y lo que necesita la compilación

Qué contiene el ZIP

El proyecto son cinco archivos: Sources/main.swift (el envoltorio AppKit + WKWebView que abre tu URL), Info.plist (nombre, identificador de paquete, versión, sistema mínimo 12.0), build.command (el script que compila), README.md y .gitignore. Una sexta entrada — icon.png o icon.jpg — solo aparece si eliges un icono. La descarga se llama <nombre>-macos-project.zip y el ZIP por defecto medido ocupa 3.821 bytes.

No hay nada más en el archivo: ni binario compilado, ni firma, ni seguimiento. Info.plist es XML plano y el archivo Swift es lo bastante corto para leerlo antes de compilar; el botón Copiar código copia exactamente ese archivo.

Icono, ventana y letra pequeña

El icono se acepta solo si sus bytes son realmente PNG o JPEG —se comprueba la firma, no el nombre del archivo— y solo hasta 10 MB; cualquier otra cosa se rechaza con un aviso y deja el proyecto sin icono. Durante la compilación, sips genera 16, 32, 128, 256 y 512 px (y sus @2x) en un .iconset y iconutil los empaqueta en Resources/AppIcon.icns: medido: 269.370 bytes desde un PNG de 256 px y 1.837.743 bytes desde la misma imagen en JPEG.

El ancho de ventana admite 480–2560 y el alto 320–1600 (2560 × 1600 se compiló en las pruebas). Al desmarcar «Permitir cambiar el tamaño» se quita .resizable de la máscara de estilo; al desmarcar «Mostrar barra de título» se oculta el título y la barra pasa a ser transparente. Una URL http:// añade NSAllowsArbitraryLoadsInWebContent a Info.plist para que la vista web pueda cargarla.

Compilar, firmar y privacidad

La compilación ocurre en tu Mac y necesita las Xcode Command Line Tools: el script llama a xcrun swiftc, así que macOS puede pedirte las herramientas una vez. Si tu descompresor pierde el bit de ejecución de build.command, ejecuta antes chmod +x build.command.

El resultado es una .app sin firmar ni notarizar: Gatekeeper avisa en el primer arranque, y dársela a otras personas implica firmarla y notarizarla con tu propia identidad de Apple Developer. La página mantiene el trabajo en local: al generar un proyecto durante las pruebas el navegador no envió ninguna petición, la única entrada fue la URL blob de la vista previa del icono.

Herramientas recientes: