To jest stara wersja strony!
Aplikacje hybrydowe
Wstęp -- WebView
Sencha Touch
Powtórka
-
Zauważ, że aplikacja nie działa na IceWeasel (Firefox/Thunderbird/Seamonkey/Waterfox/dowolne [żywioł]+[zwierzę]). Wyciągnij wniosek na temat rynku przeglądarek w środowiskach mobilnych.
Otwórz aplikację na różnych urządzeniach/w różnych przeglądarkach bazujących na WebKit; czy dostrzegasz różnice w interfejsie?
Przejrzyj dostępne komponenty i porównaj kod potrzebny do ich implementacji (przycisk 'Source') z natywnym kodem Javy.
Jakie są przewagi kodu Senchy?
Jeżeli jakieś znalazłeś, zastanów się, czemu rynek jest niezmienne zdominowany przez aplikacje natywne.
Przejrzyj alternatywne rozwiązania międzyplatformowe
Xamarin,
RoboVM.
phonegap,
C/
C++². Czy któreś z nich wydaje się być pozbawione wad Senchy?
¹ Kitchen Sink, used in Software development to denote a permanent, ever growing test and demo environment which showcases all the functionalities of a software product en.wikipedia.org
² blame MS
Ćwiczenia
Stworzenie bazowego projektu
Pobrać i zainstalować Seancha Touch 2 i Cmd
Następnie, korzystając z linii komend, wygenerować przykładową aplikację:
sencha -sdk <ścieżka_do_sdk_senchy> generate app <nazwa_aplikacji> <katalog_aplikacji>
-
Uruchomienie aplikacji
Podgląd na desktopie
Uruchom serwer Senchy
sencha fs web -p 8888 start -map <path/to/your/application/folder>
-
Zmodyfkuj zawartość Pliku app/view/Main.js
w elemencie html
tak aby aplikacja wyświetlała 'Hello World
'
Usuń kartę 'Get Started
' i zamiast niej wstaw kartę 'News
Zmień ikonę karty News na info
Uruchomienie w emulatorze
Upewnij się że pluginy
cordova
i
phonegap
sa zainstalowane:
sudo npm install -g cordova
Przygotuj plik konfiguracyjny do budowy natywnej aplikacji
sencha cordova init re.geist.sencha.hello HelloWorld
Obejrzyj plik
app.json
i zmodyfikuj poniższy fragment, tak aby możliwe było zbudowanie natywnej aplikacji na androida:
"builds": {
"web": {"default": true},
"native": {
"packager": "cordova",
"cordova" : {
"config": {
// Uncomment the line below and add the platforms you wish to build for
//"platforms": "ios android",
"id": "re.geist.sencha.hello",
"name": "HelloWorld"
}
}
}
},
Uruchomienie na urządzeniu fizycznym
Rozbudowa projektu bazowego