[发明专利]一种java应用中加载图片的方法和装置有效
申请号: | 200910110103.2 | 申请日: | 2009-11-06 |
公开(公告)号: | CN101729753A | 公开(公告)日: | 2010-06-09 |
发明(设计)人: | 胡华涛 | 申请(专利权)人: | 深圳市同洲电子股份有限公司 |
主分类号: | H04N5/00 | 分类号: | H04N5/00;G06F9/445 |
代理公司: | 广州三环专利代理有限公司 44202 | 代理人: | 郝传鑫;潘中毅 |
地址: | 518129 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 java 应用 加载 图片 方法 装置 | ||
技术领域
本发明涉及机顶盒领域,尤其涉及一种java应用中加载图片的方法和装置。
背景技术
目前机顶盒上已经开始流行采用内嵌java虚拟机,java是一种编程语言,由sun公司发布,通过java语言开发机顶盒软件,尤其是机顶盒中间件,java编程有其独特的优势,如:平台无关性,安全性,丰富的功能完善的包,扩展性强等等,但在嵌入式上采用java也有一些劣势,特别是性能问题。比起传统的利用C语言开发的机顶盒软件,java在机顶盒上运行的效果要慢,我们这里举个例子,加载图片资源,传统的C语言开发,图片资源会被存储为二进制格式,C语言直接读取,进行必要的解码后就可以显示出来。
而现在采用java加载图片,一般采用如下方式:java中awt包加载图片时,通过Toolkit.getDefaultToolkit().getImage(″image/background.jpg″)形式加载图片,其内部实现原理为:在当前的java程序运行时配置的classpath的image路径下查找图片,如果找到,则读取之。
但这种方式支持的功能有限,当java应用程序导出成jar文件发布后,通过网络下载保存到本地机顶盒,再由机顶盒的应用管理器通过自定义的类加载器classloader加载运行时,图片无法正常加载显示,原因是这种方式只能在启动虚拟机时配置的类路径classpath目录下查找,不支持智能的在当前运行的jar应用包所在的路径中查找,所述jar是一种压缩文件包,通常是开发时要引用通用类,打成jar包便于存放管理。
为了解决这些问题,现有的做法是重载getImage方法,将当前运行的jar应用包所在的绝对路径传入getImage方法,然后利用java的zip包提供的功能从对应的jar应用包中读取图片数据,然后再通过native方法传到C语言底层中去构造图片,最后显示出来。
发明人在实施过程中发现上述现有解决方案存在两方面缺点,首先现有解决方案通过java方法把图片数据读取到java层,然后又通过native把数据传递到C层,不仅浪费时间,而且浪费内存;其次现有解决方案没有解决如何获取到当前jar应用包在机顶盒中的绝对路径,仍然不支持加载一个从网络上下载下来的jar应用包中的图片,如果需要支持加载jar应用包中的图片,则需要java的开发人员和机顶盒应用管理器的开发人员事先协商,非常不方便。
发明内容
鉴于上述现有技术所存在的问题,本发明实施例提供了一种java应用中加载图片的方法和装置,通过获取存储jar应用包的绝对路径,直接在C语言底层解压并找到需要加载的图片,减轻了机顶盒开发人员工作的同时,实现了高效加载图片,提高了效率。
为了解决现有技术存在的问题,本发明实施例提供了一种java应用中加载图片的方法,用于机顶盒中间件中,包括:
Java层获取存储jar应用包的绝对路径;
Java层将获取到的所述存储jar应用包的绝对路径和jar应用包中预先写入的需要加载的图片的相对路径传到C语言底层中;
C语言底层获取到存储所述jar应用包的绝对路径后,解压打开所述jar应用包,根据所述jar应用包中的需要加载的图片的相对路径找到对应图片,读出所述图片的二进制数据到缓存中;
C语言底层调用图形引擎,根据所述图片的二进制数据构造出图片并解码显示。
相应的,本发明实施例还提供了一种广告系统,用于机顶盒中间件,包括获取单元,路径传递单元,图片查找读取单元和解码显示单元,其中:
所述获取单元,用于获取存储jar应用包的绝对路径;
所述路径传递单元与所述图片查找读取单元相连,用于将所述获取模块获取到的存储所述jar应用包的绝对路径和jar应用包中预先写入的需要加载的图片的相对路径传到所述图片查找读取单元中;
所述图片查找读取单元,用于根据获取到的存储所述jar应用包的绝对路径,解压打开所述jar应用包,根据所述jar应用包中的需要加载的图片的相对路径找到对应图片,读出所述图片的二进制数据到缓存中;
解码显示单元,用于调用图形引擎,将存储在所述图片查找读取单元的缓存中的图片的二进制数据构造出图片并解码显示。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市同洲电子股份有限公司,未经深圳市同洲电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910110103.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电视节目的返回方法
- 下一篇:一种带硬盘的机顶盒