Mam wrażenie że ja o gruszkach a Ty o jabłkach
Ale to moja wina, bo wykład jest o grafice. A akurat grafika jest na androidzie akurat najmniejszm problemem. Nie zauważyłem, aby mi coś zamulało przez grafikę. Nawet na relatywnie słabym GPU SGX531 wszystko może działać płynnie. Poza najbardziej wymagającymi grami.
Wiem jak działa Android i niestety jest bardzo wymagający. Oczywiście tak jak mówisz jest to prawdopodobnie wina Dalvika. Mam wrażenie, że przyjęto założenia "pozwólny użytkownikom mająchych 512MB RAM odpalić 1GB aplikacji jednocześnie". Oczywiście poprzez oszustwo - zabijanie czego się da (najlepiej to czego nie widać). Wyjdziesz z aplikacji na chwile - i już nie wrócisz bez laga, bo zostanie zabita. Taki pseudo multitasking na tanich urządzeniach.
Samo to nie jest takie głupie, szkoda jedynie że byle co zajmuje na Androidzie ogromne ilości pamieci, bo JAVA zawsze była i jest pamieciożerna.
Na urządzeniach z 512MB RAM przy stacie sytemu uruchamiane jest tyle, że cały RAM jest w zasadzie zapchany. Albo i więcej (to czego nie widać od razu się zabija).
Więc jak to może dobrze działać? Dlatego moim zdaniem bez 1GB RAM i modyfikacji "Maximum Overdrive" nie ma mowy aby ten system chodził tak jak trzeba, chyba że ktoś go celowo wykastruje na maxa i wszystko powyłącza.
Głupie jest też, że przyjęto na stałe pewne wartości zależne od sprzętu (np limit aplikacji w tle), nie dając użytkownikowi wyboru, ani nie różnicując tego względem dostępnej pamięci (ostatnio na szczęście zrobili to w CyanogenModzie - więc jakby to powiedzieć "niestety miałem rację"?). Ciekawe kiedy Google się obudzi i zrobi to jak trzeba w upstream. Bo kiedyś wyczytałem wypowiedz jakiegoś developera z Google, że limit 15 aplikacji wymyślili "ot tak sobie, aby na urządzeniach z dużą ilością ramu za dużo na raz nie chodziło".
Może i fajny pomysł, ale jak się na tak mocnych procesorach nie umie zrobić, aby tak mało wymagające programy działały równolegle to coś jest nie tak. To tak jakby mi Linux wyłaczał co chwila Pidgina bo uruchomiłem Firefoxa. Śmiech na sali. Serio. Nawet w Windows Mobile czegoś takiego nie było.
Nie kupuje tłumaczeń, że Android wymaga dużo pamięci i trzeba bardzo uważać, bo ma jakieś wielkie możliwości itd. To jakieś bzdety, nie zauważyłem aby potrafił np posprzątać mój pokój.
W kwestii uprawnień to na przykładzie Swype sam właśnie pięknie pokazałeś, że uprawnienia na Androidzie są do kitu. A przy okazji zapomniałeś zgadnąć, po co mu GPS.
Owszem inne systemy mają to rozwiązane gorzej albo wcale. Wiele się tu nie wyduma, najlepiej kontrolę nad uprawnieniami dać użytkownikowi na jego odpowiedzialność, a nie dawac mu lizać lizaka przez szybę.
Tylko tyle i aż tyle.