¿Alguien sabe cómo actualiza el file blockerList.json para el bloqueador de contenido de safari?

Apple nos ha proporcionado una API para actualizar el json utilizado para los bloqueadores de contenido de Safari (SFContentBlockerManager.reloadContentBlockerWithIdentifier), por lo que está claro que Apple tiene la intención de que podamos personalizar los elementos bloqueados.

He estado jugando con esto por bastante time y no puedo entender cómo harías esto.

He probado diferentes files json para cargar en la extensión (uno para anuncios, uno para sitios, etc.) pero el envío de más de un file siempre parece romper la extensión para mí.

También he intentado editar el file blockerList.json desde dentro de la aplicación, pero eso también parece romper la extensión. También me han dicho que no podemos editar un recurso incluido con nuestra aplicación.

La documentation para modificar qué contenido está bloqueado parece no existir. ¿Alguien tiene un ejemplo o al less un enlace a alguna documentation que podría usar?

Gracias

He hecho esta personalización la semana pasada. en lugar de pasar varios json a la extensión, debe leer todas las reglas (anuncios, sitios, etc.) de los files json del package principal de la aplicación en una matriz y luego escribir esta matriz de reglas en un nuevo file json y save este json en el contenedor del grupo APP ruta como

[[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:YOUR_APP_GROUP_IDENTIFIER] URLByAppendingPathComponent:@"ShanetworkingJsonFile.json"] 

y en el método beginRequestWithExtensionContext de la extensión, cargue json de la ruta como

 NSURL *jsonPath = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:YOUR_APP_GROUP_IDENTIFIER] URLByAppendingPathComponent:@"ShanetworkingJsonFile.json"]; 

Por lo tanto, si desea aplicar solo reglas de anuncios y escaping de las reglas de los sitios, debe actualizar el file ShanetworkingJsonFile.json para que contenga solamente una serie de reglas de anuncios y, a continuación, vuelva a cargar el bloqueador de contenido utilizando (SFContentBlockerManager.reloadContentBlockerWithIdentifier).