본문 바로가기
세계의 이야기들/안드로이드 Tip 강좌

안드로이드 배터리 팁 종결판

by IanBuffett 2011. 3. 23.
반응형
 .
시작 전 손가락 한 번만 꾸~욱 눌러 주세용~


그간 써온 배터리 아끼는 방법을 한 곳에다 정리를 했습니다.
1부: 기본 + 부록(동기화)
2부: 과학적(?) 분석 (CPU & 네트워크 사용량)
3부: 루팅을 통한 시스템 설정


1부: 기본 + 부록



안드로이드 폰 배터리 대기전력 소모 사용량 시간당 1% 도전하기!



 

안녕하세요.


스마트폰을 사용 하시면서 가장 많이 들 느끼시는 것이 박대리님의 조기 퇴근이십니다.








현재 제 화면 입니다.


위젯: 2종류 3개


화면은 3개이고 아이콘을 폴더 및 기본 화면에 다 몰아 붙여서 사용 하는 화면은 실제로 하나 입니다.


 




현재 백그라운드로 돌아 가고 있는 어플입니다(Skype는 제외). 지메일, 캘린더는 항상 동기화 모드이고 페북, 트윗, 날씨, 이메일등 동기화는 항상 되고 있습니다. 



현재 대기 상태(WIfi 모드)에서 배터리 사용량이 시간당 1% 입니다.



저도 사람인지라 꾸미는 것을 좋아 했습니다. 


6~8%(예전 대기 전력 시간당 사용량) =  라이브 월페이퍼 + 위젯(4종 5개) + [ widget locker + 위젯3개) ]


1%(현재) = 위젯(2종 3개)


예전에는 대기 전력으로 아무 것도 안 해도 완충 후 16시간 ~ 12시간 이였는데

현재는 100시간입니다. 






박대리의 조기 퇴근 근본적 문제



1. 위젯


위젯이라는게 참 만만해 보이고 화면이 꺼져 있음 괜찮겠지 하지만 이놈이 정말 어마어마하게 전력을 잡아 먹습니다. 

현재 제 세팅에서 맨위 위젯을 지우고 날씨 위젯다운 받아 설치 하니 시간당 대기 전력 소모가 1% -> 4%로 급등!


이 정도면 감이 오시죠? 위젯 하나 다른 걸로 봐꾸었다고 전력량이 저렇게 늡니다.


※ 또 한 위젯 마다 소모 배터리가 다릅니다. 어떤건 많이 사용 하고 어떤 것은 적게 소모하고. 보통 애니메이션 effect라든지 화려 할 수록 소모가 크지만 역시 개발자의 위젯 최적화에 따라서도 많은 차이가 있습니다. 




2. widget locker + 위젯 콤보


이 조합도 정말 어마어마 한 전력을 잡아 먹습니다. 혹시 widget locker 쓰시다 기본 안드로이드 라커가 잠깐 보이고 widget locker가 보이는 현상 종종 있지 안 습니까? 아마 생각 하온데 widget locker는 기본 안드로이드 라커를 안 쓰게 세팅 하고 widget locker로 돌리는 것이 아니라 기본 안드로이드 라커 위에 widget locker로 덥어 쒸우는 실행을 하는 것으로 보여 집니다. 결론은 보이는건 widget locker 하나 이지만

실질 적으론 락커 2개가 동시에 실행 되고 있는 겁니다. 거기다 위젯도 뜨어 높으니 엄청 CPU로드를 하겠죠?





3. 테스크 킬러 스마트하게 쓰기


요세 테스크 킬러가 너무 많이 나왔고 누가 좋냐라고 따지기엔 서로 비슷합니다.

그럼 여기서 테스크 킬러를 스마트하게 쓰는 법을 알려 드리겠습니다.

보통은 몽땅 자주 혹은 화면 꺼질때나 시간 단위 오토로 킬을 하는 것이 좋다고 생각 하실 텐데 절!대! 안됩니다.

테스크 킬러도 이래봐도 어플! 실행 될 떄 마다 전력이 소모 됩니다!




-테스크 킬러 설정 하기


좀비 어플(죽여도 살아 나는 어플) 및 자주 실행 어플은 제외(문자, 전화, 카톡, 등등)


좀비 어플을 제외 하는 이유는 죽여도 어차피 살아 납니다. 보통 어플은 백그라운드 상태 때에는 캐쉬에 저장이 되기 때문에 그리 큰 전력을 소모 하지 안 습니다. 하지만 죽이고 다시 살아 날때는 재 실행이 되는 것이기 떄문에 전력을 소모하게 됩니다. 죽이고 살릴고 죽이고 살리고를 반복 누적 되면 전력 소모가 누적 됩니다.

