我的问题如下:我可以在市场上有一个应用程序,但是当用户下载它时,根据用户运行的操作系统,她会下载不同的文件 - 一个文件用于2.2,另一个用于2.1,第三个用于1.5等?
答案 0 :(得分:4)
不,那是不可能的。但是,您可以让应用程序以不同的方式响应设备运行的操作系统级别。使用android.os.Build
查找您所使用的版本,然后使用反射或条件类加载来相应地路由您的行为。
答案 1 :(得分:1)
或者您可以为每个目标操作系统版本创建不同的应用程序,以不同方式命名其包(例如com.example.16,com.example.20 com.example.21),并在每个Android.xml中指定最小和最大API等级到你的目标。因此,2.1版本将mini和max API级别设置为7.然后您将所有这些级别以相同的名称发布到市场。
当使用Android 2.1的用户搜索您的应用时,他只会看到包含com.example.21的名称,从而解决您的问题。
答案 2 :(得分:1)
似乎应该注意到,Swype解决此类问题的方法是首先下载“安装程序”应用程序。 (它不是来自市场,但它也可以是)
Swype的安装程序使用登录名和密码联系Swype服务器,并为您的Android设备下载并安装相应的.apk。
一般来说,这种方法对于较小的开发人员来说是不切实际的,因为它需要服务器设置等。但这是我认为应该提及的另一种可能性。