- 博客(156)
- 资源 (1)
- 收藏
- 关注

原创 《构建iPhone企业级应用—基于HTML, CSS 和JavaScript》已出版
O'Reilly Media的图书,对于实时性要求不高的应用来说,HTML、CSS、JavaScript无疑是很好的选择
2011-07-06 13:18:36
3104
4

原创 正向生活渗透的手机二维码
本文已发表于信息产业部主管、中国电信集团公司主办的《网络信息》杂志2008年第9期 原文地址: http://www.cqvip.com/qk/86375X/200809/28424629.html
2008-07-07 13:42:00
5284
13
原创 从冯•诺依曼结构看计算机科学的发展史
作者:孙东风2012-8-30 转载请注明出处 本文主要内容包括:Ð 冯·诺依曼体系结构Ð 汇编语言对冯·诺依曼结构的抽象Ð 面向过程语言对冯·诺依曼结构的抽象Ð 面向对象语言对冯·诺依曼结构的抽象Ð 程序架构设计与冯·诺依曼结构1.1 冯·诺依曼体系结构1946年美籍匈牙利科学家冯·诺依曼提出存储程序原理,把程序本身当作数据来对待,程序和该程序处理
2012-08-30 01:26:45
23226
6
原创 关于Android的UI非线程安全
今天偶尔在网上看到这边文章 http://hold-on.iteye.com/blog/9914031、我们都知道,在Android的开发中,非UI线程不能操作UI线程中的控件,即UI是非线程安全的;2、但是在工作线程(非UI线程)中调用ProgressBar控件的setProgress(int count)方法时,程序运行并 不会出现异常,3、但是如调用setBackGround(int
2012-05-03 10:56:53
5984
原创 iPhone中管理malloc分配的内存空间
我们都知道在C/C++语言中,堆内存是应该由程序员负责释放的,编译器并不负责释放程序员自己分配的堆内存空间;而在Objective-C语言中,类实例的释放是通过release方法进行释放的,如果是Autorelease Pool中的实例,程序员还不必自己手动释放相应的内存空间,这点对于习惯在iPhone中使用C/C++风格编写程序的程序员来说,无疑是有点迷惑性的,例如下面的代码:
2011-06-23 21:12:00
8312
4
转载 人生的七张底牌
第1张底牌忍——有容方为大,忍者无敌1.忍是一种做人的大智慧2.忍耐并非软弱3.负重忍辱,厚积而薄发4.骨气不能无,傲气不能有5.“利”字面前,三忍而后行6.遇强示弱,消灾避难7好汉不吃眼前亏,惹不起躲得起8.争狠斗恶匹夫勇,理让三分也无妨9.与小人相处要讲究策略10小不忍则乱大谋11.在人屋檐下,该低头时要低头12.经得起“寒冰床”,练得成真功夫13.表面上吃亏,暗地里得利第2张底牌藏——藏锋藏
2010-05-31 09:50:00
4822
1
原创 Meego平台技术架构
<v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
2010-05-01 11:08:00
6043
原创 Windows mobile屏幕旋转解决方案
Windows mobile屏幕旋转解决方案 在默认情况下,Windows mobile的CDialog类可以自动切换屏幕显示方式,在用户把手机屏幕旋转成横屏的时候,CDialog类也会自动旋转,从而使得原本程序的绘制操作变乱。 那么如何解决Windows mobile下屏幕旋转带来的界面显示问题,就成了亟待解决的问题。一般来讲,如果不准备为用户提供横屏体验的话,那么禁止屏幕旋转无
2010-04-02 09:35:00
6254
9
原创 无缝移植J2ME程序到OPhone平台解决方案
文章已被收录在中移动通讯研究院主办的Ophone技术论坛原文地址:http://www.ophonesdn.com/article/show/217;jsessionid=3927158DA5F89F94879DDC399FFF17BEhttp://dev.chinamobile.com/cmdn/wiki/index.php?doc-view-2064.html
2010-03-12 12:37:00
3883
2
原创 MeeGo平台研究之开篇
作为一个有7年移动平台开发经历,并在Symbian平台下开发近3年的人,Nokia和Intel这两个IT行业的巨无霸联手推出的移动开发平台MeeGo自然成了我研究的目标。首先介绍下MeeGo平台的来历,MeeGo平台是基于Nokia的Maemo和Intel的Moblin两个平台整合而来的,其目的是专门为上网本和智能手机等便携设备提供类似便携电脑的用户体验。在Nokia称霸移动平台10几年以来,
2010-03-11 10:49:00
5271
7
原创 Windows Mobile下在开始菜单增加应用程序快捷方式的两种办法
在Windows mobile开发中,把项目打包成CAB格式安装包后,默认并不会在开始菜单增加快捷方式。如果我们想为应用程序在开始菜单中增加快捷方式,可以有两种方式:一:在Smart Device CAB Project项目中增加快捷方式项通过这种方式为应用程序增加快捷方式主要通过一下步骤:Ø 打开Smart Device CAB Project的文件系统,右键点击选择
2010-03-05 13:34:00
6491
6
原创 通过注册表修改Windows Mobile的签名限制
在Windows Mobile的开发中,因为微软基于安全的考虑,对一些API的访问做了限制,所以有时候应用程序需要签名才能运行,这无疑是很麻烦的事情。对于没签名的程序,微软的模拟器会提示如图所示: 如果能跳过微软的安全限制,对于开发无疑是最方便的方法,通过修改注册表信息可以做到这点,如下:l 通过ActiveSync上传SP_Al
2010-02-12 11:06:00
3505
原创 两个小时精通Android开发之数据持久存储篇
两个小时精通Android开发之数据持久存储篇 作者:孙东风 2010-01-15(转载务必注明出处) 笔者在前面的两篇文章《两个小时精通Android开发之界面篇》、《两个小时精通Android开发之按键映射篇》分别讲了无缝移植J2ME程序到Android平台上对界面和用户按键交互所做的适配接口,原则上利用这些接口原有的J2ME程序基本不用做任何的修改就可以运行在Android平
2010-01-15 10:21:00
9351
17
原创 两个小时精通Android开发之按键映射篇
作者:孙东风 2010-01-07(转载务必注明出处)笔者的上篇文章《两个小时精通Android开发》中讲解了利用Android的接口规范开发J2ME的Wrap包,从而解决了J2ME程序无法运行在Android平台上的技术难题,但是Android平台和J2ME另一个重要的不同点就是按键响应接口,如何让J2ME程序的按键响应可以无缝的移植到Android上呢?答案也是Wrap包。 笔
2010-01-08 16:29:00
11844
7
原创 两个小时精通Android开发之界面篇
作者:孙东风 2010-01-07(转载务必注明出处) 笔者最近需要移植一个J2ME的项目到Android平台上,所以抽空研究了一下Android平台的接口规范。 Android平台除了在一些接口上采用了和J2ME不一样的名称之外,基本的接口内容还是一样的,那么移植J2ME到Android平台最方便的方法就是利用Android平台的接口重写J2ME的接口,本着这个思路笔者
2010-01-07 23:07:00
17912
23
原创 自己动手写iPhone wap浏览器之界面架构篇
自己动手写iPhone wap浏览器之界面架构篇(手把手教你iphone开发 – 进阶篇)作者:孙东风 2009-12-28(转载请注明出处)在笔者的上篇文章《自己动手写iPhone wap浏览器之BSD Socket引擎篇》中已经成功解析出来了wml页面中的tag,如果读者仔细的话可能会看到里面中文的tag显示为乱码,这是因为在iPhone上默认的中文编码格式是UTF-8,而通过BSD
2009-12-28 12:45:00
5756
7
原创 深入理解iPhone屏幕双缓冲技术
深入理解iPhone屏幕双缓冲技术(手把手教你iphone开发 - 基础篇)作者:孙东风 2009-12-21(转载请注明出处) 笔者在最近项目的开发中需要使用到“屏幕双缓冲”技术,“屏幕双缓冲”是GUI客户端中最经常使用的一种技术,但是这种技术在iPhone平台似乎很少被人使用到,网上的资料基本很难找到,这点让笔者很是不解:( 相信大多数人都知道,所谓“屏幕双缓冲”是指在内存
2009-12-22 09:17:00
10714
16
原创 自己动手写iPhone wap浏览器之BSD Socket引擎篇
自己动手写iPhone wap浏览器之BSD Socket引擎篇(手把手教你iphone开发 – 进阶篇)作者:孙东风 2009-12-01(转载请注明出处) 在《自己动手写iPhone wap浏览器之预备篇》中笔者讲述了进行iPhone wap浏览器开发的主要流程如下:² 封装BSD Socket进行HTTP请求。² 将请求到的WML页面解析成XM
2009-12-01 21:00:00
9474
3
原创 自己动手写iPhone wap浏览器之预备篇
自己动手写iPhone wap浏览器之预备篇(手把手教你iphone开发 – 进阶篇)作者:孙东风 2009-12-01(转载请注明出处) 在笔者的上一篇文章《玩转iPhone网络通讯之BSD Socket篇》中,笔者试图在iPhone平台上利用BSD Socket搭建了一个同时兼容TCP/IP和HTTP协议进行通讯的框架,而在接下来的几篇文章里,笔者将进一步完善这个网络通讯的引擎并利
2009-12-01 16:30:00
5855
4
原创 iPhone UITableView(利用UITableView实现平滑的九宫格效果)
UITableView是一种“目录视图或叫表视图”(英文名字table view),这种表视图以列表的形式显示或编辑信息,它由一列、多行组成。用户可以通过垂直滚动的方式导航到一个表视图的任意行上,并可以自定义每一行数据的显示方式。 在创建表视图的时候,可以选择两种风格的表视图:UITableViewStylePlain或者UITableViewStyleGrouped,前者是按索引进
2009-11-26 16:29:00
29772
14
原创 iPhone开发经典语录集锦
前言:iPhone是个极具艺术性的平台,相信大家在开发过程中一定有很多感触,希望能写出来一起交流,所以开了这个帖子,以后还会维护。 如果大家和我一样有感触的话,可以跟在帖子下面,最好简短并附上中英文:) 1:如果无法保证子类行为的一致性,那么就用委托If the subClass cannt keep with superClass,use dele
2009-11-25 13:52:00
9668
22
原创 深入理解iPhone委托模式兼谈iPhone生命周期
深入理解iPhone委托模式兼谈iPhone生命周期(手把手教你iphone开发 - 基础篇)作者:孙东风 2009-11-23(请尊重作者劳动成果,转载务必注明出处) 每个iPhone应用程序都有一个UIApplication,UIApplication是iPhone应用程序的开始并且负责初始化并显示UIWindow,并负责加载应用程序的第一个UIView到UIWindow窗体中。U
2009-11-23 14:31:00
10987
8
原创 深入理解iPhone静态库
深入理解iPhone静态库(手把手教你iphone开发 - 基础篇)作者:孙东风 2009-11-20(请尊重作者劳动成果,转载务必注明出处) 在实际的编程过程中,通常会把一些公用函数制成函数库,供其它程序使用,一则提搞了代码的复用;二则提搞了核心技术的保密程度。所以在实际的项目开发中,经常会使用到函数库,函数库分为静态库和动态库两种。和多数人所熟悉的动态语言和静态语言一样,这里的所谓
2009-11-20 11:11:00
19688
16
原创 iPhone游戏引擎CWGameEngine之一(创建全屏自定义窗口)
作者:孙东风 2009-11-14(请尊重作者劳动成果,转载务必注明出处) 笔者在前面的系列文章中依次讲解了iPhone多线程、iPhone数据持久化、iPhone网络通讯BSD Socket等内容,接下来笔者会讲解如何从头搭建一个自己的游戏引擎。 根据iPhone官方的统计,App Store中游戏类应用是最多的,大概是其它应用总和的1 .5倍,在排行前20的应用中,游戏类应用超
2009-11-14 20:38:00
5549
4
原创 玩转iPhone网络通讯之BSD Socket篇
玩转iPhone网络通讯之BSD Socket篇(手把手教你iphone开发 - 基础篇) 作者:孙东风 2009-11-11(请尊重作者劳动成果,转载务必注明出处) 在进行iPhone网络通讯程序的开发中,不可避免的要利用Socket套接字。iPhone提供了Socket网络编程的接口CFSocket,不过笔者更喜欢使用BSD Socket。 iPhone BSD
2009-11-12 15:45:00
24190
10
原创 深入理解iPhone数据持久化(手把手教你iphone开发 - 基础篇)
作者:孙东风 2009-11-11(请尊重作者劳动成果,转载务必注明出处)在所有的移动开发平台数据持久化都是很重要的部分:在j2me中是rms或保存在应用程序的目录中,在symbian中可以保存在相应的磁盘目录中和数据库中。symbian中因为权限认证的原因,在3rd上大多数只能访问应用程序的private目录或其它系统共享目录。在iphone中,apple博采众长,提供了多种数据持久化的方
2009-11-11 17:32:00
10779
原创 利用iphone的多线程实现“售票系统”(手把手教你iphone开发 - 基础篇)
作者:孙东风 2009-11-10(请尊重作者劳动成果,转载务必注明出处) Java因为其本身支持多线程而给程序员带来很多方便,其实在iphone的开发中也支持多线程编程,并且一点也不比java麻烦。在这篇文章中,笔者就拿大多数Java教程中经典的“售票系统多线程”作为实际例子,在iphone中进行同样的实现。 下面是java版本的“售票系统多线程”代码:packag
2009-11-10 14:44:00
8090
6
原创 Mac OS X 10.6下搭建J2ME及Subclipse开发环境全过程
Mac OS X 10.6下搭建J2ME及Subclipse开发环境全过程作者:孙东风 2009-10-21(转帖勿必注明出处)最近全面迁移到Linux系统下进行开发,彻底抛弃Windows。在mac OS X下搭建J2ME开发环境并不轻松,最主要的是因为sun公司并不提供mac版本的WTK,让人很是郁闷。不过好在motorola公司代替sun把这个活给干了,进入下面的地址:http:
2009-10-21 18:04:00
6039
6
原创 在Eclipse中加入Android源码
在我们开发android程序过程中,很多时候 需要查看android的源码是如何实现的。这个时候就需要把android的源码加入到 eclipse中,那么在我们通过Git和repo获取到android源码之后,就需要把java文件提取出来,并放到android SDK子目录source下。如果手工来提取这些java文件是很耗费时间的,所以我们可以写个python脚本来自动提取android源码中的
2009-10-17 22:50:00
7708
9
原创 Ubuntu 8.04下编译Android源码全过程
作者:孙东风 2009-10-16 一、获取Android源代码Git是Linux Torvalds(Linux之父)为了帮助管理Linux内核开发而开发的一个开放源码的分布式版本控制软件,它不同于Subversion、CVS这样的集中式版本控制系统。在集中式版本控制系统中只有一个仓库(Repository),许多个工作目录(Working Copy),而在Git这样的分布式版本控制系
2009-10-16 13:36:00
17543
13
原创 Eclipse中SVN管理工具Subclipse客户端插件的基本操作
最近尝试在J2ME的开发中使用SVN进行版本控制,第一是为了只维护一份代码,避免重复劳动;第二是利用SVN的“锁定”功能可以保证对源代码修改的唯一性;第三可以进行代码恢复;第四为了代码的安全性。 有关Subclipse插件的安装请看http://www.uml.org.cn/pzgl/200904106.asp 下面我记录一下Subclipse里的基本操作:1.更新、提交鼠
2009-09-27 17:38:00
7493
1
原创 剖析iPhone项目中的Makefile文件
INFOPLIST_FILE=Info.plistPlist是property list的缩写,plist文件中包含一些命名值和使用Core Foundation类型创建的值的列表。这些类型包括CFString、CFNumber、CFBoolean、CFData、CFArray及CFDictionary等。 SOURCES=/ main.m / NetServic
2009-09-25 11:56:00
4209
3
翻译 在Xcode中整合iPhone SDK和iPhone ToolChain
在官方提供的iPhone SDK下,我们可能无法访问很多iPhone底层的API接口。但ToolChain开发的程序无法发布到App Store里,鉴于国内大iPhone机器都为jailbreak的。所以如果我们是面对国内iPhone用户开发应用程序,那么可以使用ToolChain,如果应用程序需要发布到App Store,那么就要使用iPhone SDK。 在Xcode下整合ToolCh
2009-09-23 17:49:00
8173
1
原创 为Xcode自定义主题
我们知道,在Xcode的/Developer/Library/PrivateFramework/XcodeEdit.framework/Resources目录下默认有几个主题,如下: 但是这些默认的主题可能不是我们所喜欢和熟悉使用的,如果你想定制自己的主题,在这个目录下面放置自己定义的主题配置文件即可。 这些配置文件的后缀名字为*.xccolortheme并且是用标准的xml
2009-09-23 15:45:00
3809
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人