2009-09-24 3 views
2

배터리 수명 계산을위한 Apple 기술 통계 이외의 참조가 있는지 궁금합니다. 나는 기존의 배터리 애플 리케이션을 비교해 보았다. (배터리 %는 애플의 수치를 남겼다.) 가끔 같은 대답이 나오지 않았다. 또한 2G 셀 (3G와 반대되는)을 사용하기위한 통계가 있으며 2G 배터리 수명을 위해 Apple에서는 아무 것도 볼 수 없습니다.iOS에서 배터리 수명 계산하기

물론 일부 앱은 '가장 정확한 것'이라고 주장하지만 일부 사람이 매우 정확한 통계가없는 한 그런 일이 발생하지는 않습니다.

+0

이것은 실제로 개발 문제가 아니며 전반적인 배터리 수명은 엄청나게 다양한 변수의 영향을받습니다. 유일한 실제 측정 방법은 대표적인 작업 부하를 수행하는 동안 실행하는 것입니다. – Benno

+0

프로그래밍 방식으로 질문을 계산하는 방법은 개발 문제입니다. 그러나 번 다운 비율 계산에 대한 요점이 있습니다 ... 더 정확히 말하면, 영업 담당자는 얼마나 많은 mAh를 사용할 수 있는지 묻고 있어야합니다. 비율은 일정 기간 동안이 값을 샘플링하여 계산할 수 있습니다. –

+0

음, 그렇습니다. 저는 배터리 수명 앱을 직접 만들려고하기 때문에 여기에 있습니다. 그래서 지역 사회에 계산에 대해 물어보고 싶었습니다. – kindaran

답변

17

API를 사용하면 배터리 수준 변경에 대한 알림을 수신하도록 등록 할 수 있습니다. 변경 사항을 5 % 씩 올리거나 내림표 만보고하지만 타이머를 사용하여 두 가지 변경 (또는 초기 배터리 수준과 첫 번째 변경) 사이의 시간을 측정 할 수 있습니다. 다음은 알림을 등록 방법은 :

첫 번째 통지가 당신에게 현재 상태를 알려줍니다
// Use this call to get the current battery level as a float 
// [[UIDevice currentDevice] batteryLevel] 

[[UIDevice currentDevice] setBatteryMonitoringEnabled:YES]; 

[[NSNotificationCenter defaultCenter] addObserver:self 
             selector:@selector(batteryStateDidChange:) 
              name:UIDeviceBatteryStateDidChangeNotification 
              object:nil]; 

[[NSNotificationCenter defaultCenter] addObserver:self 
             selector:@selector(batteryLevelDidChange:) 
              name:UIDeviceBatteryLevelDidChangeNotification 
              object:nil]; 

, 예를 들어, 플러그가 뽑혀 있거나, 충전 중이거나, 가득 참. 두 번째 값은 5 % 증가분에 도달 할 때마다 트리거됩니다.

5 % 변경 알림이 변경 사항 알림에 모두 표시되면 정확도가 매우 좋거나 빠르게 계산할 수없는 것으로 보입니다. 장치가 아무 것도하지 않으면 5 %의 변경 시간이 오래 걸릴 수 있습니다.

아마 [[UIDevice currentDevice] batteryLevel]을 (를) 타이머로 모니터링 할 수는 있지만, 시도하지는 않았지만 같은 5 % 증가분으로 만 업데이트됩니다.

+0

나는 그 포스트에 감사한다. SDK 코드를 알고있었습니다. 나는이 배터리 수명 애플 리케이션이 2G 셀 통화 시간을 어디에서 얻는 지 (예 : 애플이 3G 통화 시간을 제공하지만 2G는 보지 않는다)와 같은 정보에 더 관심이있다. 분명히 애플 리케이션이 사용하는 방정식을 리버스 엔지니어링 할 수 있지만 더 나은 것을 기대하고 있었다. – kindaran