2013-08-27 2 views
0

자바 리플렉션을 사용하여 SIM 카드 PIN 번호를 변경하고 싶습니다. 최종 앱은 system/app에 설치됩니다. 내 안드로이드 프로젝트 패키지에서 "그런 방법", "인스턴스 예외"... 에 대한 같은 예외를 많이 받고 있어요,리플렉션을 사용하여 Android에서 SIM PIN 변경

String ICCCARD_CLASS = "com.android.internal.telephony.IccCard"; 
String PHONEBASE_CLASS = "com.android.internal.telephony.PhoneBase"; 

Object phoneBaseObject = Class.forName(PHONEBASE_CLASS).getConstructor(); 
Object iccCardObject = Class.forName(ICCCARD_CLASS).newInstance(); 
Method iccCardMethod = Class.forName(ICCCARD_CLASS).getMethod("changeIccLockPassword", String.class, String.class, Message.class); 

//Method arguments are... 
Object arglist1[] = new Object[3]; 
arglist1[0] = "1111"; //oldPass 
arglist1[1] = "2222"; //newPass 
arglist1[2] = new Message(); //message handler (not needed) 

iccCardMethod.invoke(iccCardObject, arglist1); 

그러나 :

내가 사용하는 코드입니다 IccCard 및 PhoneBase가 생성되지 않습니다.

TNX 해커!

답변

1

참 컴파일하는 android.jar 수정 classes.dex으로 다시 작성하는 데 필요한 것 같다.

+0

일단 내가 완전히 이해하고 4.2로 확인하면 더 많은 링크를 게시 할 것입니다. –

관련 문제