Рішення для розповсюдження HTML5-програм як настільних програм? [зачинено]


141

Які рішення для розповсюдження настільних програм на основі HTML5?

Я хочу мати можливість поширювати свій додаток HTML5 як окремий додаток для настільних ПК на Windows, OSX та Linux. Я хотів би, щоб люди могли двічі клацнути ярлик мого додатка, щоб запустити програму.

Я не хочу, щоб вікно браузера відображалося взагалі, лише моя програма. Чи можливо це?



2
Chrome у Windows має в меню гайкового ключа опцію "зробити ярлик програми". Це створить посилання на робочому столі, яке відкриє стандартне вікно без адресного рядка.
6502

3
Чи є у вас якісь інші вимоги, наприклад, доступ до локальних файлів чи інших речей, які, як правило, не можливі в браузері?
Тімен

76
Чи може хтось пояснити мені, чому це питання позначене як не конструктивне ? Він запитує, чи є платформа, відповідь об’єктивна: так . І може бути "реалізований" з деякими можливостями, так чому саме позначено таким чином, насправді.
Франческо Беладонна

10
Це питання є актуальним і актуальним - як показано у цій останній статті: clintberry.com/2013/html5-apps-desktop-2013 .
Запитаний Аронсон

Відповіді:


75

Програми HTML5 у 2014 році

Рамки за допомогою chrome / webkit

  • Електрон (колишній атомний корпус)

    Electron - бібліотека з відкритим кодом, розроблена GitHub для побудови міжплатформних настільних додатків з HTML, CSS та JavaScript. Electron досягає цього, поєднуючи Chromium та Node.js в єдиний час виконання, а додатки можуть бути упаковані для Mac, Windows та Linux. ( джерело )

    Люди в Github використовують це для редагування коду Atom як додаток. Він має задокументовані api та довідковий канал на офіційних форумах атомів.

  • Node-Webkit , самий мінімальний підхід

    node-webkit - це програма для роботи на основі Chromium та node.js. Ви можете писати рідні програми в HTML та JavaScript за допомогою node-webkit. Він також дозволяє викликати модулі Node.js безпосередньо з DOM та дозволяє новий спосіб запису нативних програм із усіма веб-технологіями.

    Intel стоїть за цим (?). Мені сказали, що по краях дуже грубо.

  • Brackets Shell , пісочниця редактора коду Adobes (та база Adobe Edge)

    Примітка: оболонка дужок підтримується лише для використання проектом Brackets. Хоча деякі люди напевно мали успіх, використовуючи його в якості оболонки додатків для інших проектів, ми не надаємо жодної офіційної підтримки для цього, і ми не виконали багато робіт, щоб зробити оболонку додатка багаторазовою. Багатьом людям, швидше за все, буде легше використовувати такий проект, як node-webkit, який є більш загальним за дизайном.

    говорить readme, але там дуже багато людей, які це зробили.

Рамки + Інструменти

  • Adobe AIR , як запропоновано інша відповідь.

    Термін виконання Adobe® AIR® дозволяє розробникам упакувати той самий код у рідні програми для настільних ПК Windows і Mac OS, а також iPhone, iPad, Kindle Fire, Nook Tablet та інші пристрої Android ™, охоплюючи магазини мобільних додатків на понад 500 мільйонів пристрої.

  • Sencha - компанія, яка продає інструменти для розробників додатків, включаючи розробку та розповсюдження програм html5.

