我有一个关于Android编程的问题。我打算编写Androiod 2.2及更高版本的应用程序(包括平板电脑)。我面对的问题是,各种版本都有不同的API新闻,例如下载管理器在2.3中首次完全实现,在2.2中我必须手动编程。我正在考虑从模块构建我的应用程序,其中每个模块都适用于特定的Android操作系统版本。你可以把它想象成主要的应用程序,根据实际的操作系统,它会触发Android 2.3 API下载管理器或(在2.2的情况下)启动我自定义的下载管理器。针对特定Android版本的编程
问题是,如何在代码中解决它?因为,当我进入我的2.2项目的.java文件,下载管理器导入并使用它的代码时,我无法构建应用程序。我发现了DexClassLoader解决方案,我只安装应用程序的核心和其他“模块”,我将根据当前设备的API级别从外部来源读取。这听起来像“肮脏”的做法,是不是有什么“更清洁”如何解决特定的代码片段,根据API的水平不同?
感谢亚
您需要确保2.2代码不会触及任何不存在的内容,因此请将下载管理器分成两类,downloadManagerOld和downloadManagerNew,并在必要时调用它们。 – Rob
是的,但如果我在2.2项目中同时使用了两个版本(旧版本和新版本),我将不会构建我的项目,因为新下载管理器的代码将是未知的 – Waypoint
将版本设置为2.3,将minSDK设置为2.2。 – Rob