江边闲话集

06/13/2007

BlackBerry,你也真难为我们

Filed under: Blackberry — Tags: — 张太国 @ 17:55
BlackBerry,你也真难为我们. 
如果你从事BlackBerry的开发,你会发现有些时候会令你相当胸闷,严重的话,恨不得把机器都给砸了.事实上,在中国大陆地区,开发BlackBerry的程序,也实在是太难为我们了. 
首先,我们第一个要解决的问题是,如何将我们写的程序能在真正的BlackBerry机器上运行.这就需要我们花100美元去买一个帐号,然后将代码进行签名. 如果了解这个代码签名的话,你会发现,如果这个帐号在不同的机器上运行,就会无效.这简直是我见过最糟糕的开发方式. 
除了代码签名之外,还有如何让我们的BlackBerry机器上网.如果熟悉Windows Mobile (Pocket PC或SmartPhone)的话,我们就会体验到,他们上网真够简单的.只需要将机器通过USB线与Desktop一连,设置一下(有的甚至都不用设置),就可以上网了.但是BlackBerry就没有那么幸运了. 我想了想,其实这和他的商业模式运作很有关系. 
当然,更郁闷的事情还在后面,那就是BES.BES在Blackberry的应用是非常重要的,绝对处于核心的位置.为什么?OK,我简要说明一下BES的作用:
  • EMail收发
  • 数据的安全性
  • 数据的同步性
  • 部署
  • 与现有系统的集成
  • 网络的路由,调配等
以上就是BES的几大功能,限于篇幅,不做仔细讲解.当然,上面的几个要点只是其中一部分,要了解详细内容,还是看看官方文档吧. 
既然BES有那么多的内容,要是我们BES岂不是头痛的要死?对的,确实是.我自己曾经也经历过. 不过非常遗憾的是,目前为止,在中国大陆那是寥寥无几,毕竟RIM和China Mobile联姻不过才一年多.要使它运营起来,还有待一段时间,中国大陆和其他国家还是有很大区别的. 
说了那么多难为我们的东西,难道就没有方法解决?答案是肯定的,只是稍微麻烦一点而已.
首先,模拟器一定要好好运用,例如Device Simulator,ESS,MDS,JDWP等.二是利用周边的资源. 三是社区,四是官方.
有了以上方法,基本上99%都可以解决的.
其实Blackberry并没有难为我们,难为我们的使我们自己,有的时候,:) 
一句话:最大的敌人不是别人,而是自己.

06/08/2007

BlackBerry项目大小限制

Filed under: Blackberry — Tags: — 张太国 @ 13:06

今天上午Peter问我为什么BlackBerry的IDE,其实就是JDE编译出来的COD文件有xxx-1.cod呢.这个问题2年前就遇见过,今天在这里正式解答一下.

症状

当编译之后,发现编译的COD文件除了xxx.cod之外,还有一个xxx-1.cod.

分析

2年前,JDE最高版本是4.0. 4.0是没有问题,但是对于4.0以前的版本,如3.7和3.6,都有类似问题.问题的关键4.0以前的JDE,项目的大小是有限制的,今天我给peter说这个限制大小可能是128K,其实这个是64K的code最大值与64K的数据最大值之和,而数据又包括二进制,资源文件,静态方法以及静态文本等.如果一旦超过最大值,就会按照症状那样,将它们分解成如果干个小文件.

解决方案

  •  换一个更新版本的JDE
  • 或将项目分解成几个更小的项目,这样每个小项目自己都会编译成一个COD.这样做,不仅架构清晰,而且易于维护,同时也适合更多的平台.还有一点,就是解决我们现在的问题.

隐含的问题

其实这样的话,可能带来一些隐藏的问题,例如部署问题,特别是在OTA时,例如通过JAR 转化为COD时,可能会提示找不到分解的小COD文件.

 

更正:

 以前说4.0是有限制的,其实4.0是没有限制的,抱歉!

05/31/2007

BlackBerry,你为什么自动重启?

Filed under: Blackberry — Tags: — 张太国 @ 22:38

本文是一篇技术文章,同时本文涉及到的问题说起来也许是BlackBerry操作系统的一个比较严重的bug.

