2013년 6월 12일 수요일

토막 지식 2


서비스 관련 지식 복습.





 

System property 파일 이름은  system.prop, locate 명령으로 찾아 보세.

JNI_CreateJavaVM

jint JNI_CreateJavaVM(JavaVM **p_vm, JNIEnv **p_env, void *vm_args);

로드해, Java VM 를 초기화합니다. 현재의 thread가 메인 thread가 됩니다. env 인수를, 메인 thread의 JNI 인터페이스 포인터에 설정합니다.

 


 

 

 

안드로이드 프레임웍에 서비스 추가시

Android / frameworks/ base /services / java

추가될 서비스의 자바 파일을 LOCAL_SRC_FILES 추가.

실재 넣을 파일은 java/com/android/server 아래 적절한 위치에 추가.

 

 

 


base/services/java/com/android/server/pm/PackageSignatures.java
base/services/java/com/android/server/pm/PackageSettingBase.java
base/services/java/com/android/server/pm/PackageSetting.java
base/services/java/com/android/server/pm/PackageManagerService.java
 
 

 


Base/services/java/com/android/server/pm/

PackageSettings - PackageSettingsBase - GrantedPermissions

 

Signature.java -> byte[] 타입의 시그니처 정보 저장.

 

Base/core/java/android/context/pm

 

PackageSignatures

writeXml 함수

readXml 함수

assignSignatures 함수

        Signature[] mSignatures;

        String countStr = parser.getAttributeValue(null, "count");

        mSignatures = new Signature[count];

 

PackageSettingsBase PackageSignature 가지고 있고 , PackageSetting base 상속해서

실재로 쓰여짐.

 

PackageManagerService.java에서

          allowed = (compareSignatures(bp.packageSetting.signatures.mSignatures,

                                 pkgParser.mSignatures) == PackageManager.SIGNATURE_MATCH)

                                 || (compareSignatures(mPlatformPackage.mSignatures,

                                         pkgParser.mSignatures) == PackageManager.SIGNATURE_MATCH);

Signature 정보를 사용함.

 

 


if (bp != null && bp.packageSetting != null) {
 
       final String perm = bp.name;
                 boolean allowed;
                 boolean allowedSig = false;

댓글 없음:

댓글 쓰기

국정원의 댓글 공작을 지탄합니다.

UPBIT is a South Korean company, and people died of suicide cause of coin investment.

 UPBIT is a South Korean company, and people died of suicide cause of coin. The company helps the people who control the market price manipu...