Mylić o synchronizacji wielu tabel z adaptera synchronizacji i dostawcy treści
Jestem zdezorientowany, który sposób jest najlepszy, aby wiele tabel zostało zsynchronizowanych w mojej aplikacji.
Mam jednego dostawcę treści i zamierzam mieć wiele tabel (zdarzenia, użytkownicy itp.). Mam też rest-serwer, z którym aplikacja ma się komunikować. Zastanawiam się, jaka jest najlepsza praktyka obsługi wielu połączeń (put, get, post i delete) dla każdej z tabel. Mają również relacje, jak jeden użytkownik może uczestniczyć w wydarzeniu, ale także być właścicielem wydarzenie. Jeśli więc utworzyłem użytkownika i Zdarzenie należące do tego użytkownika, mogę albo przesłać użytkownika, odzyskać informacje o użytkowniku z serwera, przesłać zdarzenie z informacjami o użytkowniku, odzyskać te informacje, a następnie zaktualizować użytkownika o nowe informacje o zdarzeniu.
Jaki jest najlepszy sposób na rozwiązanie tych problemów? Czy powinienem stworzyć metodę (http://example.com/sync) który agreguje wszystkie dane, które powinny być zsynchronizowane? A może powinienem trzymać się, czasem ~15-20 prośby?
3 answers
Polecam obejrzeć Google I/O 2010-aplikacje klienckie Androida wideo. Jest to fantastyczne wprowadzenie do niektórych koncepcji i zalecanych wzorców do pisania aplikacji synchronizujących projektowanie.
Osobiście znalazłem odpowiedzi na większość moich pytań.
Zobacz też tę prezentację . Wraz z prezentacją i próbką adaptera synchronizacji dostarczoną wraz z zestawem SDK, poniższa lista powinna zapewnić wystarczającą ilość amunicji, aby uzyskać synchronizację adapter działa dość szybko.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-04 21:45:27
Evernote rozwiązał podobny problem z własnym protokołem EDAM. Warto się temu przyjrzeć.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-06 03:50:17
Wszystko zależy od ilości danych, które chcesz zsynchronizować.
Jeśli to tylko dane tekstowe, a nie dużo, należy zsynchronizować je wszystkie na raz. Polecam zakodowanie go do json, zapięcie i wysłanie na serwer (gdzie można rozpakować, parsować i zapisać). Json jest lekki i łatwy do komponowania na androi, a także do analizowania na prawie każdym rodzaju serwera.
Jeśli chcesz synchronizować obrazy, lepiej synchronizuj je pojedynczo, aby mieć pewność, że masz częściowy postęp zapisywane w przypadku przerwania połączenia.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-04 10:21:03