Monthly Archives: October 2010

android 2.2 market显示热门付费应用

有 root 权限的,直接编辑

/data/data/com.android.vending/shared_prefs/vending_preferences.xml 

<boolean name="metadata_paid_apps_enabled" value="false" />

修改为:

<boolean name="metadata_paid_apps_enabled" value="true" />

重启机器,即可。

也可以安装 MarketEnable或MarketAccess。

主页面显示:”Android 电子市场没有符合请求的内容“, 解决方法请参考 Android market FAQ 最末尾那段,只能暂时的通过setpro 设置一些属性,重启就失效了。

参考: http://forum.cyanogenmod.com/topic/1972-paid-apps-tab-missing/

再见,阿瑟

这几年,我写的文字,与同学、朋友的交谈,总少不了一个词语:“阿瑟”,它出现的频率如此的高,可见是一位大师,master Hu。

猛然发现他真的离开深圳了,心里顿时涌起莫名的忧伤,9月份刚送走柏成,两个湖南才子最终都回去建设家乡了。伤感之余,促使我记录一些文字,以免在深圳这个是非地麻木挣扎,会忘记一些记忆。

阿色,源自于麦克阿瑟,阿瑟,阿涩,阿sir,sese,都行,都表达同一个意思。我跟阿色在大学呆四年,本科毕业后南下,在深圳又呆三年多,这七年,目睹了他种种际遇,悲欢离合。厦大人优秀的基因在他身上全有:多情,有才,耐折腾。

阿色是大家公认的大思想家,大文学家,大哲学家,在大学就有三个家了,如今回归故里从政,又多了一个家,政治家。大学期间,阿色以荻根(digen)为笔名,在厦门日报,厦门大学报发表过很多文章,挣得N多稿费,夜宵常常有事没事请我们吃MLT。金工实习阶段,院里领导到实习基地视察,四处打听自动化系的荻根到底是谁?知道是他后,领导欣喜万分,鼓励他多写写文章,为自动化系争光。阿色不愧是自动化系中的中文系,东方一颗明星正在冉冉升起。他在一篇文章中如是说:“自己渐渐喜欢上读书,尤其是充满感情的文学作品,甚至发出感叹,要将一生的精力灌注于此”。 没记错的话,好像他还有一个笔名是萝卜,曾经深情的对yolanda说:“以后,我也许不再叫萝卜了,你不是嫌它空心吗?可我的心里满满的都是你啊,都是你。”。这方面,他是遥遥领先的,我们几个望尘莫及,自叹不如,学也学不来,差好几条街去。

很多高中同学收到我给他们的信,信中所寄的相片,就是阿瑟在国庆节帮拍的,那是我俩军训结束后去本部玩,在厦大一条街租了个相机,拍个够。还记得2003年录取通知书上的那首很感性的小诗:

揭开这心动的一页,
你开始自己新的征程,
南国最美丽著名的学府,
用大海的胸襟和白鹭的情愫迎接你的到来,
这里是无数风流人物的摇篮,
光荣与希望,
托起你智慧的风帆,
在四年岁月里绽放青春生命的火花。

漳州校区,厦大,厦门,自家人,给我留下了很多美好的回忆。

在天涯论坛上,我看到一句话是这么说的“内心纯洁的人前途无量”,开始读觉得是骂人的话,再反复读,我沉默了,沉默的是自己的无知。小时候我看到乞丐,他们穿破破烂烂的在乞讨,我心里很难过,都会流泪,初中读到朱自清写的《背影》,也会难过很久。现在不一样了,在现实的洗刷中,我也变得麻木冷漠。而阿瑟,令我佩服的,对形形色色艰难谋生的人的同理心,一直能保持到现在。有时候碰到装可怜的骗钱的,我都劝他走开,他显然也知道是骗的,但还是还是一如既往的施舍。他说:“世道艰难,大家都是出来混口饭吃。”

不知道是另外哪位大师说过:“多情者,才思奔放,一眼以突窥人心,惟不语已”,这话验证在阿瑟身上,那叫一个准,自古才子多情。但以我专业的眼光观察,他却是一个非常专情用情的人,举个小例子吧,yolanda叫玲玲,大学的时候我发现阿色的一些帐号或密码都有5200,写的文章比如有:《从玲开始》、《风铃》,《风中的铃&玲的季风》,心细如水,柔情四溢。多情只是他的表面,内心世界深不可测,里面有诗意的世界,有辽阔无边的草地平原,能够听见梦想在唱歌,能够释放最绚烂美丽的大海之光。都说,成熟的男人像一个深沉的树,阿瑟就是这样的一颗大树,总有能力有办法有信心,让心爱的女人在树下安心的乘凉,让爱情鸟在他稠密的树枝间做巢,鸣叫。

07年11月份下旬,我离开了厦门,I want to follow my heart,到深圳寻找新的人生旅途。第一站就是到阿瑟那蹭住,那天晚上他请我吃烧烤,来几瓶酒,对我说:“阿瑟啊,喝了金威啤酒,你就成深圳人了啦”。现在周末找人喝酒都难了,感慨万分啊。在深圳住过的地方,玩过的地方闭眼睛回想一遍,点点滴滴记在心头:石岩水田村,石岩罗租村,新屋村,华翰科技,南山科技园,车公庙,大南山,梧桐山,盐田湾,羊台山,塘朗山,红树林,华强北,益田假日广场…… 依稀记得2008年五一假期,阿涩与yolanda在红树林草地上互相追逐的情景,羡煞旁人,“如果流浪是你的天赋、那么你一定是我最美的追逐“,sese,梁静茹是为你而歌!

