您的位置:首页 > 移动开发 > Android开发

Android 系列 1.10通过兼容性库在旧设备上使用新功能

2017-01-06 09:12 281 查看
1.10通过兼容性库在旧设备上使用新功能

问题

您想要使用Android的新功能,但让您的应用程序在旧版本上正确运行。



使用兼容性库 - 这就是他们在那里。

讨论

Android是一个奇妙的系统为用户 - 新功能添加了每个版本。但有一个问题 - 旧的设备没有得到最新版本的Android。低端制造商(低预算设备)可能不会对其设备发布更新。在高端(所谓的“旗舰”设备),用户通常从制造商获得2或3年的更新。但是制造商(和手机运营商)希望用户经常更新,像汽车制造商每年出来的新模式,尴尬的拥有者购买升级,他们真的不需要。

这对我们作为开发人员的缺点是,在现代版本(如Android 7.0中添加的一些功能,将不会存在于用户的设备上。如果你不考虑这一点,你可能会调用现代版本中存在的方法,但不在用户的设备上的库中。这当然会结束了。

解决方案是兼容性库。这些提供常用类(例如Activity)的替换版本,其仅使用在旧版本的Android上找到的特性,但提供较新版本的功能。
现在你可能会认为旧版本很快就消失了,但是看看Android版本控制面板(在版本 - 仪表板中显示)显示,只有“从某个角度来看”才是真的。

图1-45。 Android版本信息中心(截至2016年8月)

注意,Froyo,API 8,是0.1%,这是包括的阈值。 Thuse你会期望它消失任何一天,但事实上,它已经在0.1%几个月。

估计有15亿个Android设备。因此,0.1%的意思是仍有一个一半的活跃用户的Froyo设备。对于Gingerbread仍有2500万有源设备。如果你准备忽略26万潜在客户,罚款。但即使这样也不是那么简单 - Android 4,5,6和7中添加了功能。你如何跟踪哪些功能是什么版本?在大多数情况下,你不需要。也就是说,如果你使用兼容性库!

如果您使用Android Studio创建新项目,该项目将默认使用兼容性库。如果你在一个没有“compat”支持的项目上工作,你可以很容易地添加它。一种方法是通过编辑构建文件来手动添加库,以包括具有坐标的库(参见配方1.19)com.android.support:design:24.1.1;将其添加到maven的pom.xml或Android Studio的app / build.gradle(之后可能需要执行“刷新”或“项目同步”)。在Android Studio上,您还可以选择“应用程序”模块,然后选择模块属性→依赖关系,单击添加,并选择最新版本的兼容性库。

然后,最重要的更改是确保您的活动(任何需要最新设施的活动)基于AppCompatActivity而不是常规活动。

public class MainActivity extends AppCompatActivity {

... ...

}}

还有一些其他地方的“app compat”库进入编码器的视图.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