그리고 안드로이드 특성 상 테스크 킬러로 어플을 죽이고 메모리 반환을 하나 안 쓰고 반환 하나 가동에는 별 차이가 없습니다(1G, 512RAM 성능 일때). 그냥 테킬을 하고 확보댄 메모리를 보며 느끼는 자기 만족? 이라고나 할까요. 그냥 자주 할 필요 없이 아침 점심 저녁에 한 번 씩이면 될 듯 하고 한 번 테킬 없이 써보세요. 그리 별 차이 없습니다. 


3.1 프로요 2.2 부터는 테킬은 X


프로요 부터는 메모리 관리가 향상 되었기 때문에 테스크 킬러를 안 쓰는 것이 더 효율적입니다.

프로요는 정보를 모아 사용자가 사용하는 어플의 우선순위를 매겨서 자주 사용 하지 않는 어플을 죽여서 메모리를 확보하는 기술을 사용 합니다. 그러므로 테스크 킬러를 사용하여 어플을 죽인다면 OS 자체에서 정보를 모으는데 방해가 되고 오히려 성능의 저하를 일으킬 수 있습니다.




4. 안 쓰는 어플은 과감히 삭제


어플을 깔아 놓기만 해도 안 써도 전력 소비는 늘어 납니다.

그 이유는 어플이 많을 수록 로딩 할 목록(위젯, 아이콘, 시스템)이 많아지고 그럼 사용 전력이 느는 거지요. 

깔아 놓고 안 쓰는 어플, 과감히 지우세요.





5. 최대한 기본 안드로이드 어플 사용


기본 안드로이드 음악, 비디오 어플이 허접하더라도 그래도 구글이 만든 어플입니다. 최적화가 잘 되어 있지요. Poweramp를 쓰다 음악으로 넘어 왔는데 저 같은 경우는 돌비 음향 효과 떄문에 넘어 왔지만 확실이 poweramp가 전력 소비를 더 많이 한다는 느낌을 받았습니다. 

 


이 정도 입니다. 너무 간단해서 맥이 빠지시나요?

하지만 항상 진리는 가깝고 쉬운데 있습니다.

모든 것에는 대가가 있듯이 화려하고 이쁠 수록 전력 소모는 많아 집니다.


저는 동기화는 죽이지 않지만 죽인다면은 더 많은 배터리가 확보 될 것이나 동기화가 안 되면 그게 스마트폰인가란 생각도 듭니다. 


배터리 어플도 그냥 남은 용량 %로 표시하고 별거 아닌거 같지만 이 것도 결국 전력 소모 입니다.

배터리 좀 아껴 보겠다고 배터리 아끼는 어플 설치 해 봐야 아끼는게 아니라 그 어플이 배터리 더 잡아 먹습니다.



배터리: 힘드냐? 나도 힘들다.

CPU:...........



제일 좋은 것은 애초에 필요 없는 어플들을 설치 하지 않음으로 해서 실행을 방지 CPU 로드를 줄여 배터리 소모를 방지 하는 것이 가장 좋습니다. 




어플이 다양하여 어플 마다 소모 되는 전략이 제각각입니다. 어떤건 배터리 소모가 많고 어떤건 적고.

모든 것은 다 비교 하는 것 불가능입니다.


하지만 간단하게 여러 분도 주무시기 전 완충하고 주무실 때 코드를 뽑고 일어 나셔서 배터리 소모량과 구동 시간을 비교해 보세요. 



PS: 물론 폰을 사용 하 실때 전력 소모를 줄이는 방법은 솔직이 없습니다. LCD가 소모하는 양, 사용하며 어플이 구동 되고 그에 따른 CPU 사용량에 따른 전력 소비 등은 막을 방법이 없지만 최소한 대기 전력 만으로도 하루 평균 배터리를 많이 아낄 수 있습니다. 


혹시 배터리가 빨리 다르신다고요? 그럼 과감히 폰을 심플하게 만들어 보세요. ^^

심플한 만큼 배터리 사용량도 심플해 집니다!!



Tip


3G 데이터 사용시 Wifi 보다 배터리가 훨씬 많이 답니다.

대략 2~4배는 더 다는 거 같네요. 

Wifi 모드일 떄는 1%지만 3G를 사용하면 3~4%정도(시간당) 다는 거 같습니다.

