实际编程中如果代码需要同时考虑Android1/2的API时,如何在同一份代码中做到兼容?
其实在Android2.2的开发包Sample (/ApiDemos/src/com/example/android/apis/app/ForegroundService.java)中就有很好的例子。
此处主要考虑Android 2.2中 Service类中新添加的接口
startForeground(int id, Notification notification)
stopForeground(boolean removeNotification)
try {
mStartForeground = getClass().getMethod("startForeground",
mStartForegroundSignature);
mStopForeground = getClass().getMethod("stopForeground",
mStopForegroundSignature);
} catch (NoSuchMethodException e) {
// Running on an older platform.
mStartForeground = mStopForeground = null;
}
开始时对这段代码不是很理解,为什么明明可以直接调用还要拐一个弯,通过反射来调用。看到后来的代码明白了,为了兼容Android1的代码。即如果mStartForeground / mStopForeground 为空就表示是Android1的环境。
该种方法在实际工作中也经常用到,可以让客户端代码不要显示依赖于API。
在此有另一个问题,如果是判断API中是否有新加入的类不知此方法是否可行?
分享到:
相关推荐
【标题】:“一份包涵源代码的精品网站” 在标题中,“一份包涵源代码的精品网站”指的是一份包含完整源代码的高质量网站项目。通常,这样的资源对于开发者或者学习者来说非常有价值,因为它提供了深入理解网站构建...
通过对CREO Parametric 2.0的VB API用户向导的介绍与分析,我们可以看到这一工具集不仅具备强大而全面的功能覆盖范围,同时也兼顾了易用性和灵活性的特点。无论是希望提升工作效率的专业设计师还是寻求自动化解决...
在编程领域,API(Application Programming Interface)扮演着至关重要的角色,它是一组预定义的函数、类、对象、常量和协议,供开发者在编写应用程序时调用,以实现与操作系统、硬件、网络等进行交互。易语言作为一...
在iOS应用开发中,安全性和隐私保护是...综上所述,iOS混淆代码工具及垃圾代码生成器工具是提高应用安全性的有效手段,但使用时需兼顾应用的稳定性和合规性,同时也要关注技术的持续发展和更新,以便应对新的安全挑战。
总结,Vue驱动的电商管理后台API接口设计注重用户体验,同时兼顾系统的安全性和可维护性。通过这些接口,前端能够灵活地与后台进行数据交互,实现电商网站的各种功能。了解并熟练掌握这些接口,对于开发高质量的电商...
总的来说,API Star工具箱 v0.7.2是一个强大的API开发和管理平台,不仅提供了丰富的功能,还兼顾了易用性和可扩展性。无论是个人开发者还是团队,都可以从中受益。通过研究其源代码,开发者可以深入学习API设计的...
一个好的API应该让新用户能够快速上手,同时也能让经验丰富的开发者找到高级功能。提供清晰的文档、示例代码和教程是必不可少的。API应该避免过于复杂或冗余的接口,尽量保持简洁,遵循“少即是多”的原则。 再者,...
5. **高效性**:优化性能,确保 API 响应速度快,减少延迟,同时兼顾安全性和可扩展性。 #### 三、RESTful 原则 RESTful API 的设计基于 Roy Fielding 在其论文《架构风格与基于网络的应用》中提出的 REST 原则。...
JeecgBoot 是一款基于代码生成器的低代码开发平台!前后端分离架构 SpringBoot2.x,SpringCloud,Ant Design&Vue,Mybatis-plus,Shiro,JWT,支持微服务。强大的代码生成器让前后端代码一键生成,实现低代码开发! ...
【市场细化策略】的实施需要兼顾新老客户利益,如李凡考虑的那样,要确保渠道下沉以刺激下游客户的销售积极性,同时保护老客户(泉城商贸)的利益。为了防止类似江城市场的问题,李凡计划通过沟通来确保王总理解市场...
同时,版本控制是管理API变化的重要手段,它允许新功能的添加而不破坏现有客户端的兼容性。 在设计API时,还要注意安全性,避免敏感信息的泄露,确保数据传输的安全。API的性能也是重要考量,包括响应时间、吞吐量...
开放平台的Open API设计是现代互联网服务中一个至关重要的组成部分,它允许第三方开发者能够与平台进行数据交互,构建和扩展应用程序。在这个过程中,Open API扮演着桥梁的角色,为开发者提供了一个标准化的接口来...
Microsoft CryptoAPI,作为微软提供的一个加密API,为开发者在Win32环境下提供了安全服务,包括加密、验证等功能,是PKI(Public Key Infrastructure,公钥基础设施)推荐使用的工具。 **一、加密方法** 1. **公用...
总的来说,代码生成工具的设计需要兼顾灵活性、易用性和高效性。它可以帮助开发者摆脱繁琐的代码编写工作,将精力集中在更富有创新性的任务上,提升整体开发效率和代码质量。通过不断的优化和迭代,这样的工具将成为...
jQuery从1.x到3.x的版本迭代,不断优化性能,提高对新特性的支持,并兼顾老版本浏览器的兼容性。jQuery Migrate插件则帮助开发者在升级过程中解决不兼容问题。 总结,jQuery API文档是开发者不可或缺的工具,无论你...
标题中的“天猫新版全屏代码”指的是在天猫网站上应用的一种新型前端技术,它用于创建一个适应各种浏览器的全屏展示效果,特别是用于大图轮播功能。这种全屏代码设计的目标是提供一种无缝、优雅的用户体验,让用户在...
本书是一本内容全面的恶意代码分析技术指南,其内容兼顾理论,重在实践,从不同方面为读者讲解恶意代码分析的实用技术方法。, 本书分为21章,覆盖恶意代码行为、恶意代码静态分析方法、恶意代码动态分析方法、恶意...