2009-06-03 4 views

답변

3

글쎄,이 작업을 수행하는 유일한 표준 방법은 JSR-256입니다. 모바일 센서 API
http://www.jcp.org/en/jsr/detail?id=256

에서 사양을 읽을 수 있습니다. 불행히도 이는 최근의 것으로 대부분의 일반 전화에서 아직 구현되지 않았습니다.

배송되면 Sony Ericsson Satio (또는 Idou)가 가져옵니다.

편집 : 노키아 N97는 JSR-256을 가지고 있으며, 노키아 N85, 노키아 5800에 설치 될 수

편집 : Here's Attilah's other JSR-256 question with some code in the answer.

+0

많은 사람에게 고마움을 전합니다. – Attilah

2

J2ME만으로는 일반적인 방법이 확실하지 않습니다. Nokia and its properties

, 당신은 (Get Battery Level in J2ME) 할 수 있습니다

System.getProperty("com.nokia.mid.batterylevel"); 

일반 재산, as illustrated here 항상

시스템 등록 정보의 일부를 (널 (null)을 반환 할 수 있습니다) 작동하지 않을 수도 초기 장치에서 지원되지 않을 수 있으므로 null을 반환하고 일부 시스템 속성은 MIDlet이 그렇지 않으면 null을 반환하도록 요구합니다.

+0

감사합니다. 또한 노키아 세트로 전원 차단 이벤트를 감지 할 수 있는지 알고 싶습니다. – Attilah

+0

AFAIK, 일부 노키아 전화가이 기능을 제공하는 것은 아닙니다. 다른 휴대 전화의 경우에는 일부 사용자가 빌드에 서명해야 할 수도 있습니다. 구현의 많은 차이로 인해 "장치 단편화 (Device Fragmentation)"가 발생했습니다. 안타깝게도 MIDP 1.0 이후 휴대폰 업체들은 여전히이 문제에 대해 논의하고 있습니다. – Ram

0

나는 당신이 무엇을 다루고 있는지 전화와 OS에 따라 달라집니다 확신 와. 어떤 J2ME 개발도하지 않았기 때문에, 그런 종류의 정보를 제공 할 수있는 일종의 "환경"또는 "시스템"서비스가있을 것으로 기대합니다.

0

article은 소니 에릭슨 휴대 전화에서 JSR 256을 사용하여 배터리 수준, 네트워크 범위 및 몇 가지 흥미로운 센서 데이터를 읽는 방법을 설명합니다. JP8.3부터 지원합니다.

트릭을 수행하는 코드 :

SensorInfo[] batteryInfo = SensorManager.findSensors("battery_charge", null); 
SensorConnection sensor = (SensorConnection)Connector.open(batteryInfo[0].getUrl()); 
Data data[] = sensor.getData(1); 
String batteryLevel = "Current charge level: "+data[0].getIntValues()[0]; 
관련 문제