Android의 플러그인화 및 구성 요소
3529 단어 andriod-공부android
*** , 。***
1. 플러그인화로 해결해야 할 문제
①、65535
②、 apk , ( , 。。。)
③、 、
④、。。。。。。。
2. 개인이 플러그인화된 한마디에 대한 인식: 클래스 마운트 + 반사 + 에이전트.
android가 다시 시작될 때 기회 Boot 타입의 ClassLoader는 Framwork 층을 불러오는 데 사용될 것이라고 생각하지 않아도 됩니다. 이classloader는 앱이 시작될 때 전송됩니다. 물론 저희 프로그램에도 클래스가 있고 클래스 마운트기가 필요합니다.그러니까 한 프로그램에 적어도 두 개의 클래스 마운트가 있다는 거야.
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// classloader
ClassLoader classLoader = getClassLoader();
System.out.println("*-------- classloader---------*"+classLoader);
ClassLoader bootClassLoader=classLoader.getParent();
System.out.println("*-------- classloader-----------*"+bootClassLoader);
}
}
인쇄 결과
07-03 08:10:12.480 3020-3020/? I/System.out: *-------- classloader---------*dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/demo.zzh.com.myclassloader-1/base.apk"],nativeLibraryDirectories=[/data/app/demo.zzh.com.myclassloader-1/lib/x86, /vendor/lib, /system/lib]]]
07-03 08:10:12.480 3020-3020/? I/System.out: *-------- classloader-----------*java.lang.BootClassLoader@7c234e6
우리 프로그램에 클라스로드가 있는지 직관적으로 보여줍니다.그러니까 프로그램 하나에 적어도 두 개는 있어요.
Android ClassLoader 상세 정보
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Shirates에서 상대 선택기를 사용하는 방법 - 1부 -이것은 간단하고 강력한 표현입니다(참조). 오른쪽, 아래, 왼쪽, 위 방향으로 상대적으로 위젯을 얻을 수 있습니다. 올바른 방향의 위젯 올바른 방향으로 입력 라벨을 올바른 방향으로 올바른 방향으로 이미지 :오른쪽 버...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.