6

Ok, myślałem o stworzeniu aplikacji internetowej wykorzystującej framework gry jako moją usługę back-end i sencha dla moich rzeczy z przodu.Aplikacja internetowa korzystająca z Play framework i sencha

Teraz zajmuję się również dotykiem i phonegapem sencha, które mogą mi pomóc w stworzeniu natywnej aplikacji na Androida. Problem polega na tym, w jaki sposób renderuję dane na dwa różne urządzenia. Jednym z nich jest urządzenie dotykowe, a inne otwierają się w odpowiedniej przeglądarce na komputerze.

Czy powinienem wykryć, z jakiego urządzenia wysłano żądanie, a następnie załadować odpowiedni kontroler lub co? Jestem teraz bardzo zdezorientowany! Jestem nowicjuszem w dziedzinie aplikacji internetowych i aplikacji mobilnych, więc jeśli ktoś może mi wytłumaczyć, jak postępować, będzie to świetna pomoc! Dziękuję Ci.

Odpowiedz

4

Używam również Sencha, nie dotykać, ale Ext Js. Oto, co zrobiłem:

Graj! Serwer zawiera mój logiki i zapewnia mi spokojny URL:

POST /user/create   AccountController.createUser 
GET /user/userid   AccountController.getUser 

Z Sencha I zdefiniowano Store pobierającą JSON danych z określonego adresu URL, że punkt URL do mojego grać! adresy URL.

W mojej metody w grze odzyskać model z mojej bazy danych i po prostu powrócić JSON że Sencha będzie analizować/czytać jak:

Query userQry = JPA.em().createQuery("select * from Account"); 
List<Article> accounts= userQry .getResultList(); 
renderJSON(accounts); 

Cheers

+0

Witam, Ok, dobrze i dobrze. Ale co jeśli mam też jedną aplikację mobilną. Czy mogę wykonać te same wywołania funkcji z tej aplikacji? Uczyniłem stron internetowych za pomocą php i codeigniter iw tym, zwyczajnie załadowałem widok za pomocą, $ this-> load-> view ('view') po przetworzeniu. Jak zaprojektować tego rodzaju rzeczy do aplikacji internetowej. lub zamiast przesuwać dane do wyświetlenia, wyciągam je z widoku? – aradhya

+1

Nie powinieneś używać widoków z gry, ponieważ EXT JS jest twoją strukturą klienta. Gra jest tam, by podawać dane, używałbym tego samego adresu URL dla Ext Js i Touch, ale oczywiście Sencha Touch wygeneruje różne widoki z tym samym zestawem danych (jak w przypadku Ext Js). W większości przypadków powinno to być JSON. Dlatego powinieneś utworzyć ogólny index.html, który wykrywa urządzenie i na podstawie urządzenia ładowane są odpowiednie klasy .js. Ale serwer (Play!) Będzie taki sam. – adis

+0

Dobrze. Bardzo dziękuję za pomoc. – aradhya

0

Sencha dotykowa nie nadaje się do użytku stacjonarnego. Powinieneś zbudować inną aplikację na komputery stacjonarne za pomocą Ext.JS. Ale jeśli nadal chcesz korzystać z Sencha Touch, tutaj znajdziesz wskazówki dotyczące różnych widoków dla różnych urządzeń. http://docs.sencha.com/touch/2-0/#!/guide/profiles

+0

Tak, wiem o tym. Moje pytanie brzmi, czy jestem catering dla 2 aplikacji, to w jaki sposób powinna być moja logika po stronie serwera? Kiedy moja aplikacja ładuje, powinienem zwrócić dane po prostu do formatu Json i niech front-end rzeczy zrobić reprezentację - w tym przypadku ExtJs dla desktop i sencha touch dla urządzeń mobilnych? jeśli tak, to każdy może wywołać to połączenie internetowe i uzyskać poprawne dane? Czy możesz wskazać mi, jak postępować? – aradhya

Powiązane problemy