Crearea unei aplicații simplu de crom

Crearea unei aplicații simplu de crom

pregătire


Pentru a testa aplicația pe care în curs de dezvoltare, trebuie să-l adăugați în browser-ul dumneavoastră. Pentru acest chrome: // extensions pagina trebuie remarcat caseta „modul pentru dezvoltatori» (modul «Developer»). După aceea va fi posibil să adăugați extensia sau aplicația.

manifest.json

Să examinăm domeniu, care sa întâlnit aici. Cu un titlu și o descriere a tuturor clare. Versiunea este un câmp obligatoriu - Magazin web Chrome va fi nevoie să-mi atunci când descărcați actualizarea la cererea dumneavoastră.

Dimensiuni icon Standart. necesară pentru o aplicație - 48 x 48 și 128 x 128 pixeli. De asemenea, în unele cazuri, utilizați o dimensiune pictogramă de 16 × 16. În plus, alte icoane dimensiuni pot fi necesare în cazul în care acesta va fi afișat pe ecrane de înaltă rezoluție, atât pe Chromebook Pixel și noul MacBook Pro.

„Manifest_version“ - versiune a formatului de fișier manifest. În momentul de față, ar trebui să utilizați o valoare de 2.

„Offline_enabled“ - așa cum s-ar putea aștepta, acest indicator este setat pentru aplicațiile care rulează, indiferent dacă accesul la Internet.

Următoarea construcție - fișierul principal:

Aici spune browser-ului cum să executați aplicația. Spre deosebire de extensii care pagina de fundal este un atribut opțional, este întotdeauna acolo în cerere. Logica este după cum urmează: atunci când aplicația este prima pagină încărcată de fundal, codul de pornire. El poate înregistra stivuitoare pentru anumite evenimente, în special, onLaunched evenimente. care apoi începe utilizatorul într-un fel se deschide aplicația.

În „permisiunile“ descrie setările de acces pentru aplicație. În cazul nostru, se adaugă posibilitatea de a salva fișierele.

În cele din urmă, în secțiunea „FILE_HANDLERS“ descrie tipurile de fișiere care sunt deschise de aplicație. Pentru diferite tipuri de fișiere în Manager fișiere Chrome OS poate afișa diferite linii din meniu. De exemplu, unele fișiere din meniul ar putea arata ca „A se vedea superprogram imagine“, dar pentru alții - „Edit textul din superprogram“.

Numirea programului Chrome-aplicație pentru a deschide un anumit tip de fișier este de lucru până în prezent numai în sistemul de operare Chrome.

pagina de fundal


Tot codul care implementează pagina de fundal este situat în js / fișierul background.js. Aici este:

Pagina de fundal este în fundal, indiferent de fereastra aplicației. nu este încărcat în memoria cele mai multe ori. Când executați codul este executat, iar sistemul poate seta handlerele anumitor evenimente, dintre care cele mai frecvente - onLaunched. În cazul în care manipulatorii sunt stabilite, pagina de fundal, de obicei, descărcate din memorie și rulează înapoi numai atunci când unul dintre evenimentele pe care este semnat.

Metoda chrome.app.window.create creează o fereastră nouă aplicație. Primul parametru - calea se deschide în HTML-fișier (relativ la directorul aplicației). fereastra de opțiuni - a doua. Ma concentrez pe unul dintre ei. cadru: „crom“ creează o fereastră cu un sistem de operare convențional pentru design-ul actual. O altă opțiune aici - cadru: „nici unul“. În acest caz, aplicația se execută într-o cutie „goale“, iar dezvoltatorul va trebui să aibă grijă de a adăuga butoane pentru a închide, coagulare și implementare ferestre, precum și zone pentru care o fereastră poate fi trasă în jurul ecranului.

index.html


HTML și CSS fișierele care alcătuiesc aplicațiile Chrome, nu este nimic specific. Singura caracteristică care poate fi remarcat - este lipsa de nevoie să vă faceți griji cu privire la somestimosti cross-browser.

Pentru a finaliza CSS imagine da:

Codul principal: Lucrul cu fișiere

Deci, vom înțelege codul în js / main.js. Voi aduce fragmentează codul complet - pe Githabe.

Funcții de inițializare de sarcină - adăugați stivuitoare la butoanele și ieși din fișierul pagina de fundal pentru a deschide. Context Pagina de fundal este derivat din fereastra principală folosind chrome.runtime.getBackgroundPage asincronă.

Handlers intrarile de la tastatura:

Current FileEntry ne păstra într-o currentEntry variabilă la nivel mondial.

Singura caracteristică specifică în codul de mai sus - o metodă chrome.fileSystem.chooseEntry. Cu această metodă se deschide fereastra de selectare a fișierului (de pe fiecare sistem). La fel ca toate celelalte funcții pentru lucrul cu sistemul de fișiere, această metodă este asincron și devine un apel invers pentru a continua (în acest caz, funcțiile și loadEntry saveToEntry, descrise mai jos).

În funcția SetTitle () vom schimba titlul ferestrei pentru a arăta calea către fișierul curent. Cum se va afișa acest antet, în funcție de sistem. Sistemul de operare Chrome, el nu a apărut. chrome.fileSystem.getDisplayPath - modul cel mai corect pentru a obține calea unui fișier care este potrivit pentru ao afișa la utilizator. O altă vedere drum prin entry.fullPath disponibile.

În API-ul de fișiere are două obiecte diferite care descriu fișierul: FileEntry și fișiere. Aproximativ vorbind, FileEntry reprezintă calea către fișierul, și fișierul - datele conținute în ea. Prin urmare, pentru a citi fișierul, aveți nevoie pentru a obține obiectul de fișiere de intrare. Acest lucru se realizează prin metoda entry.file asincron ().

FileReader - facilități separate concepute pentru citirea fișierelor. Aceasta permite o flexibilitate suficientă pentru a gestiona procesul de citire, dar noi de la el, în acest caz, trebuie doar să citiți întregul conținut al fișierului.

fișier de înregistrare, cum ar fi cititul, conține un cod specific pentru Chrome:

Înainte de a scrie date ar trebui să conducă la o minte Blob. Un pas suplimentar care este necesară înregistrarea - un fișier de tăiere în cazul în care există deja și are o lungime mai mare. Dacă ar fi absolut siguri că acesta este un nou fișier, scrie codul ar fi simplificat la:

concluzie