2017-10-24 10 views
1

나는 android's source code을 알고 있습니다. 그러나 특정 인터페이스 또는 추상 클래스의 구현 또는 하위 클래스를 찾는 방법 (예 : FragmentManager)은 무엇입니까? 소스 코드를 파헤 치면 버그를 찾아 내거나 작동하는 방식을 이해하려고 시도하지만 인터페이스와 abstact 클래스에만 도달하면 성가시다.안드로이드 프레임 워크 클래스의 구현/하위 클래스를 찾는 방법

주셔서 감사합니다.

업데이트 : 좋아, 내부 클래스가 상속하는 FragmentManager에 있습니다. 그러나 컨텍스트와 같은 다른 서비스는 어떤 서비스입니까? 어쩌면 Google은 가끔 도움이되지만 어쩔 수없는 경우에는 어떻게합니까?

자체 결론 : 공식 API 참조는 공개 하위 클래스를 나열합니다. 개인 또는 패키지 개인이 예상되는 경우, 이들은 동일한 패키지 또는 클래스 파일에 있어야합니다.

+0

Java 소스 코드에서 grep하기 위해 AOSP의 jgrep을 사용할 수 있습니다. IDE에 AOSP 코드가없는 경우 매우 유용합니다. – Mixaz

답변

2

Android Studio 검색을 사용하여 Android 소스에서 검색을 수행하면됩니다. 특히이 경우에 당신은 당신이 를 검색하는 것을 의미 FragmentManager에서 확장하는 클래스에 관심이있는 것은 소스를 통해 "... FragmentManager를 확장"

enter image description here

확인 "디렉토리" 라디오 버튼 및 "재귀 적으로" 확인란을 선택하여 상자에 sdk 경로를 지정합니다.

은 다음 미리보기 창에서 당신은 경기가 표시거야 :

enter image description here

또한 this 대답에 정규식을 사용하여 더 많은 특정 검색의 예를 볼 수 있습니다.

+0

감사합니다. 이것은 많은 도움이됩니다. –