SRT

学期初,报名参加了一个SRT(学生研究训练),关于智能手机平台上的程序开发。由WuXiaojun和XuMingxing两位老师指导……SRT项目第一次讨论会上,进行了分组。有Nokia手机的一伙人加入了Symbian组,有Windows CE手机的一群人加入了Windows CE组。我和另一个学长,以及某没到场的同学,分到了iPhone/Android组。从这个分组来说,我们基本上是分到了一个没人要的组。毕竟Symbian和Windows CE发布已经很久了,这两个平台上有众多的开发人员,也有许多相关的参考书籍和文献,设计起来比较容易,而iPhone和Android毕竟是新生事物,相关资料还很少。 Android情况还算比较好,毕竟Google当初宣传Android的一大优势就是开放,因此用Android写程序自然会比较容易,也有Google的支持。经过研究,Android的开发,其实主要就是下载安装SDK,然后装个eclipse插件,就可以开发,调试了。SDK里面带有模拟器,用起来挺方便的(虽然启动很慢……)。我下了Linux版SDK,发现模拟器没法用。后来找到了Google公布的源代码,原来是用qemu模拟的,SDL负责显示,不过都是Google修改过的版本……编译出来一个静态的emulator,替换掉SDK里面的,就可以正常工作了。我写了个hello world之后,就去搞iPhone去了。现在,组里那位学长已经成功写出井字棋了。 iPhone就麻烦多了。虽然Apple出了SDK,但是只能在MacOSX上跑,并且要编译出能够在iPhone上跑的程序要99美元……幸好hacker们搞了Jailbreak,破解了iPhone的限制,是个程序经过随便什么代码签名就能跑,但是我没有Mac阿……Hacker们也搞出了第三方的SDK,基于 llvm-gcc 和 Open Darwin CC Tools。Google Code上有个iphone-dev,就是这个东西。照着网上的说明,我先编译出了 iphone-dev 项目的结果。但是,拿这个编译个命令行Hello World还行,编译图形界面程序,就说有东西没定义。折腾了半天,知道这个只能用于1.x版本的iPhone,2.x版本需要新的第三方SDK…… iPhone在1.x到2.x的过程中,改变了Objective C的ABI…… 编译target也从arm-apple-darwin(其实是8)变成了arm-apple-darwin9又折腾了至少十几个小时,终于搞出了新版SDK,编译出了图形化的程序…… Apple在新系统还引入了其他限制,图形界面的程序从命令行启动会被Kill,只有从SpringBoard(iPhone的类似于桌面的系统程序)才能启动…… 仿造了一个应用程序条目之后,终于从SpringBoard启动成功,图形化的Hello World阿~话说Apple公布的SDK还是很有帮助的,让第三方SDK编译过程简化了不少…… 但是感觉第三方程序严重受制于Apple,Apple改变一点东西,第三方程序编写者就有很多东西要改,除非加入Apple的某计划…… 总之,现在在iPhone和Android上面都能写带GUI的程序了~ hacker威武~

脑残的GFW

这两天发现Space上面原来应该显示头像的地方显示不出来了。把头像地址复制出来,直接访问,结果说"到服务器的连接被重置"。看了一下包,明显又是GFW了,中间插了3个Reset包。四周望了一下,某些人的头像也没有了,某些人的还在。我的头像服务器是blufiles dot storage dot live dot com。用google一搜,结果google也连接被重置了……我看了下令一些头像不见的,很多也是这个地址。我就奇怪了,这个服务器上有什么东西严重到要把一个服务器都给屏蔽掉? 做GFW的人就那么弱,过滤功能就那么差……联想起某同学的Space也被列入黑名单,用google搜一下也会挂…… 只能说…… GFW日渐疯狂了……

学分绩…… 大物A!

第一年学分积,在我这个情况下实在是不怎么好……竟然连年级前1/3都没有……看看成绩,最明显的原因就是大物A! 吴念乐太不厚道了!……假如选大物B,至少能够提升20分! 而且大物A是5学分…… 20*5=100,一年总学分大约50,这样就是2分的学分绩啊!提升2分的话…… 年级前30差不多应该有的……当初不知道怎么想的…… 挑战自我啊……而且同时还选了计算机应用数学…… 同时挑战两门课程……肯定是脑残了……