Неактивні підходи

  • SDK Tide ( архівовано 2015-07-12 на archive.org ), бета-версія, припинена 12 липня 2015 року

    http://www.tidesdk.org/

  • XULRunner від Mozilla може зробити для вас трюк, але додасть накладні витрати.

  • app.js закінчився 28 жовтня 2013 року за те, що його перевершили ( https://github.com/rogerwang/node-webkit) evidencenode-webkit ] .

    Тому що він простий і в той же час потужний. Використовуючи AppJS, вам не потрібно турбуватися про кодування міжплатформних плат або вивчення нових мов та інструментів. Ви вже знайомі з HTML, CSS та JavaScript. Що краще, ніж цей стек для розробки додатків? Крім того, AppJS використовує Chromium в основі, так що ви отримуєте найсвіжіші API 5 API. Отже, зосередьтеся на тому, яке завдання має виконати ваша програма.

  • Призма Мозілла розкладається, їх шлейф був:

    Приведення веб-додатків до
    робочої призми - це програма, яка дозволяє користувачам розділяти веб-додатки зі свого браузера та запускати їх безпосередньо на робочому столі.


7
Призма Мозілла зараз неактивна
Harshith JV

8
Лише очолює Adobe Air. Якщо ви плануєте використовувати будь-яке рішення шаблону javascript (наприклад, рулі, вуса), більшість з них не працює через помилки безпеки, пов'язані з новою функцією () дзвінків javascript.
Джеймс Паркер

дякую за дуже корисну підказку! на жаль, у мене ще не було можливості перевірити будь-який із перелічених вище прикладів. Я просто збирав їх за допомогою досліджень.
Самуель Герцог

Ви можете змусити ваш додаток не перевищувати розміри пісочниці безпеки. У мене були проблеми з системою шаблонів KendoUI і мені вдалося її подолати. Будь-який шлях я перейшов з Air на Titanium Desktop, але в даний час шукаю альтернативи, оскільки реалізація TD в веб-програмі Windows має серйозні проблеми з елементами форми (входи / спадні місця) ).
Васко Коста

Ви можете розглянути можливість Sentenza Desktop для упаковки веб-програми HTML5 / CSS3 / JS у програму Mac OS X (.app). Також доступна бібліотека API. Для цього не потрібні будь-які рамки (наприклад, Adobe Air або TideSDK). Підтримується розгортання магазину додатків Mac.
Beny

15

Ви можете використовувати AppJS, який використовує Nodejs та Chromium для створення html5-додатків для робочого столу. перевірити це: http://appjs.com Посилання Github: https://github.com/appjs/appjs


1
Подібним є node-webkit, він має деякі приємні функції, такі як компіляція вашого javascript за допомогою знімка v8. посилання
pillar15

Повідомлення про припинення роботи Проект AppJS не активно розроблявся протягом декількох років. Будь ласка, перевірте натомість NW.js або Electron.
Аарон Франке

10

Ви можете поглянути на XULRunner від Mozilla. На рівні 10000 футів браузер FireFox - це програма XULRunner (очевидно, дуже складна, але ...). Але XULRunner дозволяє використовувати Javascript та XML для створення додатків, а вікно браузера є одним із таких компонентів, тож як тільки ви отримаєте основне вікно, ви, швидше за все, зможете зробити все, що завгодно.

Крім того, залежно від складності вашої програми, є декілька "віджетів" фреймворків (як Dashboard на Mac, Yahoo Widgets, Windows Gadgets), які, в основному, також виконують HTML.


2
Я настійно рекомендую подивитися на XULRunner. Для того, що ви описуєте, це ідеально і добре зафіксовано. Chrome також би працював так само добре, я думаю, але я не вивчав цього.
Джаред Фарріш

XUL runner - це приголомшлива рамка та дуже гнучка, але не добре документально підтверджена. Новачку доведеться страждати багато, щоб розпочати щось.
esafwan

10

Однозначно перевіряйте Titanium . Щойно сьогодні я взяв функціональний додаток HTML5 і за допомогою декількох незначних модифікацій зміг кинути його в Titanium і упакувати його для Mac, Windows та Linux.

А також він підтримує PHP, Python та Ruby, якщо ваша програма потребує обробки на стороні сервера.


Якщо ви хочете розфасовані рішення, я думаю, що це відповідь.
диланізований

15
Мій досвід роботи з титанієм був жахливим - зовні він чудово виглядає, але набивається клопами і дуже швидко його використовують. Я не можу рекомендувати це.
Даміян

3
Я також подумав, що це буде хорошим вибором, але: 1) я не міг змусити його запустити простий "створити-новий-проект / запустити" в Linux (Ubuntu 11.10) 2) Titanium Desktop перетворюється на проект, керований співтовариством ( це означає, якщо хтось не візьме їхній код, він помре)
Луїс Лобо Боробія

4
Я знаю, що це по-старому, але я просто прочитав цю відповідь і витратив деякий час, поки не зрозумів, що Titanium Desktop мертвий. Отже, вже не варіант. До речі, я думаю про те, щоб створити щось із вбудованою c # та хромом, як це робив github у своєму інструменті для windows
NicoGranelli

6
Titanium Desktop став TideSDK tidesdk.org
мирний місяць

5

хром може робити те, що робить призма Див. - Інструменти-> Створення ярлика програми