表现
今天深圳富士康的某位朋友问我,为什么他自己编写的程序部署到BlackBerry上会令BlackBerry机器自动重启,而在模拟器上正常呢呢?就连一个简单的HelloWorld也会如此.

我的想法
对于这个问题,肯定是比较讨厌的,会令每个人都抓狂,如果我遇见这个问题,相信我也会郁闷很久的.既然一个hello world的程序都出现这个问题,这不能不说明一些问题.
当时这位朋友问我有没有时间解决,呵呵,因为最近一段时间太忙,也就没有时间深究.作为关心BlackBerry的我,任何问题我是不会放过的.
据我的分析和了解,我认为这是Blackberry的设计不完善性导致的,虽然不影响大局,但是足可以算成一个bug了.从我下面的解决方案中你就可以看到.

解决方案
这里提供的解决方案不一定凑效,但是基本上能解决大部分问题,毕竟还是有很多意外呀.
A方案 调试
 将你的设备和你的IDE连接,然后调试,看看哪一个方法调用或者方法出现异常.关于如何调试,参看我的另外一片文章BlackBerry 应用程序开发者指南 第一卷:基础–第2章 编写BlackBerry Java应用程序  ,你也许会找到该原因.

B方案 软件不兼容

BlackBerry  OS和其JDE经历了各种版本,所以,很可能存在版本不兼容的问题.所以换成合适的OS版本以及JDE.

对于A方案,一般来说,对于开发者有些困难,因为绝大部分的人都是直接在模拟器上调试的.在真实的设备上调试,估计不多.
对于B方案,我对此深感痛苦,因为曾经我也因为版本问题,费尽周折.在此对BlackBerry OS和JDE的开发人员们表示鼓励,希望他们在兼容性方面做的更好.

05/29/2007

BlackBerry的费用

Filed under: Blackberry — Tags: — 张太国 @ 22:17

中国移动和RIM签订合作备忘录已经很长有一年多了,在这一年多里,感觉移动对BlackBerry的宣传不够.对于BlackBerry的了解,很多人都是从民间(或者称为草根)那里得知.即便如此,在我们生活周围,能有1/20的人知道就不错了.恐怕对此数据我也是高估了.
究其原因,其中有一个很关键的因素就是价格.

中国移动服务费
对于每个国家的人民,大家对于价格都是非常敏感的,尤其是我们中国老百姓.目前中国移动开通的BlackBerry服务只针对于集团,对于个人是不开放的.访问一下中国移动的网站,你会发现BlackBerry的费用真他妈的贵,有2种包月的方式,一是398RMB/月,另一是598RMB/月.大部分的企业看见这个价格都会望而却步,更何况是个人呢.对于前一种,如果超过流量,居然还另外收费.其实对于这个价格,中国移动这样安排也是有他的道理的,接下来我会逐一说说我自己的看法.

Cingular服务费
BlackBerry是个舶来品,所以我们应该和国外来比较.
相比国外,很明显,我个人觉得国外的便宜多了.OK,让我们拿美国最大的无线运营商Cingular来说吧.
个人
每个月服务费45美元,国内数据无限,但是国际不开通.同时将拥有声讯数据5美元的优惠.
企业
每个月的服务费是60美元,国内数据流量看起来是无限制的,同时也拥有5美元的声讯服务优惠.不过不支持国际数据使用.
那么如果支持国际数据的话,每个月需要再多支付10美元即可,此时国际数据的流量同样无限制.

比较
从以上可以看出,Cingular比中国移动便宜不是一点半点的.可能有的人认为,398RMB和45美元相差不了多少呀.你要是这么想的话,那就大错特错.从经济角度上看,这是没有太大的比较性的,毕竟每个国家货币的购买力都是差不多的.另外,如果真按照同等水平的购买力来比较,还是cingular划算,因为他们提供流量无限制的服务.

从以上可以看出,中国移动的BlackBerry服务目前来说是非常昂贵的.可以说是一个奢侈品.

05/28/2007

BlackBerry服务是否可用?

Filed under: Blackberry — Tags: — 张太国 @ 22:30

本文解答一个问题:
 如果你有一台水货的BlackBerry机器(据了解,中国的99%机器都是水货),然后一张在中国移动或者其他国家已经办理了该服务的SIM卡,如果将此卡应用在该水货机器上,那么该SIM卡的原来的服务现在能用吗?

