BREW SDK 版本的区别(上)

简介: 版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。 https://blog.csdn.net/wireless_com/article/details/6507739 BREW1.0的功能有限,而BREW1.1 则丰富了很多。
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。 https://blog.csdn.net/wireless_com/article/details/6507739

BREW1.0的功能有限,而BREW1.1 则丰富了很多。BREW1.1首次引入了安全类服务,ICipher可以简单加解密信息,IHash实现数据的离散化,通过IRSA 实现非对称安全算法。BREW1.1提供了对地址本的支持(IAddrBook和IAddrRec),将地址本作为数据库的特例,同时铃声的支持(IRingerMgr)使BREW应用可以直接将音乐文件设置为手机铃声,更重要的是引入了位置服务接口IPosDet, 极大的丰富了BREW的应用的种类。

            内存管理方面,BREW1.1引入了三个新接口IPeek, ISource 和ISourceUtil来处理流数据。针对互联网服务,BREW1.1给出了IWeb,IWebOpts以及IHtmlViewer使应用可以轻松访问互连网上的HTTP服务器并显示基本的HTML页面。BREW1.1中的ILicense接口允许应用能控制自身的用户使用权限,使资费方案更加灵活,而IQueryInterface则提供了获取接口的另一种方法。

 

在我国,第一商用的版本是2.0。BREW 2.0 开始提供对蓝牙的支持(IBTAG,IBTSDP和IBTSIOPORT),遗憾的是在BREW中可以使用蓝牙功能的手机一直没有在中国上市。在显示方面,IFont可以测量和重绘文字,应用可以针对不同的内容显示不同的字体。

针对多媒体服务,IMedia是BREW中所有多媒体对象的基类。在图像处理方面,通过IBitmap接口可以将内存中的位图直接在屏幕上操作,IDIB继承于IBitmap实现了一个与设备无关的位图结构,ITransform则可以实现对位图缩放、旋转等复杂一些的图像处理。IImageCtl可以在一个带滚动条的框架中浏览图像,并且获得图像的属性信息。ISprite接口实现了类似photoshop中的图层概念,可以方便的叠加和重绘图形。

            对于系统服务中的内存管理,IClipboard能够是应用完成标准的copy和paste功能,不同应用间可以使用IClipboard来实现共享内存。IRamCache提供了最近最少使用页面置换算法,是为虚拟页式存储管理服务的,通过堆存储区满足了TTL机制中的缓存功能。内存的虚拟存储管理,是现在最通用,也是最成功的方式—— 在内存有限的情况下,扩展一部分外存作为虚拟内存,真正的内存只存储当前运行时所用得到信息。这无疑扩充了内存的使用效率,极大地提高了CPU的并发度。虚拟页式存储管理,则是将进程所需空间划分为多个页面,内存中只存放当前所需页面,其余页面放入外存的管理方式。另外,BREW 2.X中的IUnzipAStream支持流数据的解压缩和存储。

            对于电信服务,IVocoder可以捕捉和播放话音信道鹅的内容以及其他的音频文件。

            对于网络服务,IDNS开始联网应用提供 DNS 查询功能。

对于安全服务,BREW2.0开始提供信道安全方法,ISSL支持SSL/TLS的网络连接,IX509Chain被用来管理和验证X.509 的证书链,IHashCTX进一步强化了hash数据的处理功能。也就是说,到了BREW2.0,BREW所提供的9大类服务基本成型。

BREW2.1对于多媒体服务中的三维图像处理提供了支持(I3D,I3DModel和I3DUtil),但由于效果不太理想,在更高版本中废弃了这三个接口。同时,BREW2.1提供了对open GL ES 的支持(图11-11)。

 

 


       BREW3.x相对于BREW2.x 有了很大的变化,重写了很多接口的内部实现。3.0作为一个过渡版本没有在中国商用,BREW3.1.5是一个稳定的商业版本,而BREW3.1.5SP01则进一步增强了BREW3.1.5的功能并解决了其中存在的一些问题。

            多媒体服务方面,IBitmapDev提供了众多的方法来处理设备位图。通信服务方面,IPort提供了一个通用的接口来实现双向数据流的收发。系统服务方面,IAClockCtl允许创建模拟时钟的显示,IRscPool可以管理资源被访问的生命周期。IThread提供了类似多线程的方法,使并行处理更加方便。网络方面,IWebEng允许用户开发自己的协议栈(基于客服端/服务器模式的协议栈)。

