《BREW进阶与精通——3G移动增值业务的运营、定制与开发》连载之58---BREW SDK 中的工具

简介: 版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。 https://blog.csdn.net/wireless_com/article/details/5734449

BREW模拟器在3.X以前的版本叫Emulator3.x及以上版本叫Simulator,只有功能上的改进,没有本质的不同,为了方便起见这里都使用模拟器这个概念。BREW模拟器可以用来模拟各种的手持设备,并测试在BREW环境下开发的应用和扩展类。

MIF 编辑器用来创建 MFX MIF 文件。 BREW3.x之前的版本只有MIF文件,MFX 是开发 MIF 过程中使用的 XML 格式中间文件。从3.X开始,MIF是一种从 MFX 文件编译而成的特殊类型资源文件,其中包含有关模块 (MOD) 文件内容的信息。MIF创建之后,将以二进制形式加载到目标设备。 在模拟器上运行应用程序时,也要使用 MIF

在了解MIF编辑器的功能前,先要弄清楚一个概念就是ClassIDBREWClassID必须唯一,任何两个应用或非应用不应该具有相同的ClassID。如果ClassID不能确保唯一性的话,当具有同样ClassID的两类出现在同一手机中,该设备中的AEE就会混淆,而且只能找到其中的一个。由于终端用户在下载应用包的过程中可能将许多应用的组合一股脑地存放在无线设备中,所以无法保证ClassID唯一性的后果是不堪设想的。可以在MIF编辑器中取得ClassID,也可以登陆BREW开发商外联网,通过BREW ClassID生成器来获得。这样就可生成一个扩展名为.bid的文件,可以下载并包含在应用中。每个 BID 文件均包含唯一的 32 位类型 ID,并具有指定的名称(例如 AEECLSID_APP)。 ClassID保存在 MIF 中,而 BID 文件包含在模块来源文件(例如 app.c)中。这使得应用可以根据AEE 提供的ClassID 为其创建实例。

MIF 编辑器中输入必要的信息后,用将 MFX 编译为 MIF,可以使用适于不同设备显示屏的图像创建多个 MIF 应用在编译链接后生成可执行文件,即为模拟器生成 app.dll,为目标设备生成 app.mod 要在模拟器上加载此应用,要指定包含 app.mifapp.dll 的目录。选择执行其中该应用时,模拟器将加载 app.dll,以创建应用的实例并开始执行。

每个 BREW 模块均包含一个或多个应用,也可以是扩展类应用。

MIF 中还包含每个应用的文本字符串,以及在可运行应用菜单中代表应用的一个或多个图形图标。MIF中还包含其它可确定模块权限级别的信息,以及该应用可从其它应用接收到的通知。

在手机上,MIF与包含每个模块目录的文件夹处于同一层次。模块目录的名称与 MIF 的前缀名称相同。模拟器允许MIF 目录的选择独立于包含模块可执行文件的目录,以便在多个设备上模拟应用的执行。

资源编辑器可以创建支持不同手机和语言的资源文件。通过从代码分离资源并在运行时间加载,可以避免将源代码与每个所支持的语言和手机的独立编辑标记相混淆。资源编辑器可以使用以下文件格式:

BRX XML 格式的中间文件,在生成最终输出之前,可以使用资源编辑器对其进行编辑和保存。资源编辑器不要求此中间文件使用 BRX 扩展名,只要文件包含正确的 XML 格式有效数据,不管扩展名是什么,资源编辑器都能够对其进行解释。BAR是由资源编译器作为最终输出的一部分生成的二进制文件。BRH是由资源编译器作为最终输出的一部分生成的头文件。

BREW 3.x 以前的版本使用扩展名为 BRI 的二进制中间格式。为了兼容,资源编辑器仍然支持此格式,但是建议将所有 BRI 文件转换为 BRX 文件。

 

手机设备配置器可用于创建和配置模拟器使用的设备文件,即与手机相关的软硬件属性文件。然后通过模拟器,再在各种设备上测试应用程序。设备文件首先包含的是要配置的设备的图像,一般由实际设备的图片生成。接着是每个设备按键的图像区域,然后定义按键以及每个按键要传送给应用的事件代码,还可以定义设备的屏幕大小、字体、支持的语言和颜色深度。

由手机设备配置器组织的设备的项目包括以下组件:设备文件(QSC/DPK),对常规设备属性和特定的设备对象及其属性等信息进行编码。另外,它还包含设备图像文件的引用。位图图像文件包括主图像文件和可选的按下按钮产生的图像文件。另外,设备和图像文件必须位于同一目录下。

            对于3.x及其以上版本,CP/SP一般只使用手机设备配置器来浏览手机设备的信息,而不做其他的修改操作。

 

 

 

 

 

目录
相关文章
|
算法 IDE 开发工具
火爆全网开源额温枪同平台之华大HC32L136 SDK开发入门
火爆全网开源额温枪同平台之华大HC32L136 SDK开发入门
255 1
|
机器学习/深度学习 人工智能 PHP
百度AI开发平台图像增强与特效API-SDK接口PHP实战记录
百度AI开发平台图像增强与特效API-SDK接口PHP实战记录
151 0
百度AI开发平台图像增强与特效API-SDK接口PHP实战记录
|
3月前
|
数据采集 开发工具 Python
海康威视工业相机SDK+Python+PyQt开发数据采集系统(支持软件触发、编码器触发)
该系统基于海康威视工业相机SDK,使用Python与PyQt开发,支持Gige与USB相机设备的搜索及双相机同时显示。系统提供软件触发与编码器触发模式,并可在数据采集过程中实时保存图像。此外,用户可以调节曝光时间和增益,并进行信息输入,这些信息将被保存至配置文件以便下次自动加载。参数调节与实时预览等功能进一步增强了系统的实用性。
205 1
|
3月前
|
存储 监控 开发工具
Django 后端架构开发:手机与邮箱验证码接入、腾讯云短信SDK和网易邮箱
Django 后端架构开发:手机与邮箱验证码接入、腾讯云短信SDK和网易邮箱
63 0
|
4月前
|
NoSQL 开发工具 数据库
开发与运维测试问题之应用启动报 Can not load this fake sdk class 的异常如何解决
开发与运维测试问题之应用启动报 Can not load this fake sdk class 的异常如何解决
|
6月前
|
开发工具 CDN 容器
基于Html+腾讯云播SDK开发的m3u8播放器
周末业余时间在家无事,学习了一下腾讯的云播放sdk,并制作了一个小demo(m3u8播放器),该在线工具是基于腾讯的云播sdk开发的,云播sdk非常牛,可以支持多种播放格式。
236 1
|
5月前
|
API 开发工具
抖音sdk,抖音开发api接口
抖音sdk,抖音开发api接口
|
API 开发工具 C#
一套基于 .NET Core 开发的支付SDK集 - paylink
一套基于 .NET Core 开发的支付SDK集 - paylink
132 1
|
6月前
|
Java 开发工具 Maven
Android SDK开发的那些事(1),已整理成文档
Android SDK开发的那些事(1),已整理成文档
|
6月前
|
API 开发工具 C#
[相机开发] VC++联合相机SDK开发
[相机开发] VC++联合相机SDK开发
77 0
下一篇
无影云桌面