再见,阿瑟,新屋村少了一位哲学家;再见,Master Hu,从此周末我们的门铃再没人来按。请原谅我黄朗才尽,拙文一篇,纪念我们共同奋斗的岁月,顺祝商祺。

python makes me happy :)

这几天用 Python写了个Android Market web client,新手上路,却出奇的顺利!apache2 + mod_python, mod_python 里的req很好用。本想用ruby写的,可是ruby对protobuf支持不是很好,php更没份了,在jsp与psp犹豫了一下,还是选择了后者。我问wayhome,有没有python psp的资料,他愣住了,说没有,psp是什么?我再补充,不是psp游戏机哦,是Python Server Pages,你搞python这么久不会没听说过?后来他说写cgi都用PEP333。搞什么,弄了大半天,原来psp是早已过时不用的技术了。

听说python的框架Django牛气轰轰,堪比Ruby之Rails,我翻了一下,弄懂这玩意,也需要花不少时间。弄几个页面,还是写cgi快,维护BBS都用C写过cgi,还怕不会用脚本写cgi? python的语法跟ruby差不多,以前在曾厝庵学生公寓图书馆看过一个下午,长时间不用也忘记光了,工作中很少用到,好像是安装项目管理软件Trac调试过,不过看apache error log,一般问题都可以诊断出错误位置。

人生真是阴差阳错。一直关注C/C++, PHP,Ruby,我想不会再学Java,Python之类的了。没想到今年工作主要是写Java程序 :( 用什么,就学什么,现学现用。哲学家告诉我们:变化是永恒的,没有一劳永逸。

参考资料:
http://modpython.org/live/current/doc-html/pyapi-psp.html
http://www.python.org/dev/peps/pep-0333/
http://www.djangobook.com/en/2.0/chapter01/

反编译Android market Vending.apk包

主要是工作的缘故,Market时不时登录不了,东试这个rom,西试那个rom也不是解决办法,横下心来,决定fuck 她一下。

从今年5月份开始到现在,断断续续的干这事,用反编译工具apktool,ddx左右开工,下班回宿舍常常搞到两三点,弄得身心疲惫,已经完成了90%,2.5w行的代码,最后的10%将是最难的,集中分布在 try catch throw, 多层的if for 结合,不好处理。都是用最原始的方法: edit-compile-decompile-diff-edit,一直循环。手工反编译出来的代码已经可以阅读,需要再搞清楚它的protobuf协议,api,慢慢消化。有时间,用Rails写个网页,提供web浏览。反编译的Vending.apk是1.5版本的,跟最新的2.2差别太大了,也许最初的决定,是一种错误。这过程,除了锻炼我的牛力,学习熟悉Java之外,剩下的是无尽的空虚,浮云,都是浮云!

这事就这样暂停吧,接下来花时间去阅读Android的代码,过段时间有力气了再回头继续fuck。

转眼到了10月中旬,快过年了,三年的工作合同将满,下一步不知道去哪好,也向往搞一个像 37signals那样的公司,两三个人,崇尚简单即是美,上帝赐予我力量吧。

Android设置显示本机号码

本机号码,我觉得是没有多大的用处,几乎谁都会知道自己的手机号码,但也有用户真的需要这个功能。有个对讲机软件tikl – touch to talk,可以通过网络进行多方通话,需要用到本机号码。 测试短信的脚本,自己给自己发短信,也需要本机号码。

Android手机在 设置-关于手机-状态消息,可以查看到本机号码,很多情况是显示未知。 很多模组用AT+CNUM 这组AT命令可以设置与查询本机号码。一般的手机在查看本机号码的界面都可以添加本机号码的,比如MTK/展信手机都提供这个功能。 Android对卡的操作,都是直接读写卡上的信息,用比较底层的AT+CRSM,而不是常用的AT,比如 AT+CMBR, AT+CMBW,AT+CNUM等。

Android手机设置本机号码,目前我还没发现有工具可以设置,很多人是把SIM卡拿到可以设置的手机上设置,然后把卡重新插上。 不过,Froyo提供了内部接口方法Phone.setLine1Number(),CM6的通话设置里就加入了本机号码设置功能:

具体的代码,在这里看清清楚楚:

http://github.com/CyanogenMod/android_packages_apps_Phone/commit/5351ce8247eb9fc9a3bf2ec751d14dcd373ab92e

可能需要到github注册个帐号,才可以浏览代码,主要是在phone里面添加处理,独立写个小程序的话,比较麻烦,因为要访问PhoneApp。

更新: (2010-11-15) 今天试了一下,参考Settings, 共享一个sharedUserId,也可以写个独立的程序,在g1 2.2,HTC desire上测试通过。注意:Android 2.2以下的无法使用。

代码献上: https://github.com/lytsing/MyPhoneNumber