0

나는 안드로이드 2.1에서 만들고있는 안드로이드 애플 리케이션이 있습니다. 그러나 이제는 더 큰 구조로 전환 할 때가되었습니다. 2 개 이상의 안드로이드 빌드 버전을 지원하는 가장 좋은 방법은 무엇입니까? 2에 대한 자식 가지를 사용android 다른 빌드 버전

  1. 네이티브 먼저 2.1 응용 프로그램에게 라이브러리 프로젝트 만들기 및 라이브러리의 공통 클래스를 사용하지만 모두를 다시 두 개의 프로젝트를 생성
  2. 를 구축 : 내가 좋아하는 몇 가지 제안을했다 컨트롤러
  3. 를 사용하여 라이브러리 프로젝트, 내가 라이브러리 프로젝트에서이 같은 전화를해야 할 특정 빌드에서 클래스를 사용해야하는 다른 빌드 및 whan 두 개의 별도의 프로젝트 :

    Class<ExpandableListAdapter> adapterClass = Config.getHotelDistrictAdapterClass(); 
         hotelAdapter = adapterClass.getConstructor(String.class).newInstance(HotelDistrictListActivity.this, 
    

    0, hotelList.size(), hotelList, cretedFromAssets);

    Config 클래스는 빌드 버전에 에 포함 된 구성 파일을보고하고 특정 빌드의 클래스 이름을 포함합니다.

    그래서 시나리오는 다음과 같이 somothin 갈 것입니다 : lib 디렉토리 프로젝트가 구성 클래스에 호출 후 설정 클래스는 현재 빌드 (4.2 또는 2.1)에서 설정 파일에 호출되며, 설정 파일은 를 반환합니다 클래스 이름과 구성 클래스는 lib 디렉토리 프로젝트에 클래스를 반환하고 lib 디렉토리 프로젝트는 코드 로 클래스를 실체화됩니다

    hotelAdapter = adapterClass.getConstructor (String.class) .newInstance (HotelDistrictListActivity.this , 0, hotelList.size(), hotelList, cretedFromAssets);

별도의 두 개의 안드로이드 버전의 빌드 유지, 또는 두 광석 더 안드로이드 빌드를 유지하기 위해 사용하는 방법을 제안 더 나은 또는 가장 좋은 방법이 무엇인지 제시하십시오. 감사합니다.

답변

1

AndroidManifest.xml minSDKVersion 및 targetSDKVersion 필드를 확인해야합니다. 그들은 당신이 동일한 애플 리케이션에서 안드로이드 버전의 범위를 지원할 수 있습니다.

Android Min SDK Version vs. Target SDK Version

+0

감사를 수행 할 수 있습니다 16 또는 17 이에 건축 대상을 설정할 수 있습니다 min sdk 및 target sdk의 개념을 이해한다고 생각합니다. 그러나 단 하나의 프로젝트를 사용하고 다른 targetdk로 구축하도록 제안 하시겠습니까? 그렇다면 다른 클래스, 구성 요소, xml 및 구입 한 2.1 및 4.x에 대한 동일한 문제의 다른 솔루션을 지원하고 관리하는 방법에 대한 질문은 여전히 ​​있습니다. – user1796624

0

당신은 쉽게 나는 8로의 minSdkVersion을 설정하거나 7과 빠른 응답을 위해 Manifest.xml 파일에서

+0

그러나 하나의 프로젝트 또는 두 개의 프로젝트 만 사용하고 어떻게됩니까? 2.1과 4.0에서 디자인이 달라지기를 원하십니까? 예를 들어, 4.x에서 액션 바를 사용하기를 원합니다. 두 빌드에서 다른 코드를 어떻게 유지합니까? – user1796624

+0

Build.VERSION.SDK_INT를 사용할 수 있으며 if 조건을 사용하여 안드로이드 ID 4 또는 2.1 –

관련 문제