为了解答这个问题,我们首先应该清楚BlackBerry的服务.
BlackBerry的服务一般都是RIM直接和某移动运营商合作的,一般不会单独的卖自己的机器.如果要是单卖机器,相信RIM这家公司就没有今天如此风光了.既然RIM他们卖服务,也就是说BlackBerry的服务肯定是和机器绑定的.问题又来了,既然和机器绑定,那么其他运营商的SIM卡是不是也可以在该机上应用呢?应该是不可以的.为什么?答案很简单,因为在机器内部设置了一些运营商的信息.这样说比较抽象,打个比喻,假设有2款笔记本,分别是Dell和HP,一般来说,DELL OEM XP和HP 的OEM XP是不能交换使用的.在这里,Dell和HP可以分别看成Cingular和Nextel,而OEM XP的微软可以看成MS.这下子明白了吧.
OK,回到我们前面的一个问题,到底行不行呢?我认为是不行的.但是也不是那么绝对,如果你能下载到一些正常的配置等,也许没有问题.有人说,我把ROM刷一下不就可以了么?答案是不可以,因为一些运营商的信息有些是存储在硬件里的,不管怎么刷ROM.这些信息都不不能去掉的.

03/31/2007

RIM终于想通了-RIM开放新的API

Filed under: Blackberry — Tags: , , — 张太国 @ 15:22

看来RIM终于想通了,在前一篇文章Blackberry阻碍因素中提到了社区的支持,其第三方软件太少,这会严重阻碍RIM的发展。这不,RIM的Press上明明白白写到,在2007年3月27日,

   RIM Opens New BlackBerry APIs to Support Growth in Mobile Applications

意思就是说RIM开放新的BlackBerry API以支持移动应用程序的增长。
关于API的重要性我不多讲了,还是看前面的文章吧。
在开放的API包括(来自官方网站):

  • 移动多媒体API  这年头这个都不支持的话,那也就有点太落伍了,什么听音乐和看电影就得要。不然让你死的难看。
  • 摄像机API     你说现在有哪一款移动设备不带摄像头。流行!
  • 支持MP3,WAV,AAC,AMR音频格式的API 这个更加不用说了
  • XML以及Web Services  无语,还记得那个时候想调用一个web service,那简直晕菜。差点没写个库来调用web service和XML,想想今天都后悔,要不然我自己写好了去卖,:).
  • BlackBerry Messenger API  IM大行其道,不做不行
  • 文件系统  BB的文件格式可真的保密,专业人员都不知道,更加不用说非专业的人员了。大家看了都是一头雾水。很多网友都问我文件格式的问题,说实话我也无语。
  • 3D图形API  BB的图像界面还是可以的,至于3D,有点夸张,至少对现在的机器而言。不过开放了好。促进他的发展。
  • MMS Java API 这种东西就好像在中国通过GPRS上网一样。毕竟MMS在国外不太流行,不过中国则是大行其道。我以前还发过几个呢。对于我这种不爱发短信的人来说,也是一个福音。

从以上可以看出,RIM的CEO Jim Balsillie 看来是越来越前卫了,大脑也是开窍了。我是举双手赞成。当然,开放这些API的最主要API恐怕是其他对手的竞争压力,看看Windows Mobile,iPhone, Palm,还有巨头Nokia,一款E系列的手机就足以让Jim紧张一下。

不管怎么说,这是一个福音。