文件系统服务方面,爱上支持4GB以上的文件空间,支持MMC/SD等外存卡的读写,统一了图片/音乐/视频/主题/文字/声音/链接文件路径,增加了ACL目录访问权限控制。BREW 3.X中的资源管理提供了控制资源访问的一般方法,能够协调和管理资源的获取和释放,当资源状态发生变化时向注册的相关对象发送通知,并可以动态地判定一个应用使用相关资源时的优先级(图11-12)。


同时,BREW3.X支持复杂短信功能,完全实现短信协议 IS-637。就短信收发而言,可以对短信属性配置和读取接收方号码(MO),发送方号码(MT),时间信息等属性,短信内容包括ASCII,UNICODE和BINARY。就短信管理而言,可以在手机和RUIM卡上存储和读取短信,删除短信,更新短信,实现统一的管理。


 

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wireless_com/archive/2010/07/12/5728889.aspx

目录
相关文章
|
前端开发 安全 开发工具
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
1057 90
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
|
编译器 API 定位技术
API和SDK的区别
API 和 SDK 的区别在于:API 是一组定义了软件组件之间交互规范的接口,用于实现不同软件组件之间的通信;而 SDK 是一个全面的工具集合,包含 API、编译器、调试器、文档等,用于特定平台的应用程序开发。SDK 范围更广,内容更丰富,更具体和具象化,适合复杂的开发需求;API 则更加抽象,侧重于功能的定义和调用方式。
|
前端开发 Java Shell
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
1001 20
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
|
开发工具
钉钉新版本sdk中如何获取用户手机id
钉钉新版本sdk中如何获取用户手机id
|
编译器 API 定位技术
API和SDK的区别
API(应用程序编程接口)和SDK(软件开发工具包)的主要区别在于范围、内容、抽象程度及使用方式。API定义了软件组件间的交互规则,范围较窄,更抽象;而SDK提供了一整套开发工具,包括API、编译器、调试器等,范围广泛,具体且实用,有助于提高开发效率。
2774 0
|
消息中间件 负载均衡 网络性能优化
消息队列 MQ产品使用合集之 终端sdk和云端sdk的区别是什么
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
存储 人工智能 Java
2024创建boot时 项目SDK11不支持所选的版本Java21 请选择较低版本的java 解决方案
2024创建boot时 项目SDK11不支持所选的版本Java21 请选择较低版本的java 解决方案
622 2
|
缓存 JavaScript 前端开发
微信 JS-SDK Demo “分享信息设置” API 及数字签名生成方法(NodeJS版本)
微信 JS-SDK Demo “分享信息设置” API 及数字签名生成方法(NodeJS版本)更新时间(2020-10-29)
|
机器学习/深度学习 人工智能 Java
人工智能平台PAI使用问题之Java SDK支持哪些版本
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
数据采集 缓存 Linux
🔥🔥🔥最稳定好用的跨平台SDK版本管理器(version-manager)
version-manager (vm)是一个全平台的、精简的版本管理工具,旨在无缝管理多种编程语言,包括新兴语言如 vlang、zig 和 typst。与fnm、sdkman等工具不同,vm专注于提供流畅、稳定的体验,通过内置机制隔离和缓存爬虫数据,避免插件需求。它支持代理设置和多线程下载,优化了国内用户下载速度。vm覆盖40+语言和工具的安装、切换及环境管理,简化了资源查找和SDK管理。欢迎访问 <https://github.com/gvcgo/version-manager> 参与项目。演示动图分别适用于MacOS、Windows和Linux。
🔥🔥🔥最稳定好用的跨平台SDK版本管理器(version-manager)

热门文章

最新文章