• 开始学习iPhone编程之三 – Hello world

    介绍:

    许多人对iPhone开发知之甚少,本教程的目标是写一个运行在iPhone模拟器上的“Hello World”程序。如果你不喜欢读这十个步骤,那么你可以直接去观看教程视频

     

    读文章 »

     
  • iPhone静态库项目模板

    Xcode并未提供iPhone静态库的模板,所以我每次都使用Mac Application的静态库模板,但每次建立项目后,都要针对iPhone进行一些修改,比较麻烦。我在网上找到一个可以直接被iPhone项目使用的静态库模板:

    http://github.com/keremk/iphone-static-library-project-template

     
  • 一个可用在iPhone上的SMTP客户端程序

    虽然iPhone上可以直接调用email程序发送email,但如果你需要直接通过SMTP发送邮件,这个开源项目可能对你十分有帮助:

    Quick SMTP client code for the iPhone

     
  • 建立自己的iPhone WebApp

    想要开发一个自己的iPhone WebApplication吗?一切从头开始当然是可行的,不过却是费时费力的。iWebKit可以帮助我们十分钟就建立一个iPhone/iPod Touch兼容的网站,而且你不需要有太多的建网知识。另外,它还提供了Wordpress,Drupal等插件以及各种模板使你的iPhone/iPod Touch网站更具个性。不过目前还没有Joomla的插件。

    详情见iWebKit网站

     
  • iPhone 3.0新特性系列教程之四 – 临近监测

    去年当Google发布了一款iPhone应用程序时引起了一段辩论:他们的程序使用了未公开的API来检测是否电话靠近说话者的耳朵。

     

    而在iPhone 3.0 SDK中,此API可以被任何程序使用了。本文展示怎样使用此API:

     

    读文章 »

     
  • 开始学习iPhone编程之二 – 有关开发的基本问答

    有一个印度的朋友向我询问了几个有关iPhone开发的问题,下面是我的回答。

    1) 我目前还不是注册的开发者,我将在2,3天内注册,我不能完成代码签名的原因是不是这个?
    要进行代码签名,有两种方式,一种是正确的方式,一种是错误的方式。正确的方式是使用Apple开发者许可证,错误的方式是使用Cydia。我推荐你使用正确的方式。所以,再多等2,3天,你就可以安装应用程序到你的设备上了。

    2)注册后怎样获取证书…?(代码签名证书…)可以告诉我详细的步骤吗?
    一旦你获得了许可证(apple会email你), 你就可以开始访问 http://developer.apple.com/iphone的Program Portal。从那里可以获取证书(certificate)。

    译者注:实际上获取签名证书的步骤相当繁复,不知有无apple中文网站是否有说明。英文说明翻译工作量十分大,不知感兴趣的人多不多。

    3) 怎样发布我的应用程序…(可以不需要App-store进行程序发布吗?)
    你应该知道,数以百万计的iPhone用户中的80%到90%是通过Apple store下载程序的。 但是如果你的目标对象是“越狱”用户,你需要通过Cydia。(译者注:或者通过Icy)。如果你使用的是Apple官方SDK,那么你可以同时在Cydia和Apple store 上发布你的应用程序。

    4) 总共有多少证书?(像代码签名证书之类)
    有两种类型的证书:
    1. 开发者证书,你可以用来在Xcode调试器中测试程序。.
    2. 发布证书,用来发布给你的应用程序给客户或发送给客户。

    译者注:实际上又有两种情况,一种是发布给App Store,另一种叫Ad-hoc发布,仅限于注册了iPhone UUID的用户使用,便于测试。

    5)  我是否不进行注册而让我的程序运行在设备上(“越狱”的设备)?
    你可以在“越狱”的设备上运行程序,你需要的只是Apple开发者许可证或通过Cydia安装程序。

    原文见:Basic Questions before You start iPhone Development
     
  • 跨平台代码分享之三 – XML解析器

    XML格式使用越来越广泛,不论是游戏还是普通应用软件都有使用。而我喜欢用xml作为配置文件。XML解析的方法实在很多,最根本的两种是SAX和DOM。SAX需要一边读取文件一边解析,速度较快;而DOM采用树状结构保存解析文件,使用方便。iPone自带的XML解析器一则无法跨平台,一则使用不便,还有一些bug(我是指SDK 2.0,新版本SDK 3.0的XML解析器没用过,所以没有发言权),所以我决定使用其他开源XML解析器。开源的XML解析器也有很多种,比如libxml2,TouchXML(iPhone版),tinyxml等。其中tinyxml简单易用,如果你不要求诸如DTD等功能,那么tinyxml绝对应该是你的首选。我采用的是ticpp(tinyxml的cpp版本,采用DOM方法)。

     

    读文章 »

     
  • 从地址簿提取联系人信息

    介绍:

    本教程将介绍怎样通过代码从地址簿中获取联系人信息。在iPhone上这实际上比你想象的更容易。你可以提取任何存储于地址簿中的信息,如图片(照片),email地址。注意: iPhone提供了简易的用户联系信息的提取方法但附加了编辑限制。你的程序可以访问所有信息但不允许修改。本教程中,我将介绍提取用户联系信息的简单步骤,最终输出如下所示:

    Picture 13 iPhone Tutorial for Retrieving Contact information from AddressBook
    图11. 最终输出

    读文章 »

     
  • iPhone 3.0新特性系列教程之一 – 使用UIPasteboard复制/粘帖

    今天的主题是怎样读/写粘帖板。

     

    读文章 »

     
  • 用户是上帝?

    这几天有朋友向我抱怨Apple Development Center循环登录问题(即输入用户名和密码后又进入登录页面,无任何错误提示),这让我回忆起去年在一段悲惨遭遇,有感而发。

     

    去年我在国内使用铁通网络,遇到过此问题,找ISP,人家一句话就打发我了,你其他网站都可以登录,那一定是Apple的网络问题了。我一想也是,至少Apple会知道在什么情况下会发生这种现象吧。于是乎赶紧联系Apple中国的客服,这一联系不要紧,接连三个月的拉锯战,让我深深体会了当年秋菊打官司的艰辛。说句实话,我并没打算Apple真能给我一个完美的解决方案(实际上我通过代理还是可以登录的,虽然十分之麻烦,而下载SDK此类的工作根本是无法进行的了),但他们每次email的回复都不竟让我怀疑他们是不是把每个客户当成了脑残(对不起,并非歧视残疾人)。通篇的废话,虚假的客套,每次都是诸如“请使用其他浏览器,请清除cache或重启电脑……”的回答,让我最后不得不放弃“讨个说法“的念头。实际上据我所知,这不光是Apple中国独有的问题,我在Apple开发者论坛上也看到一些老外遇到同样的问题,至今也无法解决。

     

    商场如战场,每个人特别是Steve Jobs这种商场中的精英更是深谙此理。那么,“用户是上帝”这句放之四海皆准的道理,为什么就被Apple置之脑后了呢?我想可能因为我们是开发者,而不是最终用户吧?当然,生活还要继续,如果我们还打算通过Apple Store赚钱的话,也只有忍下去了,谁让我们有五千年”谦和忍让“的文化熏陶呢?