android不同的构建版本

android不同的构建版本,android,versions,android-build,android-version,android-support-library,Android,Versions,Android Build,Android Version,Android Support Library,我有一个安卓应用程序,我正在安卓2.1中构建。但现在是时候换一个更大的建筑了。支持2个或更多android构建版本的最佳方式是什么。 我有一些建议,比如: 为2个版本使用git分支 将本机的First2.1应用程序作为库项目,并创建两个单独的项目,使用库的公共类,但 重写所有控制器 使用库项目,两个独立的项目用于不同的构建,我必须使用特定构建中的类 必须从库项目中调用类似的内容: Class<ExpandableListAdapter> adapterClass = Config.g

我有一个安卓应用程序,我正在安卓2.1中构建。但现在是时候换一个更大的建筑了。支持2个或更多android构建版本的最佳方式是什么。 我有一些建议,比如:

  • 为2个版本使用git分支
  • 将本机的First2.1应用程序作为库项目,并创建两个单独的项目,使用库的公共类,但 重写所有控制器
  • 使用库项目,两个独立的项目用于不同的构建,我必须使用特定构建中的类 必须从库项目中调用类似的内容:

    Class<ExpandableListAdapter> adapterClass = Config.getHotelDistrictAdapterClass();
            hotelAdapter = adapterClass.getConstructor(String.class).newInstance(HotelDistrictListActivity.this,
    
    Class adapterClass=Config.getHotelDistrictAdapterClass();
    hotelAdapter=adapterClass.getConstructor(String.class).newInstance(HotelDistrictListActivity.this,
    
    0,hotelList.size(),hotelList, 信托资产)

    其中Config类将协商包含的配置文件 在生成版本中,并包含特定 建造

    因此,这个场景将是这样的:lib项目将 调用Config类,然后Config类将调用Config 在当前版本(4.2或2.1)中,配置文件将返回 类名和Config类将把类返回到lib Project和Lib项目将用代码实例化该类 :

    酒店适配器= adapterClass.getConstructor(String.class).newInstance(HotelDistrictListActivity.this, 0,hotelList.size(),hotelList,cretedFromAssets)

  • 请建议为两个android版本维护两个独立版本的更好或最好的方法,或者建议您用于维护两个或更多android版本的方法。
    谢谢

    您应该看看AndroidManifest.xml minSDKVersion和targetSDKVersion字段。它们允许您在同一应用程序中支持一系列android版本


    您可以轻松地将MinSDKVersion设置为8或7,并将建筑目标设置为16或17
    这可以从Manifest.xml文件中完成

    感谢您的快速回复,我想我理解min sdk和target sdk的概念。但您是否建议只使用一个项目,并使用不同的targetsdk构建它?如果是这样的话,还有一个问题是如何支持和管理2.1和4.x版本中同一问题的不同类、组件、xml和不同解决方案,但我是否只使用一个或两个项目,如果我希望2.1和4.0版本中的设计有所不同,该怎么办?例如,我想开始使用4.x中的操作栏。如何维护这两个版本的不同代码?您可以使用Build.VERSION.SDK_INT,并使用if条件来决定在android id为4或2.1的情况下如何操作