14

Poszukuję alternatywnych rozwiązań Titanium Appcelerator do programowania aplikacji desktopowych za pomocą HTML i JavaScript. Chcę przekonwertować aplikację internetową na aplikację komputerową. W związku z tym będzie dużo interakcji z serwerem. Appcelerator był dobrym wyborem, ale wygląda na to, że firma nie jest już zainteresowana pakietem SDK. Również żądanie ajax od Appceleratora nie zachowuje plików cookie.Tworzenie aplikacji na komputery z Javascriptem i HTMLem

Czytałem, że Adobe Air może być używany do programowania aplikacji desktopowych, ale nie chcę używać lampy błyskowej.

Jak dobrze działa XULRunner? Czy pozwoli na takie funkcje, jak powiadamianie Growl i tworzenie ikon w zasobniku?

Czy będę w stanie tworzyć aplikacje wykorzystujące głównie Javascript i HTML w Qt?

+0

możliwe duplikat [Framework for (HTML + JS) pulpitu Client] (http://stackoverflow.com/questions/1252498/framework-for-html- js-desktop-client) –

Odpowiedz

9

Zacząłem zaglądać do tytanu dla twórców komputerów. Spodobała mi się koncepcja, ale nie implementacja. Potem natknąłem się na chromowany rdzeń i byłem z niego bardzo zadowolony. Jest to w zasadzie kontrolka przeglądarki internetowej oparta na chromie. http://code.google.com/p/chromiumembedded/

Jest napisany w języku C++, dzięki czemu można zrobić wszystko, niski poziom OS rzeczy chcesz (Growl, ikony zasobnika, dostęp lokalny plik, porty COM, etc) w aplikacji kontenera, a następnie cała logika aplikacji i gui w html/javascript. Pozwala przechwycić dowolne żądanie HTTP w celu obsługi lokalnych zasobów lub wykonania niestandardowej akcji. Na przykład żądanie do http://localapp.com/SetTrayIconState?state=active może zostać przechwycone przez kontener, a następnie wywołać funkcję C++, aby zaktualizować ikonę tacy.

Umożliwia także tworzenie funkcji, które można wywoływać bezpośrednio z javascript.

Moim największym wyzwaniem było debugowanie. Bardzo trudno jest debugować javascript bezpośrednio w CEF. Nie mam wsparcia dla niczego takiego jak Firebug, o którym jestem świadomy.

+1

Jak korzysta się z pamięci chromowej? – Jimmy

1

Można również sprawdzić linię Bowline, która jest inną alternatywą: http://bowlineapp.com/.

+0

Szukałem platformy opartej na JS. Wygląda na to, że Bowline potrzebuje Ruby. –

2

Appjs (appjs.org) wygląda bardzo obiecująco.

+0

Wygląda na to, że ten projekt mógł wygasnąć? Witryna appjs.org już nie istnieje i chociaż nadal jest [na GitHubie] (https://github.com/appjs/appjs) wygląda na to, że rozwój został zatrzymany około 5 miesięcy temu ... – peterflynn

1

Chociaż oficjalnie nie jest przeznaczony do użytku ogólnego, wiele osób odniosło sukces, korzystając z brackets-shell dla aplikacji komputerowych HTML/JS. Osadza Chromium (CEF) i dodaje API do zarządzania pasku menu i pliku IO. Zawiera również instancję Node.js, dzięki czemu uzyskujesz dostęp do wszystkich jej interfejsów API w celu uruchamiania procesów itp. Jest to licencja MIT i jest dostępna dla komputerów Mac: & Win, z wersją Linuksa, która obecnie dokonuje szybkiego postępu.

Jak już wspomniałem, nie jest to oficjalna powłoka aplikacji ogólnego przeznaczenia, ale ktoś napisał detailed blog post o tym, jak dostosować nawiasy-powłoki do własnych zastosowań.

Zauważyłem, że druga odpowiedź na temat Titanum mówi, że CEF jest trudny do debugowania. Nie jestem pewien, czy to prawda w Titanium, ale w nawiasie-powłoki łatwo jest debugować JS – po prostu otworzyć http://localhost:9234/, aby załadować pełną instancję Narzędzi dla programistów Chrome (w tym punkty przerwania, profilowanie itp.).

+0

Zajrzałem do blogu i na koniec wybrał podobny węzeł sieci Web: https://github.com/rogerwang/node-webkit. Jego dema wygląda obiecująco: https://github.com/zcbenz/nw-sample-apps –

Powiązane problemy