看看原文:

  • Mobile Multi-Media API for Java (JSR 135) allowing developers to embed custom audio and video content into applications; invoke the BlackBerry Media Player to play video or audio content; record audio or voice and save recorded files to the handset or send it over the Internet
  • Camera APIs that allow developers to invoke the camera application and access pictures taken with the camera; support for registering listeners with the Camera application that enable an application to be notified when a new picture is taken
  • Support for MP3, WAV, WMA, AAC and AMR audio formats with support for routing audio playback to the external speaker, connected headset and Bluetooth® headset
  • XML and Web Services support to help simplify communications with existing Internet applications
  • BlackBerry Messenger APIs allowing access to presence and contact information and the ability to send peer-to-peer messages
  • File System Access APIs (JSR 75) to provide access to documents and other files stored locally on the smartphone or on the microSD expansion memory; support for registering listeners with the file system that enable an application to be notified when a new files are added or removed
  • GPS APIs (JSR 179) that provide access to location information from local GPS chip or external GPS receiver connected over Bluetooth
  • BlackBerry Maps API providing access to the map application to display an address or a route with BlackBerry Maps providing all of the geo-coding and mapping data for free
  • Wallpaper and Ringtone Customization Java APIs to enable custom applications to add new wallpapers and ringtones to the smartphone
  • Planned support for 3D Graphics API (JSR 184) and SVG API (JSR 226) to enable more powerful gaming and rich-media content
  • Planned support for MMS Java APIs (JSR 205) to complement the existing SMS and Phone APIs which enable third party applications to listen for incoming phone calls and SMS messages, invoke the phone application to place a call, and compose SMS messages for peer-to-peer messaging

   P.S:本文本来应该在几天前就发出了,这部等到今天才发,工作太忙了!

03/29/2007

Blackberry阻碍因素

Filed under: Blackberry — Tags: — 张太国 @ 10:16

无疑,Blackberry解决方案是比较完美的,但静观其发展,却不是我想象中的那种,以下几个方面阻碍了它.

  •  用户群体  

     没错,就是用户全体,很简单的事情,因为BlackBerry与身具有的特点,注定一开始其用户全体是那些商务人士,企业等,这都是高端的用户全体。不论是哪一个国家,这都不可改变其地位。

  •  价格的昂贵 

     那中国来说,399和599足以让你抛弃之。有几个人能愿意乖乖把RMB交给移动呢?

  •  社区群体的鸡肋  

      大家都知道,一个产品行不行,其第三方软件是非常重要的,第三方软件当然需要开发人员以及使用者社区的支持,但是对BlackBerry来说,这真是一个非常大的鸡肋。你要想让你的程序跑起来,非得花100M 美金去买个注册的license,这无疑是对开发人员来说是一个不利的因素,也是一个比较不小的打击。另外,也是其提供的接口也是少之又少。能开发出什么 东西呢。看看另外一文章:RIM终于想通了-RIM开放新的API

  •  广告力度不大

     宣传呀,显然RIM做的极其不够。要是没有宣传,一个产品如何用出去。就连我们专业的人员都有很多不知道该产品。无疑是一个不大不小的失败。

03/28/2007

一箩筐东西

Filed under: 闲情逸致 — Tags: , — 张太国 @ 00:04

  •    工作越来越忙了
  •    AJax就那么一点破东西,居然经这么一炒作,搞得好像很深奥似的,不是越复杂就越显得你厉害,其实相反,我认为。
  •    最近有好多人问我关于BB的问题
  •    麦壳饼上次和我讨论之后居然玩起失踪,明天打算搞个寻人启事
  •   NUnit正在进行中,相信很快就有结果了,这样也对得起麦了。
  •   谢同学找工作,真正体会到如今的应届生工作真的很难找。谢,加油呀。
  •   段同学告诉我可能离开,同时田大姐又打算过来,真是前赴后继
  •   我心中的梦想再一次被激活
  •   买了一手机,呆头呆脑,而且又小,不管怎么样,现在还是比较满意,最重要的是结束了无MP3的历史。
  •   今天买了几本书,才发现国内的网上书店都他妈的有点不爽。
  •   越狱看到第二季最后,才发现是个不归路,都不知道这些老美怎么想的。本来以为这季就结束了,看来不可能的。搞什么搞!
  •  发现好多东西没有做完,本来是可以实现的。
  •  什么时候网速能达到1G?下载真够慢的

03/01/2007

BlackBerry 应用程序开发者指南

Filed under: Blackberry — Tags: — 张太国 @ 20:39

BlackBerry 应用程序开发者指南 第一卷:基础

