Registro de proceso de herramientas de embalaje y subcontratación

Registro de proceso:

Empezar a empacar AB

1. Recopile rutas de recursos que deben empaquetarse

La lógica de los recursos de recopilación se extrae para crear Mgr, se accede a los recursos recopilados mediante un diccionario y el valor clave es la ruta del recurso. (Utilice DirectoryInfo.GetFileSystemInfos() y FileInfonfo de la secuencia IO para obtener el directorio completo (este método debe prestar atención: si el directorio obtenido es "\" o "//", debe reemplazarse con "/")) Cuando recopilando recursos, se basará
inserte la descripción de la imagen aquí
en La descripción anterior configura para leer el documento de texto con el nombre correspondiente en el directorio Assets\Resources\Config\AbEditorConfig, por ejemplo

inserte la descripción de la imagen aquí
Este directorio de configuración debe ignorar el directorio de recursos, y los recursos bajo este no se recopilarán ni empaquetarán.

inserte la descripción de la imagen aquí
Todos los demás recursos de los que dependen los recursos de este directorio se almacenarán en caché cuando se empaqueten para evitar operaciones de empaquetado repetidas.

Primero recopile todos los archivos en el directorio Activos/Escenas, recorra recursivamente todos los subdirectorios y devuelva una lista de todas las rutas de recursos que deben empaquetarse. Después de eso, los recursos se recopilan y luego se almacenan juntos en el administrador de recursos de recopilación, y se realiza una selección durante el proceso de almacenamiento.

inserte la descripción de la imagen aquíYa sea un script, si ignora el tipo de archivo, si es un sombreador, el archivo del sombreador se unifica con un nombre AB y se unifica en un AB completo, lo cual es conveniente para referencias frecuentes.

Luego recopile el AssetBundle que viene con Unity. Después de recopilarlos, inicie la operación de fusión. El primer paso es deduplicar los recursos AB establecidos por Unity, y la segunda parte fusiona todos los recursos dependientes de AB establecidos por Unity y los recursos de los que dependen las rutas de recursos recopiladas previamente.

inserte la descripción de la imagen aquí

Lo anterior es para recopilar todas las rutas de recursos que deben empaquetarse.

2. Exportar recursos AB

inserte la descripción de la imagen aquí
Convierta la ruta del recurso recopilado en AssetBundleBuild, obtenga el valor hash del archivo de recursos y empaquetelo en el directorio AB correspondiente. Está dividido en dos directorios, un directorio archiva el ab que necesita comprimirse y el otro directorio almacena el ab que no necesita comprimirse. Los abdominales que deben comprimirse son principalmente escenas, sombreadores y recursos ab a gran escala que son relativamente comunes.

Luego calcule el md5 de AB y escriba esta información en la estructura del índice del directorio.

La siguiente es la estructura de índice del recurso ab,

Estructura del índice raíz del recurso Ab
{“lista”:[{“ruta”:“assets_resources_config_platforminfo.bytes.ab”,“md5_ex”:“a09fe92520e9e4d1f607384831c13c82”,“tamaño”:1947,“md5”:“16d668acdf6d31531f0fdcbf7538a199”,“crc ": 2476629122}, {
" ruta”:“assets_resources_config_resbin_carnivalsubtaskconfig.bytes.ab”,“md5_ex”:“6aa66d8eab7c3b74f49575e54df42f0b”,“tamaño”:2363,“md5”:“aa8d06da54959fd6a43d23f00bc4d2c4”,“crc” :4005958029}
inserte la descripción de la imagen aquí

3. Exporte todos los archivos DLL utilizados en el proyecto.

Exportar el proyecto nativo de la plataforma de embalaje.

inserte la descripción de la imagen aquí
Copie el código del proyecto fuente al proyecto base en el directorio del subpaquete especial.

Hablemos de copiar la DLL en el proyecto fuente y luego usemos la herramienta http://stahlworks.com/dev/?tool=zipunzip para comprimirla y cifrarla una vez.

4. Comprimir AB

Lea el md5 de ab a través de la estructura del directorio de índice original, use md5 para filtrar los recursos ab que no necesitan comprimirse y use la herramienta 7z.exe para comprimir. Después de la compresión, se reemplazará el nombre ab original.

5. Copie los recursos AB empaquetados al directorio del proyecto de subcontrato.

inserte la descripción de la imagen aquí

Iniciar subcontratación

Utilice la aplicación de formulario desarrollada por C# para seleccionar canales y subcontratar operaciones. El formulario de interfaz de usuario de la herramienta es el siguiente:

inserte la descripción de la imagen aquí
A la izquierda está el canal de selección y a la derecha está la configuración.

inserte la descripción de la imagen aquí
Primero inicialice la ruta, haga clic en Generar para comenzar a subcontratar.

El proceso específico de subcontratación es el siguiente

  1. Primero copie el proyecto principal a un directorio temporal.
  2. Luego lea la configuración de recursos del canal.
  3. Copie los archivos de configuración relevantes del canal al directorio temporal y combínelos si hay archivos cuyo sufijo de nombre de archivo es XML en el proyecto temporal.

inserte la descripción de la imagen aquíOperación de fusión: recorrido recursivo, pase dos nodos principales, primero atraviese los nodos secundarios del xml de origen y busque el nodo con el mismo nombre entre los nodos secundarios del xml de destino.
Cabe señalar que al buscar el mismo nombre, si el nombre es un filtro de intención, se requiere un procesamiento especial y luego buscar el valor del atributo del nodo cuyo nombre es Acción en los subnodos bajo el filtro de intención y cuyo nombre de atributo es "nombre", si el valor del atributo devuelve lo mismo.
Si no se encuentra el mismo nodo, se agrega un nuevo elemento en el xml de destino, lo que equivale a copiar.
Si se encuentra el mismo nodo, compare si falta el atributo.inserte la descripción de la imagen aquí

  • Primero combine la configuración en Común.
  • Si el canal dependiente no está vacío, es necesario fusionarlo nuevamente.
  • Fusione los embudos de destino seleccionados una vez más al final.
  1. Comience a configurar la información de la firma, lea la ruta de la firma y la contraseña configuradas en la herramienta, escríbalas en build.gradle en el proyecto temporal y agréguelas a la etiqueta signingConfigs.
  2. Compruebe si AndroidSdk está configurado y genere propiedades locales.
  3. Ejecute el comando de limpieza de gradle
  4. Ejecute gradle ensamblarRelease para comenzar a empaquetar.
  5. Verifique si la versión apk se muestra normalmente en el proyecto temporal, lea el nombre del paquete configurado en el Manifiesto y cambie el nombre de la apk.
  6. Finalmente, copie el APK al directorio de entrada.

Lo anterior es el registro de todo el proceso de empaque y subcontratación, el cual se utiliza para registro y revisión.

Supongo que te gusta

Origin blog.csdn.net/a525324105/article/details/123105730
Recomendado
Clasificación