Hola, como dice en el titulo, necesito el formato completo del archivo "manifest.json" de extensiones para navegador google chrome.
Por ejemplo, tengo el ejmplo de Google aqui (https://developer.chrome.com/docs/extensions/mv3/manifest/) que es :
{
// Required
"manifest_version": 3,
"name": "My Extension",
"version": "versionString",
// Recommended
"action": {...},
"default_locale": "en",
"description": "A plain text description",
"icons": {...},
// Optional
"action": ...,
"author": ...,
"automation": ...,
"background": {
// Required
"service_worker":
},
"chrome_settings_overrides": {...},
"chrome_url_overrides": {...},
"commands": {...},
"content_capabilities": ...,
"content_scripts": [{...}],
"content_security_policy": "policyString",
"converted_from_user_script": ...,
"current_locale": ...,
"declarative_net_request": ...,
"devtools_page": "devtools.html",
"differential_fingerprint": ...,
"event_rules": [{...}],
"externally_connectable": {
"matches": ["*://*.example.com/*"]
},
"file_browser_handlers": [...],
"file_system_provider_capabilities": {
"configurable": true,
"multiple_mounts": true,
"source": "network"
},
"homepage_url": "http://path/to/homepage",
"host_permissions": [...],
"import": [{"id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}],
"incognito": "spanning, split, or not_allowed",
"input_components": ...,
"key": "publicKey",
"minimum_chrome_version": "versionString",
"nacl_modules": [...],
"natively_connectable": ...,
"oauth2": ...,
"offline_enabled": true,
"omnibox": {
"keyword": "aString"
},
"optional_permissions": ["tabs"],
"options_page": "options.html",
"options_ui": {
"chrome_style": true,
"page": "options.html"
},
"permissions": ["tabs"],
"platforms": ...,
"replacement_web_app": ...,
"requirements": {...},
"sandbox": [...],
"short_name": "Short Name",
"storage": {
"managed_schema": "schema.json"
},
"system_indicator": ...,
"tts_engine": {...},
"update_url": "http://path/to/updateInfo.xml",
"version_name": "aString",
"web_accessible_resources": [...]
}
Hay todo bien, pero cuando voy a una extension de las que tengo instaladas en mi navegador, y reviso el archivo "manifest.json" de dicha extension, me doy cuenta que hay campos que nos salen en el ejemplo de google.
Por ejemplo :
{
"background": {
"persistent": false,
"scripts": [ "common.js", "mirroring_common.js", "background_script.js" ]
},
"content_security_policy": "default-src 'self'; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; script-src 'self' https://apis.google.com https://feedback.googleusercontent.com https://www.google.com https://www.gstatic.com; child-src https://accounts.google.com https://content.googleapis.com https://www.google.com; connect-src 'self' http://*:* https://*:*; font-src https://fonts.gstatic.com;",
"default_locale": "en",
"description": "Provider for discovery and services for mirroring of Chrome Media Router",
"differential_fingerprint": "1.3bba8f43f392ecbc35b582986edcbf7c6591081b63f3f0214f8eed1d239b0f60",
"externally_connectable": {
"ids": [ "idmofbkcelhplfjnmmdolenpigiiiecc", "ggedfkijiiammpnbdadhllnehapomdge", "njjegkblellcjnakomndbaloifhcoccg" ]
},
"key": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDNTWJoPZ9bT32yKxuuVa9LSEYobjPoXCLX3dgsZ9djDrWKNikTECjdRe3/AFXb+v8jkmmtYQPnOgSYn06J/QodDlCIG6l470+gkOoobUM7fOs1AVOse23qYUV4jbuRW3+YZlCvaWCFeczCNbGIUgKEi5B2fyQazy60AL1sLW3utQIDAQAB",
"manifest_version": 2,
"minimum_chrome_version": "37",
"name": "Chrome Media Router",
"oauth2": {
"client_id": "919648714761-55j965o0km033psv3i9qls5mo3qtdrb0.apps.googleusercontent.com",
"scopes": [ "https://www.googleapis.com/auth/calendar.readonly", "https://www.googleapis.com/auth/hangouts", "https://www.googleapis.com/auth/hangouts.readonly", "https://www.googleapis.com/auth/meetings", "https://www.googleapis.com/auth/userinfo.email" ]
},
"permissions": [ "alarms", "cast", "declarativeWebRequest", "desktopCapture", "gcm", "http://*/*", "identity", "identity.email", "management", "mdns", "mediaRouterPrivate", "metricsPrivate", "networkingPrivate", "processes", "storage", "system.cpu", "settingsPrivate", "tabCapture", "tabs", "https://hangouts.google.com/*", "https://*.google.com/cast/chromecast/home/gsse" ],
"update_url": "https://clients2.google.com/service/update2/crx",
"version": "9121.329.0.0",
"web_accessible_resources": [ "cast_sender.js" ]
}
Como ves, es ese ejemplo , estan campos que en el ejemplo de google no hay, los cuales son : "persistent" y "scripts" , entro otros campos.
En pocas palabras , necesito un "manifest.json" Completo , con todos los campos y que hallan.
https://datatracker.ietf.org/doc/html/rfc8259
...y ya con la documentación del formato del manifest y la especificación de json, podrás satisfacer tu interés
Hola, gracias por responder, básicamente necesito todos los campos de puede llevar el archivo "manifest.json" en las extensiones de google chrome, para posteriormente deserializar .
No encontré nada referente a eso, en la pagina que suministraste. pero de todos modos gracias.