2012-04-21 6 views
5

아이스크림 샌드위치의 init. * .rc의 동작이 변경된 것으로 보입니다. 로 변경 힌트를 준 내가 this post을 찾았어요아이스크림 샌드위치 init.rc documentation

service my_kool_service /system/bin/my_kool_service 

, : 이전에, 내가 좋아하는 항목으로 부팅시 서비스를 시작할 수 있었다

service my_kool_service /system/bin/my_kool_service 
    class main 

그래서 class main 무엇이며, 왜 필요한거야?

This documentation에 대한 설명은 class "옵션"이지만 기본 동작이나 관찰 된 변경 사항에 대해서는 자세히 설명하지 않습니다.

현재 ICS init rc 언어가 공식적으로 또는 다른 방법으로 문서화되어 있습니까?

감사합니다.

+0

아이스크림에서 init.rc의 위치를 ​​말해 줄 수 있습니까? –

답변

3

특정 클래스에 서비스를 추가하면 start_class를 호출하는 서비스를 시작할 수 있습니다. 예 : 클래스 테스트에서 10 개의 서비스가있는 경우 start_class 테스트를 호출하여 클래스가 실행 중이 지 않으면 클래스 테스트에서 10 개의 서비스를 모두 시작할 수 있습니다. 같은 는

참조, init.rc 언어에 대한 자세한 내용은 링크를 따라 나는 그것이 도움이되기를 바랍니다 https://github.com/android/platform_system_core/blob/master/init/readme.txt

.. :)

+0

AOSP 4.4에서 init * rc 파일의 명령은'class_start'입니다. – QJGui

3

이미 ... 또한 모든 서비스를 중지에 적용 이미 init.rc라고 기록되어있다. in this readme. class 서비스 옵션은 서비스를 그룹화하고 각각 class_startclass_stop 명령으로 함께 시작하고 중지하는 데 사용됩니다.

특히 클래스 core, mainlate_start은 (섹션 Notes on the implementation of encryption in Android 3.0에 "어떻게 안드로이드 암호화하는 작업"참조) 이후 암호화를 위해 안드로이드 3.0에 사용됩니다. 특히 해당 문서 인용 :

핵심 서비스는 시작한 후에 절대로 종료되지 않습니다. 주 서비스는 종료되고 디스크 암호가 입력 된 후 재시작됩니다. late_start 서비스는/data가 해독되고 마운트 될 때까지 시작되지 않습니다.

1

클래스 코어은 - 항상 처음 시작 클래스 메인 대부분의 경우 심각한 결과없이 종료 할 수 없습니다 - 서비스를 담당합니다. 다시 시작할 수는 있지만 절대적으로 필요한 경우에만 클래스 후기 시작 - 전체 시스템이 부팅되기 바로 전에 발생하여 사용자가 사용할 수있게됩니다.

관련 문제