您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > BlackBerry开发平台介绍及API应用
BlackBerry开发平台介绍及API应用邓明轩中国区技术经理ResearchInMotion议程•BlackBerry开发平台介绍•问答•BlackBerryAPI介绍•问答BlackBerry开发平台介绍BlackBerry架构•由BlackBerryEnterpriseServer提供后端服务•由BlackBerry智能终端提供前端服务•提供了安全,可靠,快速,基于PUSH技术的无线通道BlackBerryEnterpriseServerWeb及应用服务器BlackBerry智能终端为企业提供无线应用平台混合方式BlackBerryBrowserBlackBerryJVM集成部署管理BlackBerryEnterpriseServerWeb及应用服务器企业信息系统推送代码转换优化加密存取控制连接BlackBerry智能手机J2EE,.NET&DominoWebServicesCorporateApplicationServersWebServers通过J2ME访问原有应用,提供了最大的灵活性将Web页面转换成应用程序,提供更多的灵活性直接在浏览器上运行原有应用,快速有效为开发人员提供多样化的开发方式开发效率可伸缩性混合型应用J2ME客户端浏览器BlackBerry无线应用平台协议•标准协议(HTTP,HTTPs,TCP/IP)•标准语言(XML,xHTML,cHTML,HTML,WML)•高安全性(3DES,AES,SSL/TLS)•可靠的数据推送机制•多种网络支持(GPRS,EDGE,1XRTT,iDEN,Mobitex,Datatac)BlackBerryHandheldWirelessNetworksBlackBerryEnterpriseServerMobileDataServiceEmailServicesEncryption,TransportServicesSAPOracleSiebel…CorporateFirewallCorporateMessagingServersCorporateApplicationServers浏览器应用•应用范围•所有通过浏览器访问的Web应用•开发人员要求•Java,HTML,JavaScript等•技术点•利用”推送”技术,实时向手机推送Web页面•定义手机页面布局•应用效果•当页面更新或满足一定条件下进行•邮件提醒•频道推送•应用举例•产品更新通知•企业新闻提醒•差旅审批通知浏览器应用开发要点•根据浏览器类型调整页面•根据httprequestheader判断请求来自一般的浏览器还是BlackBerry浏览器,以呈现不同的页面.•部分HTMLTag,CSS,Javascript不被支持•需要对部分HTMLTag,CSS,Javascript进行修改,尽量保持页面简单,以展现内容为基本•考虑手持设备的操作习惯•考虑手持设备的屏幕大小,结合手持设备基于滚轮/traceboll的操作习惯对页面进行调整•结合PUSH技术•内容的提醒多使用push技术,方便最终用户并节省流量J2ME应用•应用范围•所有企业应用系统•开发人员要求•Java,J2ME•掌握BlackBerryJavaDevelopmentEnvironment(JDE)•技术点•利用”推送”技术,实时向手机推送信息数据•自定义客户端界面•应用效果•根据应用条件,向手机推送数据•通过手机上的Java应用访问数据,并进行操作•手机端支持离线信息处理•实现对手机通话,蓝牙等功能的高级调用•应用举例•移动办公•ERP,SFA,CRM等•各种行业应用J2ME客户端开发效率可伸缩性BlackBerryJavaAPI•支持标准的J2MEAPI,标准的J2ME程序可以直接在BlackBerry手持设备上运行•提供丰富的BlackBerryJavaAPI:•BlackBerry用户界面API:定义自己的用户Screen,在Screen上可以增加各种类型的域,可以增加自定义的菜单按钮,可以自定义事件响应方式•数据存储API:可以在设备本地保存数据•网络通讯API:可以通过PGRS,WiFi连接后端系统,充分运行推送技术•电话功能API:可以拨打电话,发送短信,彩信•应用集成API:可以和邮件和个人信息管理程序交互•GPSAPI:可以定位设备的位置,运用在不同的应用程序中•蓝牙API:用于访问蓝牙设备•后台运行的程序,用于侦听推送数据•增强加密方式的支持BlackBerryIDE•集成开发界面BlackBerryJDE•BlackBerryJDE为创建BlackBerry应用程序提供了一个完整的开发测试环境•是RIM的主要开发平台•要求﹕•JavaSEJDKv5•WindowsVista或XP集成开发环境•调试•全面的断点(breakpoint)支持•在中断時,可以查看及修改变量•查看线程(Threads)、锁(Locks)、对象(Objects)和进程(Processes)•开发•提供资源编辑器•优化•内存的统计数据•代码分析器(SourceCodeProfiler)BlackBerryJDE•文档•Javadocs和JDE帮助•应用程序样例•在JDE安装包上包括服务器端各客户端代码样例•每个样例都针对特定的API•每个样例都附加有说明文档,让开发者更容易理解•样例中都没有使用localization功能,让初学者更容易理解BlackBerryJDEBlackBerry的Eclipse插件(Plugin)•Eclipse是一个强大的开源综合性开发环境•BlackBerryJDE插件在熟悉的Eclipse环境内提供BlackBerry开发功能•规格要求•EclipseClassic3.3.1•WindowsVista或XP•JavaSEJDKv5或v6BlackBerryEclipseplug-in•集成环境直接支持Localization功能•提供了BlackBerry资源文件的编辑界面•可以支持不同版本的JDE•可以通过安装JDE包来引入不同版本的JDE环境•安装包自带4.3.0.版本的JDE•和模拟器直接集成•模拟器已经集成到Eclipse环境中,模拟器的输入可以直接显示在Eclipse控制台中.BlackBerry的Eclipse插件(Plugin)终端和服务器端的模拟器•模拟器BlackBerry手机模拟器•手机模拟器,可以模拟:–网络连接–电池电量–microSD卡–GPS定位–相机功能–USB连接–来电•BlackBerry®MDS-CS模拟器•处理BlackBerry模拟器的HTTP和socket连接•可以在BlackBerry模拟器上测试推送(push)功能•BlackBerry电子邮件模拟器•在BlackBerry手机模拟器上测试电子邮件收发功能•可以独立运行或者是和POP3结合BlackBerry服务器端模拟器BlackBerry程序签名(CodeSigning)•敏感度高的API受BlackBerry程序签名的保护•如果应用程序中调用了受保护的API,但是没有签名的话,可以在模拟器中运行,但是不能在真实设备上运行.•受保护的API有:•RuntimeAPIs•BlackBerryApplicationAPIs•CryptographyAPIs•CerticomAPIs•开发人员可以使用签名工具(SignatureTool)为自己的应用程序签名.•签名需要使用签名密钥(CodeSigningKey)•如何获得签名密钥(CodeSigningKey)?•在以下网页登记﹕•RIM:•Certicom:•需要付费(20$)•通过电子邮件发送签名密钥.•可以将签名密钥导入签名工具中.每位开发者只需要登记一次!密钥没有期限,可以重复为所有应用程序签名!BlackBerry程序签名(CodeSigning)BlackBerryAPI介绍BlackBerryJ2ME应用结构BlackBerry手持设备应用结构•CLDC,MIDP和BlackBerryAPIs是对开发人员可见的BlackBerryUIBlackBerry用户界面•BlackBerry使用类似于Java®Swing的可扩展的用户界面注意:BlackBerrydeviceUI和MIDPUI不能在同一个应用中使用MIDPUIBlackBerrydeviceUI•javax.microedition.lcdui•net.rim.device.api.ui•net.rim.device.api.ui.container•net.rim.device.api.ui.componentBlackBerryMIDPUI-其实就是MIDPUI?MIDPUI分为高级界面和低级界面两种•高级界面•在不同的BlackBerry设备上移植性较好•有较高层次的抽象•不能完全控制界面的展现模式•使用javax.microedition.lcdui.Screen•低级界面•较低层次的抽象•用于设备需要完全控制界面展现和事件的应用,如游戏•使用javax.mircoedition.lcdui.Canvas和javax.microedition.lcdui.GraphicsDisplayableDisplayScreenCanvasAlertListTextBoxFormItemStringItemImageItemTextFieldDateFieldGaugeChoiceGroupBlackBerryUI类的结构(MIDP)其实就是MIDletUI,和BB没关系?BlackBerryDeviceUIBlackBerryUI组件•Field组件•最低层次的UI组件•可以处理自身的显示•Manager组件•用于显示各种Field•处理所包含的Field的显示的相关事件处理•处理滚动•Screencomponent•必须由一个管理它的组件•可以放入或者是移出显示堆栈中FieldManagerScreenBlackBerryUIUI组件,各种不同的field类型描述RichTextField显示格式化的文字EditField显示可以被编辑的文本框ListField显示可以被选中的列表框BitmapField显示一个图片DateField显示时间BlackBerryUIUI组件-manager管理组件的显示方式•让管理组件中包含的field以特定的方式显示•将paint事件传递给所有包含的field•处理滚动FieldtypeDescriptionVerticalFieldManager垂直显示所包含的fieldHorizontalFieldManager水平显示所包含的fieldFlowFieldManager以水平的方式显示所包含的field,当空间不够时在垂直方向增加一行DialogFieldManager以对话框的形式显示所包含的fieldBlackBerryUI不同的ScreenScreenFullScreenMainScreenPop-upScreenDialogStatusBlackBerryUIpublicHelloWorld(){//创建MainScreen对象,添加标题MainScreenscreen=newMainScreen();screen.setTitle(newLabelField(“HelloWorld!”));//创建一个manager,将组件加入到manager中FlowFieldManagerflowManager=newFlowFieldManager();screen.add(flowManager);//创建铵钮并加入到manager中ButtonFieldbutton1=newButtonField(“Button1”);flowManager.add(button1);//加入分隔线
本文标题:BlackBerry开发平台介绍及API应用
链接地址:https://www.777doc.com/doc-5316351 .html