惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
云风的 BLOG
云风的 BLOG
人人都是产品经理
人人都是产品经理
博客园 - 叶小钗
Engineering at Meta
Engineering at Meta
Vercel News
Vercel News
Y
Y Combinator Blog
B
Blog
Microsoft Azure Blog
Microsoft Azure Blog
C
Check Point Blog
M
MIT News - Artificial intelligence
Jina AI
Jina AI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Apple Machine Learning Research
Apple Machine Learning Research
Hugging Face - Blog
Hugging Face - Blog
阮一峰的网络日志
阮一峰的网络日志
罗磊的独立博客
Stack Overflow Blog
Stack Overflow Blog
F
Fortinet All Blogs
博客园 - 司徒正美
I
InfoQ
Google DeepMind News
Google DeepMind News
GbyAI
GbyAI
U
Unit 42

博客园 - 小草

mac系统及xcode使用的SVN客户端安装升级 快速升级App支持iOS6及iPhone5的4寸屏幕 尝鲜安装iOS6及新特性 Delphi处理Http请求自定义Header 浅谈项目与产品的区别 xcode4.2开发最新的ios5应用,分享snow版本下载地址 xCode 4.X 免证书真机发布及调试 【iPhone开发】说说Xcode4中xib绑定的原理 【iPhone开发】XCode4开发iPhone应用的体验 多机多屏显示器实战 存储过程与业务类实现业务的差异比较 业务逻辑实现方式的讨论:存储过程 good or bad? 浅析SAAS数据模型设计(Oracle) 安装VS2010中文版初体验 QQ邮箱里可以定阅博客园的文章了 升级到NVelocity1.1版本 解决Office 2010打开文件提示“文件已损坏,无法打开。”的问题 突破电信3G宽带对网页浏览的上网限制 华为EC1261使用小记
第一个iPhone版本应用发布
小草 · 2011-10-24 · via 博客园 - 小草

经过一个多月的努力终于把第一个版本完成了,虽然功能不太多,但确实花了比较多的精力去学习和研究。其实还有很多可以完善的地方,总感觉好像永远都做不完,经常会想到一些可以增加的功能。由于项目时间的关系,只能暂时到一个阶段,再加上已经超过比较多的原先的需求。功能上主要是配合网络平台进行客户端的操作,以浏览为主,结合部分手机的优势,比如拨打电话、发短信、导入本地通讯录等特色功能。

 

趁着周末有时间总结一下:

1、总体的时间分配:

最初的一两周都在研究与适应Mac环境,由于我的笔记本CPU不支持VT所以没有办法安装Mac系统,只能用公司的黑苹果,后来申请了Mac mini。除此之外还要搞好xcode的证书配置、真机调试等细节的问题。

用了一到两周时间适应Xcode及开发语言等。搞定自定义类、方法、委托等基础的知识。

通过时间的磨练越来越有感觉,用了大半周的时间终于适应与解决内存泄漏的问题,解决闪退的问题。

一周多的时间增加组件,提升程序应用性,加入了异步加载、异步请求等操作。

中间最多的就是研究控件如何使用,还好网上的资源比较丰富,具体的问题一般都会有解决办法。

2、界面设计与交互

整体的感觉就是界面上不需要想太多,用最原始的控件处理业务也是非常的漂亮。不像Android平台很多都需要自定义界面,造成开发的麻烦与标准性不高。目前使用到最多的就是UITableView控件,用于列表显示与信息展示;而后是UIWebView控件来显示HTML的内容;整体布局使用UITabBarController,肯定会用到很多的NavBar

3、学习资源比较少

开源的资源相对少一些,但SDK的功能确实挺强大。

4、开源组件的使用

1)SBJSON用于解析Json格式的数据,由于网络传输的格式是Json所以这个组件肯定是必须的

2)ASIHTTP用于网络请求的处理,刚开始只是使用最原始的NSURLConnection,但后来发现使用ASIHTTP组件可以更好的控制请求队列以及图片上传、进度条显示等功能。

3)SDWebImage用于显示Web端图片的异步处理,结合TableView使用非常的方便。

4)MBProgressHUD用于显示进度条及等待的无限菊花,不过建议可以使用简化版本的SVProgressHUD这个更容易使用一些,后期会做一下调整

5)EGORefreshTableHeaderView用来实现微博刷新的功能,但目前还没有用得上的地方。

总结这些内容其实在IOSBoilerplate这个项目中已经整合好了,大家如果有兴趣可以直接下载该项目即可。不过我自己把每一个组件组合起来,在这个过程中也学习到了很多开发的技巧,多看一些开源的优秀代码对自我的提升有很大的作用。

 

后续要增加的功能和用到的技术:

1GPS的应用,结合地图信息可以计算距离提供时间安排的参考;提供相关的地图截图作为附件邮件发送等。

2)通讯录的强化,结合通讯录的数据作为数据来源之一,进行细致的加工处理

3)本地持久化处理,结合Sqlite进行数据的储备,增加该功能后需要再考虑数据同步更新的问题。

4TableView的分页处理优化,支持拖动、手动分页等功能

5)增加View切换的动画效果

6iPad版本的研发。个人总感觉iPad应用才会更实际一些,不过目前iPad用的人可能会少一些,先把iPhone版本搞得完美一些再说。

7)结合UIImageViewPageControl做一个识人小游戏,增加CoverFlow的方式查看员工照片等。

   更多细节可以关注微博:http://weibo.com/eulbq