前沿:
在android开发过程中,往往会需要创建组件层面的第三方包,下面将对android对第三方包支持的方式种类,各试用范围,优缺点进行总结。最后分析当前开发过程中,一些大的平台的组件实现方式。
1. 导出jar文件方式,实现第三方组件
1.1. 实现过程:
选择项目--> 点击右键,菜单,选择Exportà选择java/JAR -->选择类和资源文件(推荐只选择类文件)-->选择导出文件路径,导出JAR文件。
1.2. 适用范围:
合适创建无资源的第三方组件。
补充说明:
包含资源的第三方组件也可以实现,但实现的方式比较繁琐,且不是标准做法,一般不建议这么做,如需实现,一般用以下两种方式
【1】 资源放到组件包JAR文件中,类中访问资源时,通过获取组件资源的方式
例:ImageIcon image = new ImageIcon(this.class.getResource("icons/logo.gif"));
java.net.URL imgURL = GUITest.class.getResource("/images/Snap1.jpg");
【2】 资源放到组件包JAR文件外,在组件中访问资源,通过获取运行环境中的R资源的名称方式获取(注意如果直接用组件项目中R类获取资源的方式时,会有问题,运行 环境会根据资源的int值,在运行的项目中找对应的资源)
1.3. 优缺点:
优点:实时过程简单,快捷,符合第三方组件的封装特点
缺点:不能很好的支持资源的封装
2. 项目library引用方式
2.1. 实现过程:
选择项目--》 点击右键,菜单,选择Properties--》选择Android --》右下方的Library--》选择Add,添加现有的项目。
2.2. 适用范围:
在大的项目实施过程中,共享工程中设置资源文件供项目调用
2.3. 优缺点:
优点:
支持资源共享
在Library方式下,组件中的资源会自动生成R文件,在应用项目中,可以直接通过R文件对资源进行引用
缺点:
需要项目之间应用,不适合项目封装
3. 当前第三方平台组件实现方式
3.1. CNZZ移动统计客户端组件实现方式:
通过jar文件方式生成组件,在组件中不包含资源文件
3.2. Admob广告客户端组件实现方式:
通过jar文件方式生成组件,对涉及到的窗体布局资源,通过代码强写完成。
3.3. 微云游戏平台组件实现的方式:
通过jar文件方式生成组件,资源通过外部导入引用项目中的方式实现。(过程用到了批处理,比较复杂)。
4. 当前我们平台的组件实现的方式
通过jar文件方式,资源也封装到组件中,通过包的方式去读取资源。
分享到:
相关推荐
universal-image-loader,图片加载第三方包
ant 涉及第三方包问题 打包第三方包 或者添加第三方包 ant 涉及第三方包问题 打包第三方包 或者添加第三方包 ant 涉及第三方包问题 打包第三方包 或者添加第三方包 ant 涉及第三方包问题 打包第三方包 或者添加第三...
java数据库第三方包和配置java数据库第三方包和配置java数据库第三方包和配置java数据库第三方包和配置java数据库第三方包和配置java数据库第三方包和配置java数据库第三方包和配置
该资源应用于java里的excel第三方包
生成swing 客户端exe文件! 加载第三方包文件
python连接gbase数据库的第三方包,这个是官方提供的资源,有不同版本支持python2和python3,网上很难找到!
包括所有《机器学习实战》所有的第三方包,节省大家寻找的时间了
Java生成UUID使用的第三方包,生成UUID的第三方包,
基于swing的拓扑图第三方包,可以快速实现网络拓扑结构的动态图形。
导入jar出现包冲突,可以删除其中一个来解决。都想保留的话可以通过工具修改包名来解决。以gson为例修改包名,可供参考,欢迎指正。
Android通过IPackageStatsObserver.aidl 、PackageStats.aidl两个AIDL文件获取第三方应用的占用大小,包括缓存、数据、应用大小,经验证和手机设置里面显示的大小完全一致。。。。。。如果还需要其他比如清除缓存之...
android 6.0下使用Telestax提供的JAIN jar包实现SIP协议栈。
pylab包下载,使用matplotlib之前需要下载此第三方包
unit3d 第三方包 UniWeb 方便使用 http请求以及websocket
Eclipse RCP中使用第三方包,图文并茂很不错。
java開發必備,導入導出excel文件
java拓扑图第三方包(twaver.jar)试用版
myeclpse7.5fat jar 将第三方包导入项目
xlwings能够非常方便的读写Excel文件中的数据,并且能够进行单元格格式的修改;xlwings可以和matplotlib以及pandas无缝连接;xlwings还可以调用Excel文件中VBA写好的程序,也可以让VBA调用用Python写的程序;...
xcode 中 CoreData的第三方包的使用