-
31. Data: 2014-09-06 00:08:02
Temat: Re: Zużycie baterii
Od: "Pszemol" <P...@P...com>
"atm" <...@v...pl> wrote in message
news:5409b54e$0$26850$65785112@news.neostrada.pl...
> On 2014-09-05 14:56, Pszemol wrote:
>> "atm" <...@v...pl> wrote in message
>> news:5409b192$0$2363$65785112@news.neostrada.pl...
>>> Uzywam telefonu, choc oczywiscie nie tak intensywnie jak
>>> wiele innych osob.
>>
>> Czyli sam przyznajesz że to nie zaleta SG2 ale pśtyczka w nos
>> iPhonowi musiałeś jednak pstryknąć... czyż to nie jeste jednak fanatyzm?
>
> No zeby to napisal ktos inny...ale ktos kto wrzuca watki typu "Android i
> 64bity"... No i nie schlebiaj Apple'owi - do fanatyzmu jest mi baaaardzo
> daleko :]
Mój wątek o 64-bitach nie był fanatyczny...
>>>> Półtorej doby? Czyli kiedy ładujesz? W czasie dnia?
>>>> Nie rozumiem sensu... Korzyść żadna a tylko kuku sobie możesz
>>>> zrobić jak będziesz akurat chciał dłużej poużywać.
>>>> Ja ładuję w ten sposób iPhone4 od ponad 3 lat że niezależnie od
>>>> tego ile zostało wieczorem w baterii (czasem 12% a czasem 75%)
>>>> to podpinam pod ładowarkę i idę spać - każdy dzień zaczyna od 100%.
>>>
>>> Ładuje przewaznie w ciagu dnia, wieczorem czasem w nocy
>>> zaleznie od tzw "widzimisie"
>>
>> Zaletą ładowania zawsze po pójściu spać jest to, że telefon się ładuje
>> gdy go nie potrzebujesz bo sam śpisz i regenerujesz swoje baterie.
>
> Zgadza sie, kiedys tak robilem. Pozniej dalem z tym spokoj.
Idealnie byłoby gdybyś ładował przy 30% i kończył ładowanie przy 70% :-)
Jak Toyota Prius... :-)
-
32. Data: 2014-09-06 00:08:55
Temat: Re: Zużycie baterii
Od: "Pszemol" <P...@P...com>
"J.F." <j...@p...onet.pl> wrote in message
news:1gys2lwhl31tu.14lt669g8wvpb.dlg@40tude.net...
> Dnia Fri, 05 Sep 2014 14:06:51 +0200, atm napisał(a):
>> On 2014-09-05 14:02, Pszemol wrote:
>>>> ze rano znow go telefon nie obudzil poniewaz bateria w nocy padla.
>>> Czemu nie ładujesz telefonu w nocy aby mieć rano pełne 100%?
>>
>> To chyba przypadlosc iPhoneow, ze trzeba je w nocy ladowac, moj SGS2
>> spokojnie wytrzymuje półtorej doby :] (do dwoch ale to juz ponizej 30%)
>
> Nie umiesz uzywac smartfonu, albo to jakies g*.
> SGS4 to sie w dwie godziny potrafi wyladowac :-)
Faktem jest że jak się uprzesz to wyładujesz każdy smartfone
w kilka godzin intensywnego używania z ekranem na pełnej
jasności i CPU non-stop używającym pełnej mocy i internetu.
-
33. Data: 2014-09-06 10:01:37
Temat: Re: Zużycie baterii
Od: GAD Zombie <g...@g...BEZ.art.SPAMU.pl.PROSZE>
W dniu 2014-09-04 20:51, Marek pisze:
> On Thu, 04 Sep 2014 13:01:55 +0200, GAD Zombie
> <g...@U...gad.USUN.art.pl> wrote:
>> To jak to jest, kiedy aplikację się zamyka? Ona się minimalizuje i
>> działa w tle, czy jakoś "zamraża" i nie działa, chociaż można ją
>> przywrócić (na zwór hibernacji komputera), czy może jednak się
> zamyka?
>
> Widzę, że pokutuje tu mieszanka mitów i uprzedzeń. Żeby aplikacja
> zżerała baterie w Androidzie programista musi się na prawdę postarać.
Nie znam żadnych mitów na ten temat, a uprzedzeń nie mam, bo to mój
pierwszy telefon z Androidem i uważam, że jest to naprawdę potężna rzecz
o wielkich możliwościach.
Natomiast przyznaję się publicznie do niewiedzy, bo nie chciało mi się
czytać o tym książek zanim kupiłem i wszystkiego uczę się na bieżąco.
Zresztą nigdy nie przyszłoby mi do głowy, że trzeba się naczytać
literatury zanim zacznie się używać telefonu :)
> [...]
> Podsumowując, jeśli aplikacja ciągle coś robi w tle to tak ma być,
> zatrzymać tego nie można, bo najczęściej po zatrzymaniu przez
> użytkownika jakimś narzędziem system to uruchomi ponownie, jeśli
> programista przewidział to i wymusza autorestart. Jedyne rozwiązanie to
> jej odinstalowanie.
Nie znam tego jeszcze za dobrze, ale mam wrażenie, że masz zbyt wiele
wiary w programistów, którzy mało wiedzą co robią ;).
Na przytoczonym przeze mnie przykładzie widać, że coś jest nie tak.
Obserwuję to już od kilku dni uważnie. Konsola Atari 2600 jest wyłączona
całkiem. Ale jak się ją włączy, to pozostaje w pamięci jakiś jej proces,
który jest aktywny (widać po statystykach w Wakelock Detector). Jak się
go nie ubije, to jest aktywny nawet parę dni. Wytłumacz mi, po co to
może być, skoro programista musiał tego chcieć? Jak to ubiję, to
wszystko działa jak należy, nic się nie psuje, ale to zostaje wyłączone.
Albo programista nie wie, że tak zrobił, albo jest złośliwy i celowo
zostawia włączone coś, co raczej szkodzi, bo niczemu dla mnie nie służy
(a to mój telefon, ma służyć mi, a nie komuś). Osobiście obstawiam, że
takich aplikacji jest więcej.
--
GAD Zombie
http://gad.art.pl/ http://sadist.art.pl/
http://classicgamesmaniac.gad.art.pl/
http://gry-samochodowe.gad.art.pl/
-
34. Data: 2014-09-06 12:12:58
Temat: Re: Zużycie baterii
Od: Marek <f...@f...com>
On Sat, 06 Sep 2014 10:01:37 +0200, GAD Zombie
<g...@g...BEZ.art.SPAMU.pl.PROSZE> wrote:
> Obserwuję to już od kilku dni uważnie. Konsola Atari 2600 jest
wyłączona
> całkiem. Ale jak się ją włączy, to pozostaje w pamięci jakiś jej
proces,
> który jest aktywny (widać po statystykach w Wakelock Detector). Jak
się
> go nie ubije, to jest aktywny nawet parę dni. Wytłumacz mi, po co
to
> może być, skoro programista musiał tego chcieć? Jak to ubiję, to
> wszystko działa jak należy, nic się nie psuje, ale to zostaje
wyłączone.
Zanim spróbuję odpowiedzieć na Twoje pytanie kilka słów wstępu o
zarządzaniu uruchomionymi aplikacjami przez system Android.
O zakończeniu i usuwaniu aplikacji z ram decyduje system a nie user.
To taki paradygmat Androida. Chodzi o to by kolejne jej uruchomienie
było szybsze. Z potrzeby izolacji każdy proces to dedykowana
instancja maszyny wirtualnej javy (dalvik), częste uruchamianie
takiego procesu jest dość cpu-żernym zadaniem więc tego się unika.
Szybciej wywoływać uśpiony w pamięci proces niż go od nowa ładować.
System wie ile ma wolnych zasobów, jeśli ram się kończy usuwa
najrzadziej uruchamiane aby zrobić miejsca nowym. Z tego powodu
programiści nie stosują trwałego "zamykania" aplikacji, można to
wymusić, ale takie działanie jest niezgodne z przyjętym paradygmatem.
System ma tym zarządzać i koniec. Aplikacja zakończona nie zabiera
cpu, jest "zamrożona" w ram. Nie będzie widoczna w oryginalnym
menadżerze aktywnych aplikacji. Niestety mogą ją niepotrzebnie
pokazywać jakieś "eksperckie" narzędzia, użytkownikowi wychowanemu na
PC może się to kojarzyć źle, stąd zaraz ma odruch usuwania takich
aplikacji. Takie działanie nie ma sesnsu dla poprawnie napisanych
aplikacji. Tutaj zaczyna się pierwszy haczyk.
Aplikacjie "zakończone" (ale ciągle trzymane "pod ręką" przez system
w ram) nie będą używać cpu (baterii) pod warunkiem, że są to
aplikacje bez serwisów, np. apka do rysowania na ekranie: działa
(jest aktywna) gdy jest "na ekranie", gdy jej nie ma (przełączono się
na coś innego) jej aktywność traci sens, więc jest zatrzymywana.
Serwis to taka wyodrębniona cześć aplikacji, która ma za zadanie
obsłużyć w tle jakieś zdarzenie w systemie np. odbiór sms. Jeśli apka
ma serwis to będzie on aktywowany aby gdy nastąpi odpowiednie
zdarzenie. Serwis też nie jest problemem dla baterii, bo jego kod
wykonywany jest tylko gdy nastąpi zdarzenie i z reguły krótko.
Narzędzia pokazujące listę procesów taki serwis będą najczęściej
wyświetlały pod nazwą aplikacji, do której należy (bo de facto to
cześć procesu tej aplikacji). Jak widać nieaktywna aplikacja baterii
zużywać nie może, a nawet jeśli ma serwis to jest on aktywny tylko
przy zdarzeniu więc też drastycznie bateri nie użyje. I tutaj
dochodzi drugi haczyk czyli nieszczęsne "wakelocki".
System telefonu jako narzędzia zasilanego z baterii ma mechanizm,
który jak najszybciej chce aktywne ale "niedotykane" przez
użytkownika urządzenie przełączyć w stan o niskim poborem energii
nazywany potocznie uśpieniem. Jest kilka poziomów głębokości
uśpienia, najgłebszy (najmniej zużywający baterii) to taki, w którym
ekran jest wyłączony i cpu zatrzymany. Wakelocki (dosl. "pozostań
aktywny") to takie blokady zakładane przez aplikacje, które blokują
automatyczne usypianie (wyłączanie) lcd lub cpu (i innych
peryferiów). Wakelock na lcd spowoduje ciągle włączony ekran ale nie
ma wypływu na cpu. Wakelock na cpu nie uśpi cpu mimo, że lcd zostanie
wyłączony. Np. aplikacja odtwarzająca mp3 musi włączyć wakelocka na
cpu ale nie musi na lcd. Jeśli nie założy na cpu to po chwili braku
akywności ze strony usera cpu zostanie zatrzymany i odtwarzanie
zostanie przerwane. Oczywiście po zakończeniu odtwarzania (lub
aplikacji) wakelock musi być "zdjęty" bo inaczej cpu nigdy nie
wejdzie w stan uśpienia. I tutaj się zaczyna ów drugi haczyk:
aplikacja sama musi wakelocka zdjąć bo tylko ona (czyt. programista)
wie czy cpu jest jej jeszcze potrzebny czy nie, system za nią tego
nie zrobi. Jeśli programista popełni błąd i z powodu tego błędu nie
nastąpi zdjęcie wakelocka to cpu nie zostanie już w pełni uśpiony i
będzie drenował baterię mimo wyłączonego ekranu (!).
Przykład z potrzebą użycia wakelocka w odtwarzaniu mp3 jest chyba
prosty i zrozumiały.
Emulator, o którym piszesz ma najpewniej zarejestrowany serwis do
obsługi jakiegoś zdarzenia. Serwis ten aktywuje wakelocka gdy nastąpi
owo zdarzenie aby je obslużyć, a potem z jakiś powodów go nie
zdejmuje. Pytanie, po co emulatorowi serwis działający w tle...
autor to jakoś tłumaczy? Możesz podać linka do tej aplikacji? Może z
jej manifestu da się wywnioskować co się dzieje.
--
Marek
-
35. Data: 2014-09-06 12:19:23
Temat: Re: Zużycie baterii
Od: "J.F." <j...@p...onet.pl>
Dnia Thu, 04 Sep 2014 20:51:01 +0200, Marek napisał(a):
> Widzę, że pokutuje tu mieszanka mitów i uprzedzeń. Żeby aplikacja
> zżerała baterie w Androidzie programista musi się na prawdę postarać.
> Klawisz back zakończy aplikację, jeśli programista obsłuży akcję
> "wciśnięto back" i zakończy jej pracę. Jeśli tego nie zrobi system
> domyślnie "schowa" ją w tło i zatrzyma (wyjątek od tego poniżej). W
> Androidzie, ze względu na pracę w warunkach zasilania bateryjnego
> każde przełączenie się na inną aplikacje powoduje zatrzymanie
> bieżącej CHYBA, ŻE programista intencjonalnie obsługuje takie
> zdarzenie i wymusi pracę aplikacji w tle np. kontynuacja obliczeń.
> Oprócz zatrzymywania mamy domyślne usypianie urządzenia, chyba, że
> znowu programista celowo zablokuje uśpienie. Tutaj na prawdę ciężko
> zrobić jakiś błąd aby przez przypadek aplikacja została przęłączona w
> tlo i ciągle działała, bo trzeba to z góry przewidzieć na etapie
> projektu aplikacji, inaczej domyślnie system ja zatrzyma.
A mimo wszystko programisci opanowali te sztuke znakomicie, bo zzeraja
baterie blyskawicznie. I nawet nie wiadomo dlaczego - procesor, ekran,
transmisje, jakis akcelerator graficzny ? Czy google skorzystal z
okazji, i zeskanowal okolice..
> W ogóle "aplikacja" to trochę niefortunne określenie w przypadku
> Androida, bo pejoratywnie kojarzy się z aplikacją (programem) na PC,
> a to trochę inaczej wygląda. W Androidzie aplikacja jest jakby
> modułem/rozszerzeniem do systemu implementującym odpowiednie metody
> wywoływane przez ten system. To nie jest tak proste jak w unices, że
No pacz pan, ale unices sa passe, a w windows jak piszesz - system
wywoluje funkcje programu. Najwyrazniej jednak programy z uwielbieniem
wywoluja funkcje "wywolaj mnie przy najblizszej okazji".
A tak w zasadzie, to w Androidach nie ma zadnych programow, sa dane do
interpretera Dalvika :-)
> Androidzie jest rozdzielenie między tą częścią kodu, która ma
> wyświetlić i zarządzać UI (activity) a częścią, która ma coś robić,
> najczęściej w tle i nie potrzebuje do tego UI (serwis). Jeśli w
> kodzie w części UI cpu spędzi za dużo czasu (przez błąd programisty)
> taka aplikacja zostanie ubita przez system bardzo szybko (system nie
> dopuszcza takiego działania). Natomiast w serwisie (w tle) można
> robić co dusza zapragnie, na pełnym gazie cpu.
Cos tam jednak musi to dzialanie przerwac, zeby obsluzyc inne.
> Podsumowując, jeśli aplikacja ciągle coś robi w tle to tak ma być,
> zatrzymać tego nie można, bo najczęściej po zatrzymaniu przez
> użytkownika jakimś narzędziem system to uruchomi ponownie, jeśli
> programista przewidział to i wymusza autorestart. Jedyne rozwiązanie
> to jej odinstalowanie.
I to jest wk*. I nie wiadomo co baterie zzera.
Albo taki ostatni przypadek - podlaczam sluchawki, gra muzyczka.
Jakie amazing rozwiazanie. Tylko k* jak to wylaczyc, bo zainstalowalem
kilka grajacych programow.
J.
-
36. Data: 2014-09-06 12:21:57
Temat: Re: Zużycie baterii
Od: "J.F." <j...@p...onet.pl>
Dnia Fri, 5 Sep 2014 07:42:22 -0500, Pszemol napisał(a):
> "Marek" <f...@f...com> wrote in message
> Otóż to. Zrozumiałbym że nie ładuje codziennie gdyby napisał że
> może telefon używać tydzień bez ładowania... Ale napisał "półtora"
> doby :-)))
Poltora doby jest dobre.
Bo jak wrocisz pijany i zapomnisz podlaczyc do ladowarki, to drugi
dzien tez bedzie dzialala :-)
> Mało tego - jak ładujesz w różnych porach dnia to nie masz
> rutyny która pomaga Ci właśnie nie wyjść z domu z pustą baterią.
Przeciez to jest smartfon, rutynowo wkladasz ladowarke do kieszeni :-)
J.
-
37. Data: 2014-09-06 12:45:02
Temat: Re: Zużycie baterii
Od: Marek <f...@f...com>
On Sat, 6 Sep 2014 12:19:23 +0200, "J.F."
<j...@p...onet.pl> wrote:
> A mimo wszystko programisci opanowali te sztuke znakomicie, bo
zzeraja
Może piszą aplikacje nie nadające się na telefon:)
Może korzystają z jakiś popsutych frameworków i nawet nie są świadomi
co się dzieje.
> No pacz pan, ale unices sa passe, a w windows jak piszesz - system
> wywoluje funkcje programu. Najwyrazniej jednak programy z
uwielbieniem
> wywoluja funkcje "wywolaj mnie przy najblizszej okazji".
Nie wiem skąd wyciągnołeś wniosek, że unices są passe nic takiego nie
pisałem. Też nic nie pisałem o windows, bo się na tym nie znam,
ostatni windows z jakim miałem do czynienia to 3.11, bardzo kiepski
system z tego co pamiętam.
> Jakie amazing rozwiazanie. Tylko k* jak to wylaczyc, bo
zainstalowalem
> kilka grajacych programow.
To po co klika instalowałeś.
--
Marek
-
38. Data: 2014-09-06 12:52:55
Temat: Re: Zużycie baterii
Od: Marek <f...@f...com>
On Sat, 6 Sep 2014 12:19:23 +0200, "J.F."
<j...@p...onet.pl> wrote:
> Cos tam jednak musi to dzialanie przerwac, zeby obsluzyc inne.
Przecież to grupa popularna a nie sci. Mam o oczywistym wyłaszczeniu
cpu pisać? Chodziło o to, że w activity (w ui) taki numer nie
przejdzie:
for(;;);
apka zostanie przerwana, natomiast w serwisie będzie to działać,
telefon zrobi się gorący, bateria padnie po 15min. Oczywiście
powyższe nie zablokuje wywłaszczenia, inne procesy będą działać
normalnie.
--
Marek
-
39. Data: 2014-09-06 13:33:03
Temat: Re: Zużycie baterii
Od: "Pszemol" <P...@P...com>
"Marek" <f...@f...com> wrote in message
news:almarsoft.8751597334165244655@news.neostrada.pl
...
> Emulator, o którym piszesz ma najpewniej zarejestrowany serwis do obsługi
> jakiegoś zdarzenia. Serwis ten aktywuje wakelocka gdy nastąpi owo
> zdarzenie aby je obslużyć, a potem z jakiś powodów go nie zdejmuje.
> Pytanie, po co emulatorowi serwis działający w tle... autor to jakoś
> tłumaczy? Możesz podać linka do tej aplikacji? Może z jej manifestu da się
> wywnioskować co się dzieje.
Oprócz oczywistego błędu w programie może też być celowe
działanie mającen na celu np. robienie czegoś, czego nie ogłasza
aplikacja: np. ściąganie w tle reklam do pokazania przy następnym
wejściu na ekran, albo zbieranie informacji o aktywności usera
i wykorzystywanie tego do celów reklamowych...
Weź pod uwagę, że wiele aplikacji nie mówi użytkownikowi
o 100% swoich zamiarów i planach w stosunku do telefonu
do którego user ją zainstalował.
-
40. Data: 2014-09-06 16:15:41
Temat: Re: Zużycie baterii
Od: "J.F." <j...@p...onet.pl>
Dnia Sat, 06 Sep 2014 12:45:02 +0200, Marek napisał(a):
> On Sat, 6 Sep 2014 12:19:23 +0200, "J.F."
>> A mimo wszystko programisci opanowali te sztuke znakomicie, bo zzeraja
> Może piszą aplikacje nie nadające się na telefon:)
> Może korzystają z jakiś popsutych frameworków i nawet nie są świadomi
> co się dzieje.
>
>> No pacz pan, ale unices sa passe, a w windows jak piszesz - system
>> wywoluje funkcje programu. Najwyrazniej jednak programy z uwielbieniem
>> wywoluja funkcje "wywolaj mnie przy najblizszej okazji".
>
> Nie wiem skąd wyciągnołeś wniosek, że unices są passe nic takiego nie
> pisałem. Też nic nie pisałem o windows, bo się na tym nie znam,
Tym niemniej wiekszosc programow przez ostatnie 20 lat powstalo na
Windows, wiec przyklad unixow jest chybiony.
> ostatni windows z jakim miałem do czynienia to 3.11, bardzo kiepski
> system z tego co pamiętam.
Juz tam tak bylo, ze system wywoluje program i podsyla mu kolejne
komunikaty. A program ma szybko wrocic.
Tak czy inaczej - uruchamiam sobie jakas logiczna gre, cos dotknalem,
gra przetwarza ... i zgodnie z tym co piszesz nie powinna procesora
obciazac az mojej kolejnej akcji. A bateria znika :-)
>> Jakie amazing rozwiazanie. Tylko k* jak to wylaczyc, bo zainstalowalem
>> kilka grajacych programow.
> To po co klika instalowałeś.
No przeciez to taki system z zalozenia - systemowe programy sa do d*,
uzytkownik ma sobie znalezc lepszy :-)
No to szukam :-)
Tak czy inaczej - telefon z Androidem zyje wlasnym zyciem.
Cos dziala, albo nie dziala, raz przez noc zuzyje 10%, innym razem 90%
...
J.