2012-02-06 9 views

Odpowiedz

11

chrome.app od tego czasu jest przestarzałe. Jednak jego funkcjonalność została przeniesiona na chrome.runtime, głównie w ramach chrome.runtime.getManifest().

+4

Pamiętaj, że ta odpowiedź dotyczy tylko rozszerzeń ** z Chrome **. Przestrzeń nazw 'chrome.app' nadal istnieje dla [Chrome ** apps **] (https://developer.chrome.com/apps/about_apps.html), np. ['chrome.app.window'] (https://developer.chrome.com/apps/app.window.html) i [' chrome.app.runtime'] (https://developer.chrome.com/apps /app.runtime.html). –

3

Podejrzewam, że powodem, dla którego nie jest udokumentowany, jest prosty nadzór. Interfejs API chrome.app jest zestawiany w inny sposób niż większość innych interfejsów API rozszerzeń (jest ręcznie łączony w pliku renderer/resources/extensions/app.js, a nie jest automatycznie składany z plików JSON, takich jak extension.json). Używamy tych plików JSON do autogeneracji dużej części dokumentacji, więc brakujący plik JSON oznacza brakujące dokumenty.

Czy mógłbyś zgłosić błąd na http://new.crbug.com/? Upewnię się, że trafi przed zespół.

+0

Okazuje się, że jest już w systemie ([problem 111354] (http://code.google.com/p/chromium/issues/detail?id=111354&q=chrome.app%20label%3Adocumentation&colspec=ID% 20Pri% 20Mstone% 20ReleaseBlock% 20Area% 20Feature% 20Status% 20Owner% 20Podsumowanie)) – Brian

+0

Wrzuciłem go do właściwej kolejki i CCd, autora technologii. Nie stanie się to od razu, ponieważ myślę, że wolimy napisać coś, aby zautomatyzować dokumentację, zamiast budować jednorazową, ale będzie to zrobione. Dzięki za raport. –

+3

Zdecydowanie nie od razu, rok po 'chrome.app.getDetails()' pozostaje nieudokumentowane. – cprcrack

0

Obiekt zwracany przez tę api chrome.app.getDetails() jest po prostu formą obiektu manifestu. Można uzyskać dostęp do którejkolwiek z tych zmiennych:

{ 
    // Required 
    "name": "My Extension", 
    "version": "versionString", 
    "manifest_version": 2, 

    // Recommended 
    "description": "A plain text description", 
    "icons": { ... }, 
    "default_locale": "en", 

    // Pick one (or none) 
    "browser_action": {...}, 
    "page_action": {...}, 
    "theme": {...}, 
    "app": {...}, 

    // Add any of these that you need 
    "background": {"persistent": false, ...}, 
    "background": {"persistent": true, ...}, 
    "chrome_url_overrides": {...}, 
    "content_scripts": [...], 
    "content_security_policy": "policyString", 
    "file_browser_handlers": [...], 
    "homepage_url": "http://path/to/homepage", 
    "incognito": "spanning" or "split", 
    "intents": {...} 
    "key": "publicKey", 
    "minimum_chrome_version": "versionString", 

    "nacl_modules": [...], 
    "offline_enabled": true, 
    "omnibox": { "keyword": "aString" }, 
    "options_page": "aFile.html", 
    "permissions": [...], 
    "plugins": [...], 
    "requirements": {...}, 
    "update_url": "http://path/to/updateInfo.xml", 
    "web_accessible_resources": [...], 
    "sandbox": [...] 
} 

po prostu dzwoniąc:

var deets = chrome.app.getDetails(); 
console.log(deets.name); 
console.log(deets.description); 
console.log(deets.version); 
//etc... 
2

natomiast chrome.app.getDetails() funkcja (jak reszta chrome.app) pozostaje nieudokumentowana, istnieje już udokumentowaną alternatywą dla tej funkcji w chrome.runtime.getManifest().

Dokumentacja dla chrome.runtime.getManifest to here.

Powiązane problemy