가급적 WIfi를 사용하세요.









안드로이드 구글 및 기타 다른 동기화 배터리가 많이 단다?  

진실 혹은 거짓! 동기화에 대해 알아 보자!



질문: 동기화는 모두 배터리가 많이 다나요?
답: 모든 동기화가 배터리 소모가 큰 것은 아닙니다!



많은 분들이 오해 하시고 있는 것이 모든 동기화는 배터리가 많이 달거나 소모가 크다고 생각 하십니다.

그래서 많은 분들이 따로 동기화 위젯을 화면에 뛰우고 동기화를 껏다 켰다 하시죠. 

허나 다른 동기화와 다르게 구글 기본 동기화는 배터리 소모가 크지 않습니다.




위에 보이시는 것이 동기화 설정 항목입니다.

기본 동기화 설절에서 백그라운드 데이터+자동 동기화는 기본적으로 날씨 위젯이나 카톡 같은 어플들이 데이터를 주고 받기 위해서 사용해야 하는 필 수 항목 이지요. 
해제를 하시면은 카톡이나 날씨를 받아 보시지 못 합니다.

그리고 밑에 보시면 다른 계정 관리가 있습니다.

거기서 보시면 현재 저는 LG Air sync, gmail, facebook이 있는데 현재 구글 동기화만을 사용 하고 있습니다. 



 
현재 보시면은 시간이 다른 것을 알 수 있으십니다. 주소록과 캘린더는 오전 10시 14분에 메일은 오후 5시 56분에.

그 이유는 구글 계정 동시화는 푸쉬를 사용 하기 때문입니다.





푸쉬란?

캘린더, 주소록, 메일은 푸쉬를 사용 하기 떄문에 모바일과 서버에 저장 된 데이터에 변경 사항이 없으면 동기화를 하지 않습니다. 한 달이 지나도 1달 전에 마지막 동기화 였다 하더라도 걱정 하실 필요가 없습니다.
그 말은 즉 1달 동안 메일도 안 왔고 캘린더, 주소록에도 새로운 변경 사항이 없는 거니깐요.
대신 새로운 변경이 모바일이든 서버든에서 생긴 다면 바로 몇 초만에 그 변경 사항을 모바일 혹은 서버에 전송해서 항상 양쪽이 최신 데이터를 가지고 있게 합니다. 이 것이 바로 푸쉬.

예: 카톡, whatapps, 지메일, 캘린더, 구글 주소록






일반 스케줄 동기화란?


 

위와 보시 듯 스케줄 옵션이 있어서 몇 십분 간격으로 체크를 하는지 옵션이 있으면 일반 동기화 입니다.
일단 동기화가 배터리를 많이 쓰는 것이 매 지정 시간마다 모든 정보를 서버와 모바일 간에 비교하다 보니 
필요 없는 정보 혹은 동기화 할 필요가 없지만 동기화를 지정 시간마다 하는 것이 문제 입니다.
그러니 스케줄 동기화는 꼭 필요한 것, 가령 쪽지, 멘션, 날씨와 같은 것들을 하는 것을 추천 합니다. 

위젯이 배터리 소모가 큰 이유는 대게 위젯을 뛰어는 어플은 보통 일반 동기화를 사용 하는 facebook, 트위터, 뉴스, 날시 같은 데이터 송/수신을 해야 하는 위젯을 뛰우기 떄문입니다. 

예: 페이스북, 트위터, 날씨 등.

LG air sync와 facebook 주소록은 안 쓰고 있는데 이유는
Lg air sync는 쓸필요가 없고..
facebook 주소록은 은 동기화든 푸쉬든 어쨌든 배터리 소모가 클 것이라 생각 하기 떄문입니다.
facebook 주소록 같은 경우 푸쉬가 된다 할 지라도 제가 혼자 수정 하고 하는 것이 아니라 
제 친구들이 주소록을 수정 하면 그 것이 반영 될 텐데 친구가 많으면 많아 질 수록
주소록 수정을 하는 친구들도 늘어 날 것이고 그러나 보면 푸쉬라 해도 푸쉬 동기화가 너무 
자주 일어나서 배터리 소모가 클 것이라 보고 사용을 안 하고 제가 메뉴얼로 동기화를 하고 있습니다.




결론



