2015-10-09 06:55:32 +00:00
|
|
|
|
# Distribución de la Aplicación
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
Para distribuir tu aplicación con Electron, el directorio que contiene la
|
|
|
|
|
aplicación deberá llamarse `app`, y ser colocado debajo del directorio de
|
2016-07-21 21:07:03 +00:00
|
|
|
|
recursos de Electron (en macOS es `Electron.app/Contents/Resources/`, en Linux y
|
2015-10-09 06:55:32 +00:00
|
|
|
|
Windows es `resources/`), de esta forma:
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2016-06-18 13:26:26 +00:00
|
|
|
|
En macOS:
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
|
|
|
|
```text
|
|
|
|
|
electron/Electron.app/Contents/Resources/app/
|
|
|
|
|
├── package.json
|
|
|
|
|
├── main.js
|
|
|
|
|
└── index.html
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
En Windows y Linux:
|
|
|
|
|
|
|
|
|
|
```text
|
|
|
|
|
electron/resources/app
|
|
|
|
|
├── package.json
|
|
|
|
|
├── main.js
|
|
|
|
|
└── index.html
|
|
|
|
|
```
|
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
Luego ejecutar `Electron.app` (o `electron` en Linux, `electron.exe` en Windows),
|
|
|
|
|
y Electron será iniciado como tu aplicación. El directorio `electron` será
|
|
|
|
|
entonces tu distribución que recibirán los usuarios finales.
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
## Empaquetando tu aplicación en un archivo
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
Además de distribuir tu aplicación al copiar todos los archivos de código fuente,
|
|
|
|
|
también puedes empaquetar tu aplicación como un archivo [asar](https://github.com/atom/asar)
|
|
|
|
|
y de esta forma evitar exponer del código fuente de tu aplicación a los usuarios.
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
Para utilizar un archivo `asar` en reemplazo del directorio `app`, debes de
|
|
|
|
|
renombrar el archivo a `app.asar`, y colocarlo por debajo el directorio de recursos
|
|
|
|
|
de Electron (ver en seguida), Electron intentará leer el archivo y arrancar desde el.
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2016-06-18 13:26:26 +00:00
|
|
|
|
En macOS:
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
|
|
|
|
```text
|
|
|
|
|
electron/Electron.app/Contents/Resources/
|
|
|
|
|
└── app.asar
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
En Windows y Linux:
|
|
|
|
|
|
|
|
|
|
```text
|
|
|
|
|
electron/resources/
|
|
|
|
|
└── app.asar
|
|
|
|
|
```
|
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
Más detalles en [Empaquetado de Aplicaciones](application-packaging.md).
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
## Redefinición con Binarios Descargados
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
Luego de empaquetar tu aplicación en Electron, querrás redefinir Electron antes
|
|
|
|
|
de distribuirlo a los usuarios.
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
|
|
|
|
### Windows
|
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
Puedes renombrar `electron.exe` a cualquier nombre que desees, y editar su ícono
|
2016-02-04 21:32:13 +00:00
|
|
|
|
y otra información con herramientas como [rcedit](https://github.com/atom/rcedit).
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2016-07-21 21:07:03 +00:00
|
|
|
|
### macOS
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
Puedes renombrar `Electron.app` a cualquier nombre que desees, y tendrás que
|
|
|
|
|
renombrar los campos `CFBundleDisplayName`, `CFBundleIdentifier` y `CFBundleName`
|
|
|
|
|
en los siguientes archivos:
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
|
|
|
|
* `Electron.app/Contents/Info.plist`
|
|
|
|
|
* `Electron.app/Contents/Frameworks/Electron Helper.app/Contents/Info.plist`
|
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
También puedes renombrar el helper de la aplicación para evitar que aparezca
|
|
|
|
|
como `Electron Helper` en el Monitor de Actividades. Pero asegurate de renombrar
|
|
|
|
|
el nombre de archivo del ejecutable.
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
La estructura de una aplicación renombrada será:
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
MyApp.app/Contents
|
|
|
|
|
├── Info.plist
|
|
|
|
|
├── MacOS/
|
|
|
|
|
│ └── MyApp
|
|
|
|
|
└── Frameworks/
|
|
|
|
|
├── MyApp Helper EH.app
|
|
|
|
|
| ├── Info.plist
|
|
|
|
|
| └── MacOS/
|
|
|
|
|
| └── MyApp Helper EH
|
|
|
|
|
├── MyApp Helper NP.app
|
|
|
|
|
| ├── Info.plist
|
|
|
|
|
| └── MacOS/
|
|
|
|
|
| └── MyApp Helper NP
|
|
|
|
|
└── MyApp Helper.app
|
|
|
|
|
├── Info.plist
|
|
|
|
|
└── MacOS/
|
|
|
|
|
└── MyApp Helper
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### Linux
|
|
|
|
|
|
|
|
|
|
Puedes renombrar el ejectuable `electron` a cualquier nombre que desees.
|
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
## Redefinición mediante la recompilación de Electron desde el código fuente
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
También es posible redefinir Electron cambiando el nombre del producto y
|
|
|
|
|
compilandolo desde sus fuentes. Para realizar esto necesitas modificar el
|
|
|
|
|
archivo `atom.gyp` y realizar una compilación desde cero.
|
2015-07-27 02:57:43 +00:00
|
|
|
|
|
|
|
|
|
### grunt-build-atom-shell
|
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
La modificación a mano del código de Electron y su compilación puede resultar
|
|
|
|
|
complicada, por lo cual se ha generado una tarea Grunt para manejar esto de
|
|
|
|
|
forma automaticamente:
|
2015-07-27 02:57:43 +00:00
|
|
|
|
[grunt-build-atom-shell](https://github.com/paulcbetts/grunt-build-atom-shell).
|
|
|
|
|
|
2015-10-09 06:55:32 +00:00
|
|
|
|
Esta tarea se encargará de modificar el archivo `.gyp`, compilar el código desde
|
|
|
|
|
las fuentes, y luego reconstruir los módulos nativos de la aplicación para que
|
|
|
|
|
coincidan con el nuevo nombre del ejecutable.
|