0 (RIM)
1 BlackBerry API 
2 编写BlackBerry Java应用程序 
3 创建用户接口(UI
4 使用音频
5 支持的媒体内容(Media Content 
6 连接网络 
7 使用数据报(Datagram)连接 
8 本地化应用程序 
9 IT策略(Policy
10 创建Client/Server Push应用程序 
11 使用位置信息 
12 打包和部署 
附录:.alx文件的格式 
附录:MDS服务参考 

BlackBerry 应用程序开发者指南 第二卷 高级
1 使用受控API 
2 集成消息 
3 集成PIM功能 
4 增加设备选项 
5 BlackBerry浏览器 
6 访问电话应用程序 
7 BlackBerry应用程序通信 
8 存储持久数据 
9 备份和恢复持久数据 
10 访问安装和配置信息 
11 管理通知(Notification) 
12 管理应用程序 
13 应用程序间共享运行时对象 
14 增加对智能卡(smart card)的支持 

更新历史:

  • 2007-01-05 VOL1-CH1,CH2
  • 2007-01-09 VOL1-CH3
  • 2007-01-10 VOL1-CH4,CH5,CH6
  • 2007-01-11 VOL1-CH7,CH8,CH9
  • 2007-01-12 VOL1-CH10
  • 2007-01-17 VOL1-CH11
  • 2007-01-19 VOL1-CH12,CH13以及附录
  • 2007-01-22 VOL2-CH1
  • 2007-01-23 VOL2-CH2
  • 2007-01-24 VOL2-CH3,CH4
  • 2007-01-30 VOL2-CH5
  • 2007-01-31 VOL2-CH6
  • 2007-02-01 VOL2-CH7,CH8
  • 2007-02-02 VOL2-CH9
  • 2007-02-05 VOL2-CH10,CH11,CH14
  • 2007-02-06 VOL2-CH12,CH13

 

01/30/2007

RIM,未来之路

Filed under: Blackberry — Tags: , — 张太国 @ 09:36

RIM,也许自己也没有想到这天会来得如此之快!
当RIM发家到现在也不或短短几年而已,所拥有的用户和中国移动相比,也只能算是九牛一毛,当然,全世界也没有一个运营商敢和中国移动相抗衡的。虽说如此,RIM所掌握的客户都是高端客户,都是些非常愿意把RMB或者Dollars交给RIM的有钱用户。但话说回来,为什么这些客户会乖乖把钱送给RIM呢?非常简单,方便,效率高。了解BlackBerry的人都知道,PUSH Mail是其非常具有特色的一个特性。据说在9.11事件里,BlackBerry扮演了一个非常大的角色。当所有桌面邮件系统瘫痪之后,BlackBerry却相安无事。与其说是BlackBerry的一个便捷之道,还不如说是BlackBerry有一个制胜的法宝。就是因为此功能,才有成千上万的用户去用它,也才有一车一车的钱转账到RIM的银行帐户里。

按照RIM的模式,非常清楚,也非常简单,那就是与全球的移动供应商合作,有钱大家一起赚么。这也是非常重要的一种策略。自从去年5月中旬RIM和中国移动签署合作协议之后,咱们中国人对BlackBerry这个玩意增进了一些了解,但是由于其高昂的费用,令个人用户根本无力承担。看起来中国移动不担心这一点,还是前面的,他们在乎的时优质客户,因为只有这些优质客户才能给中国移动带来更多的利润。试想?如果100个优质客户和1W个普通用户的利润一样,你会选择哪一个?RIM呢,醉翁之一不在酒而在于中国,或者说中国移动的客户,中国的市场,也许为了开辟丝绸之路必须完成的一步:推广。

但是,就是近2年,RIM的饭碗已经被大家开始蚕食。比如,Microsoft Windows Mobile,也具有PUSH的功能,当然还有NOKIA,MOTOROLA,Apple的iPhone,Plam,Treo等,哪一个是好对付的?所以RIM面临的不仅仅是几个厂商而已,面临最大的是如何占有市场而又不失个性,个性包括服务,费用,提供的功能以及软件服务等。RIM必须着力这些。
我们不用担心RIM看不到这一点,RIM也不是吃素的,人家CEO等上层不是光拿薪水不干活的人呀。

其实RIM目前来说也是非常有优势的,它与全球这么多运营商合作也不是一天两天的事了。它的竞争者要有如此的合作关系,也不是一天两天能够完成的。再说了,RIM给这些运营商带来的丰厚利润他们能够舍弃么?不能。所以目前RIM也用不着太担心,还是做好份内的事情吧。

–EOF–

« Newer PostsOlder Posts »

Powered by WordPress