모든 동기화가 배터리 소모가 큰 것은 아니고
푸쉬를 사용 하는 어플은 배터리 소모를 딱히 걱정 하실 필요가 없습니다.
이유는 앞서 말씀드린 것 처럼 항상 동기화를 하는 것이 아니라 그 떄 그 떄 새 정보가 있을 떄 하기 때문이고
다만 일반 동기화를 사용하는 어플은 배터리 소모를 걱정 하셔야 합니다.
필요 없는 데도 정해진 시간 마다 동기화를 하기 때문이지요.
그러므로 일반 동기화를 사용 하는 어플은 필요 한 옵션만 동기화 하시고 시간을 너무 자주 동기화 하게 하지 마세요. 또는 동기화를 수동으로 하시는 것을 추천 합니다.
많은 이유 떄문에 아직 푸쉬를 지원 하는 어플은 많이 없습니다. 
그러니 동기화가 되는 어플이 있다면 그 것이 푸쉬인지 동기화인지 확인 해 보시고 사용하세요. 



Tip

구글 동기화: 캘린더, 주소록, 지메일 사용을 추천 합니다.
주소록은 실시간으로 저장이 되기 때문에 따로 연락처를 백업 하 실 필요가 없고
지메일 같은 경우 푸쉬기 떄문에 상대방이 보내면 거의 바로 메일 왔다고 지메일이 알려줍니다.












2부: 과학적(?) 분석



TrafficStats lite



위 글에서는 각 어플의 CPU 점유율을 확인 하는 것을 보았고 이번에 소개 해 드릴 어플은 각 어플의 네트워크 사용량을 확인 하는 어플입니다.

CPU 점유율만으로는 배터리 소모 확인 하기가 조금은 부족한데 그 이유는 CPU점유율이 낮더라도 데이터를 사용 하는 어플 일 수록

배터리 소모가 크다는 것이 문제 입니다.

그래서 각 어플이 데이터를 얼마나 사용 하는지 확인 하는 것도 배터리를 아끼는데 있어 꼭 필요 합니다.








위 보시면은 Total Wifi(제가 깔고 데이터 리셋 후 3G를 안 사용해서 그런데 3G를 사용 하시면 Total 3G라도 같이 나옵니다) 및 각 어플의 데이터 사용량을 알 수 가있습니다. 방심하고 있었는데 트윗과 페이스북이 은근이 데이터를 많이 주고 받더 군요. 






메뉴 버튼을 누르 시면 옵션을 설정 할 수 있는데 

show system app: 시스템 어플(동기화 등 구글 시스템 어플)은 기본적으로 숨겨져 있는데 이것을 활성화 시키면 시스템 어플의 네트워크 사용량을 보실 수 있습니다.
Ignore wifi traffic: WiFi를 사용한 데이터는 제외 시킵니다.
show sent/received: 맨 위에서 기본적으론 total data사용량만 나오지만 이 옵션을 활성화 시키시면 sent/received 각각 맨 위 처럼 표시가 됩니다.
reset date daily: 매일 데이터 사용량을 초기화 시킵니다.
reset: 지금 초기화 시킵니다.


을 통하여 네트워크 사용이 잦은 어플을 확인 하셔서 제거 하시거나 동기화 주기를 늘리신다면은 배터리 효용에 있어 많은 도움이 되 실 겁니다 ^^



Tip: 어플 실행 후 Refresh 버튼을 눌러 주셔야 최신 사용량으로 업뎃 합니다!!










Usage Timelines Free



CPU 사용 확인 어플은 테스크 킬러 및 다른 어플들도 많은데 Usage Timelines Free는 매우 간단하게 확인이 되어 좋더군요.






위 같이 실시간으로 각 어플 별 CPU 사용량이 간단하게 나오고

 


 



혹은 어플 실행 후  Start CPU Load Timeline이란 버튼을 누르면 알림바에 CPU사용 아이콘 및 알림을 내리면 위 같이 그래프와 %로 나옵니다.

현재 시스템이 5% 기타 CPU 사용량 + 시스템이 7%정도 평균적으로 나옵니다.

제가 이 어플을 사용 하는 이유는



자주는 아니지만 새로운 어플이나 혹은 위젯을 깔았을 때 얼마나 CPU 점유율이 올라가는 지를 확인 하기 위해서 입니다.

CPU 점유율이 늘은 다면 그 만큼 배터리 소모도 크겠죠?


현재 위 어플을 이용하여 어플 및 위젯을 깔았을 때 기존 CPU 사용량 대비 CPU 사용량이 얼마나 늘었는지 확인이 가능 하여 

