2013-11-14 2 views
1

특정 전화선에서만 JAR에 액세스 할 수 있습니다.Android - 조건부 액세스 Jar

JAR을 참조하는 코드를 조건부로 호출하여 다른 전화기에 링크 오류가 발생하지 않도록하는 방법이 있습니까?

E.G.

if(JARisAvailable) 
    functionFromJAR(); 
else 
    functionNotFromJAR(); 
+0

많은 의미가 없습니다. Android에서 JAR은 런타임 구성이 아닌 컴파일 타임 구성입니다. 이것은 일종의 공급 업체 SDK 부가 기능입니까 (예 :' '를 사용하고 있습니까?)? – CommonsWare

답변

0

당신은 JAR을 의미하지 않습니다. JAR 파일은 모두 APK에서 제공됩니다. 디바이스가 가지고있는 특정 API 레벨에 기반하여 프레임 워크 내에서 사용 가능할 수도 있고 사용 가능하지 않을 수도있는 패키지를 언급하고 있습니다.

물론이 작업을 수행 할 수 있지만 특정 방식으로 수행해야합니다. 사용할 수없는 API를 사용하는 모든 코드를 별도의 클래스 (또는 클래스)에 넣어야합니다. 장치가 사용하려는 API를 지원하는지 확인해야합니다. 그렇다면 별도의 클래스 (또는 클래스)의 인스턴스를 만들어 사용할 수 있습니다.

여기서 비밀은 클래스가로드 될 때만 (예 : 사용하는 모든 클래스가 존재하고 호출하는 모든 메서드가 존재하는지 확인) VM을 확인하고 VM 만 클래스를 처음 사용할 때로드합니다 (새 인스턴스 만들기 또는 정적 멤버 참조 또는 정적 메서드 호출). 존재하지 않는 클래스 나 메소드를 사용하는 클래스를로드하지 않는 한 문제는 발생하지 않습니다.

예를 들어 http://android-developers.blogspot.de/2010/07/how-to-have-your-cupcake-and-eat-it-too.html을 참조하십시오.