Не знав, що ... +1
arg20

На жаль, ярлики програм недоступні на Mac.
Шейн Холлоуей


3

Adobe AIR призначений для роботи в основному в HTML, CSS та JavaScript, надаючи додатки для настільних ПК. (Caveat: Я фактично не використовував його сам.)


1
інтегрований браузер в AIR старий і ніколи не буде оновлюватися, тому я не рекомендую його (я використовував його в інших проектах)
simion314,

@ simion314: Мені цікаво, оскільки AIR - це постійний проект, чому ви кажете, що браузер у ньому "ніколи" не буде оновлений.
TJ Crowder

см forums.adobe.com/message/6177332 Adobe працює більше для мобільного частини AIR, а також на мобільних пристроях вони використовують StageWebView і вони не будуть оновлювати двигун WebKit в повітрі, StageWebView обмежуються тільки відображенням речей, якщо ви спробуйте завантажити складну бібліотеку javascript або додаток, як ckeditor 4, це не вдасться через деякі несумісності з двигуном webkit (деякі пов'язані з пісочницею, але не всі)
simion314

3

[Тільки для Windows] спробуйте підхід HTML Application (HTA) - просто збережіть .html файл із розширенням .hta. Він також пропонує деякі додаткові налаштування, щоб позбутися вікна браузера, встановити рівень довіри до програми тощо. Детальніше читайте тут: http://en.wikipedia.org/wiki/HTML_Application і тут http://technet.microsoft. com / en-ca / scriptcenter / dd742317.aspx


2

Гммм ... віртуальна машина для HTML5 / CSS / JS ... звучить як браузер. :)

Можливо, Adobe AIR зробив би свою справу, адже це засновано на ідеї залучення багатих інтернет-додатків на робочий стіл. Однак я ніколи не користувався ним.

Одне, що ви можете зробити, - це розробити дуже базовий додаток для настільних ПК, який використовує якесь попередньо встановлене керування веб-браузером (наприклад, якщо ви розробляєте для Mac, просто опустіть WebView у вікно та додайте базовий код, щоб завантажити свій HTML у додаток стартап).



1

Для мобільних телефонів ви можете використовувати PhoneGap http://www.phonegap.com/ . Можливо, за допомогою іншого кодування ви можете використовувати його для робочого столу.



1

На даний момент відповідь полягає в тому, що різні рішення кожної платформи.

  • Для MAC OSX Ви створите додаток Cocoa Desktop з UIWebView
  • Для Windows ви зробите .NET настільний додаток із компонентом браузера.

Я думаю, ніж використання Windows з компонентом браузера має кілька обмежень (можна отримати доступ до файлової системи чи показати спливаюче вікно?), Чи знаєте ви якийсь проект, ніж використовувати цей підхід? ...
clagccs

Найкраща відповідь, і ніхто її не визнає. Ззаду в основному всі гібридні рішення використовують компонент веб-перегляду, який веде себе так само, як браузер. Це все, що вам потрібно, підберіть веб-перегляд, завантажте html / css / js та voila!
Dan Ochiana

1

Ви можете використовувати вбудований сервер типу Tomcat або, можливо, Apache.

Я використовую tomcat для повної веб-програми Java. Запустити всередині браузера, але додаток потрібно встановити. Ярлик для запуску програми, запуску служби та відкриття браузера.

Або спробуйте скористатися webkit


1

Трохи пізно, але ви можете використовувати портативну версію Google Chrome, а потім створити невеликий додаток Windows, щоб встановити його, і створити ярлик .ink до його - кіоску та режиму додатків.
Ніби не люблять ярлики додатків з хромом, але там, де ви встановите хром для них.


1

Якщо вам це просто потрібно для Windows, слід розглянути HTML-програми (HTA), він є частиною Internet Explorer з IE 5 (10+ років).

Не потрібен сервер, повне форматування HTML, повний доступ до локальних ресурсів (навіть COM / USB портів), приголомшливо. Крім того, легко налагодити програму Visual Studio, просто прив’яжіться до MSHTA.exe

Ви можете ввімкнути HTML 5 в HTA, використовуючи наступний метатег:

<!-- enable html5 features --> 
<meta http-equiv="X-UA-Compatible" content="IE=edge"></meta>

+1 Шукайте також підтримку Linux та Mac :)
Bhargav Nanekalva
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.