배터리 소모가 큰 어플 및 위젯을 피할 수 있어 좋습니다. 














3부: 루팅을 통한 시스템 관리


SetCPU




지금까지 배터리 아끼는 방법은 정상적인 방법(루팅X)으로 배터리를 아끼는 법을 설명해 드렸고 오늘은 루팅으로 통해 cpu전력을 낮추어 배터리를 아끼는 법입니다.

당연 루팅을 해야만 할 수 있는 방법이기에 각 기기의 루팅 법을 다르기 떄문에 찾아 보시기 바랍니다.

옵젯 유저 루팅은 밑의 링크를 참조해주세요. 

2011/03/13 - [& 세계의 이야기들/안드로이드 Tip 강좌] - 옵티머스z 옵젯 프로요 슈퍼7클릭 루팅 가이드 







맨 처음 어플을 실행 하면 기기의 CPU를 맞추어야 하는 옵션이 밑에 보입니다. 
보통은 두 번째 Autodetect Speeds Recommended를 하시면 되짐만 간간 fail이 되거나 재부팅 후 CPU를 못 찾는 경우가 있어서 가급적 Show other frequency sets를 누르 셔서 직접 CPU를 선택해 주세요.  







보시면 많은 종류의 CPU옵션 및 스마트폰 기기가 나오고 해당 스마트 폰이나 옆에 CPU가 같은 것을 선택 하시면 됩니다.
저는 Snapdragon을 사용 하기 떄문에 Snapdragon을 선택 하였습니다. 






선택 후에 메인으로 넘어 갑니다. 보통 CPU를 기본적으로 MAX/MIN 가 모두 최대치로 설정 되어 있고 스케일링도 역시 performance로 선택되어 있습니다.
이 것을 이제 취향에 맞추어 설정 하시면 되는데 저는

Max: 768
Min: 245
Scaling: conservative


로 선택 하였습니다. 게임을 안 해서 그런지 768 상태로도 1기가와 별다른 속도 차이를 못 느끼겠더군요.

Scaling option: Conservative: 사용량에 따라 CPU 할당 (Ondemand에 비해 세부적으로 CPU 할당이 됩니다. 추천)
                      Ondemand: 사용량에 따라 CPU 할당 (Conservative에 비해 CPU 높낮이 폭이 큽니다. 200에서 갑자기 700 가지도 하고 1기가로 가기도 하고)
                      Savepower: 최대 절약 (어지간 해서는 CPU가 최저 상태로 올라가지 안 더군요. 대신 좀 대체적으로 폰이 느려집니다, 대신 배터리 절약은 최대이죠)
                      Performance: 최대 성능



Set on Boot: 부팅 시 자동 실행







Profile에서는 각 상황에 따라 CPU 속도를 조절 할 수 있습니다.
Add profile하시면은 Charing/Full, screen off, 온도, 배터리 용량에 따라 최대/최소 cpu 클럭을 설정 할 수 있어 배터리 절약에 도움이 됩니다.

 


Advanced: 오버 클럭 (각 모델 별 다르기 떄문에 검색을 해 보셔야 합니다)


위 Setcpu를 통해 기존 대기 전력 사용량이 1% -> 0.7~8%로 낮아 졌고 기존 배터리 아끼는 팁에서는 폰을 사용 할 때 전력 소모를 아끼지를 못 하였지만 setcpu를 통해 사용 중에도 대략 10~20% 정도의 배터리 소모 향상이 되었습니다.

CPU 클럭이 사용을 안 하더리도 높은 값에 고정이 되어 있음 그 만큼 voltage를 소모하기 때문에 전력 소모가 크지만 setcpu를 통해 cpu클럭을 상황에 따라 낮추고 높이고 하면은 그 만큼 CPU를 안 쓸 떄는 CPU클럭을 낮추어 배터리 소모를 방지 할 수 있습니다.



com.mhuang.overclocking.apk

 

setcpu를 제외한 어플은 구글 마켓에서 검색 하시면 됩니다~

이것으로 왠만한 방법으로 배터리 소모를 줄이는 것은 할 만큼 한 것 같네요.

배터리 소모 향상(시간당)
1부+2부: 7% -> 1%

3부: 1% -> 0.7~0.8%
                            실시간 사용 시: 약 20~30% 절약 

좋은 팁이 있음 언제든지 환영 합니다~ 
 


로그인 필요 없는 추천!
만족 하셨다면 View 클릭!
만족 못 하셨어요 힘내라고 view 클릭!
부탁드려용~




반응형

댓글