自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (2)
  • 收藏
  • 关注

原创 本博客内容说明

在CSDN上写过一段时间的博客,直到前段时间接触到了git和github,便在github上搭建了一个个人博客,并逐渐喜欢上了使用git+jekyll的博客写作方式。但毕竟CSDN上的人气高,所以以后的文章会首先发布到github,同时在这里也会发公布一下,但只是简介,具体内容需要还是要去个人博客上看。个人博客地址:http://webfrogs.me/

2012-12-18 14:59:12 1085

原创 飞鸽协议分析之上下线报文分析之二

上一篇的飞鸽协议上下线报文分析,写的比较乱,并且其中有些分析还是有点出入。最近我又针对飞鸽协议做了详细的抓包分析,特此这一篇中对上下线报文做一个总结,其中也讲解了发送消息的一些内容。有关聊天报文和文件传输报文,以后我会在分析的比较透彻以后写出技术分析文章。这里纠正上一篇中的一个错误,就是针对飞秋报文和飞鸽报文差异的那部分,经过我的分析后,发现飞秋的报文和飞鸽的报文基本上是一致的,飞秋的定制信息

2012-03-02 14:12:51 3107 4

原创 飞鸽协议分析之上下线报文分析

最近在研究飞鸽协议。飞鸽的上下线的原理很简单,就是,当第一次上线时,会在局域网内广播一条消息,所有在线的飞鸽用户在收到广播的上线消息后,都要回复一条消息,这样,就完成了新上线用户和已上线用户的用户列表的更新,也就是都有了相互的信息。而下线时,则广播一条下线消息,接收方在收到后,将相应的用户从用户列表中删除。     由于飞鸽版本众多,比如飞秋,同是飞秋团队所写的飞鸽传书等等,经过分析发现,具体

2012-02-13 14:05:41 5440 2

原创 IOS工程自动打包并发布脚本实现

文章首发地址:http://webfrogs.me/2013/02/18/ios-automation/作者:webfrogs转载请注明出处。前言IOS的开发过程中,当需要给测试人员发布测试包的时候,直接使用xcode来做的效率是非常低下的。尤其是当有一点小改动需要重新出包时,那简直是个折磨的人的工作。通过一番研究后,遂决定写一系列脚本,以代替人工完

2013-02-18 17:35:26 31895 13

原创 IOS开发之自定义系统弹出键盘上方的view

博文首发地址: http://webfrogs.me/2013/01/09/ios-keyboard-custom-upperview/这篇文章解决的一个开发中的实际问题就是:当弹出键盘时,自定义键盘上方的view。目前就我的经验来看,有两种解决方法。一个就是利用UITextField或者UITextView的inputAccessoryView属性,另一种,就是监听键盘弹出的

2013-01-10 09:30:54 4872

原创 IOS开发之ZBarReaderView的使用

博文首发地址:http://webfrogs.github.com/2012/12/26/iphone-use-zbar/简介当开发IOS程序中需要用到二维码识别功能的时候,zbar这个开源库估计会被不少人选择。但是关于zbar的用法,网上的资料大部分都集中在ZBarReaderViewController这个类的使用上。本人在使用中,发现ZBarReaderViewControl

2012-12-26 18:08:46 3928

原创 使用jekyll来写博客的一些心得

总结一下最近使用jekyll+github+markdown写作的心得。见博文:http://webfrogs.github.com/2012/12/20/use-jekyll/

2012-12-20 22:51:10 3167

原创 ios静态库制作中的注意事项

文章首发地址: http://webfrogs.github.com/2012/12/18/ios-static-lib/简介:在开发过程中,经常会碰到一些在不同工程中经常用到的部分,把这些部分抽取出来做成一个静态库往往是一个比较好的做法。xcode里就有制作静态库的模板,相关的制作步骤网上也有很多,但在实际的操作中,还是有不少细节方面需要注意。以下是我碰到的一些问题总结。

2012-12-18 14:52:01 1780 1

原创 IOS引用的静态库里包含category文件出现“unrecognized selector”的解决办法

参见apple文档:http://developer.apple.com/library/mac/#qa/qa1490/_index.html其中注意:不止要在静态库的工程里使用 -all_load编译选项,使用库的工程也需要这个选项。

2012-12-10 17:37:30 2582 1

原创 将ubuntu下gnome3的shell窗口的关闭按钮改为左侧

首先安装dconf-tools,命令: sudo apt-get install dconf-tools然后依次选择 org → gnome → shell → overrides → button layout将其内容改为:close,minimize,maximize:

2012-12-08 22:52:29 3481

原创 IOS中UIWebView和JavaScript交互

本文主要介绍IOS中UIWebview与JS之间的交互过程。博客地址:http://webfrogs.github.com/IOS/2012/11/02/webviewandjs/

2012-11-05 09:37:52 1535

原创 shell脚本实现ipa一键安装(itms-services协议)

文章地址: http://webfrogs.github.com/2012/09/27/ipapublsh/通过itms-services协议,可以通过safari浏览器直接在IOS设备上安装应用程序。具体效果可以看图。 文章具体请看上面链接。

2012-09-27 17:26:08 10710 1

原创 xcode自动打ipa包脚本

文章首发地址:http://webfrogs.github.com/IOS/2012/09/19/buildipa/前言使用xcode进行IOS开发的时候,很多时候我们需要将工程打包成ipa文件,而xcode本身并没有这些功能。但是通过安装xcode的“Command Line Tools”这个工具,我们可以使用xcodebuild这个命令来对工程进行打包。然而

2012-09-20 10:32:07 13961

转载 iPhone开发之深入浅出 — ARC之对象转型

尊重作者,原帖地址:点击打开链接根据苹果官方的文档(https://developer.apple.com/library/ios/#releasenotes/ObjectiveC/RN-TransitioningToARC/Introduction/Introduction.html):__bridge只做类型转换,但是不修改对象(内存)管理权;__bridg

2012-08-14 09:58:33 1066

原创 IOS开发问题解决之Xcode修改项目名称后,无法选择run的设备

问题描述    有时在项目中需要修改项目名称,但可能会出现需要run工程时,却没有了模拟器和设备的选项。解决方法   选择  Product--->Edit Scheme,在打开的框中,找到对应的工程。点击左下方的“Manage Schemes”,点击打开的对话框右上角的“Autocreate Schemes Now”按钮后,会生成一个新的行,删除原来的行,然后选中新的行,点击“OK”

2012-07-20 15:29:43 6756

原创 IOS开发问题解决之Xcode运行程序时attaching to挂起不动

问题描述     Xcode运行程序时,有时会出现程序build成功,但是程序中显示:attaching to xxx...,然后挂起不动。解决方法    如果重启Xcode和模拟器后都不成功。而且attaching to 后面跟的名字与模拟器里生成的文件名字不同,那就按一下步骤解决:点击左侧的项目,然后选择build Setting。找到Packaging一栏,里面有一个选项

2012-07-12 12:33:32 7621

原创 IOS开发之常用系统函数收集

字符串相关 NSString 的函数 sizeWithFont:constrainedToSize:lineBreakMode:       API文档解释:若字符串以规定的约束条件进行描绘,则返回实际的大小。      用途:返回以指定字体进行描绘时,字符串所占据的实际大小。      举例:        UIFo

2012-07-04 15:48:14 2108

原创 IOS开发之将以NSDictoray组织的NSArray中以其中的NSDate大小来排序

直接来段代码:// 按日期排序 NSArray *sortedArray = [array sortedArrayUsingComparator:^(id obj1, id obj2){ NSDate *date1 = [obj1 objectForKey:RecordDateKey]; NSDate *date2 = [obj2 objec

2012-07-04 15:38:59 3859 1

原创 IOS开发博客收集

技术博客个人博客: http://my.oschina.net/plumsoft/blog?catalog=145903&p=1ASIHTTPRequest详解:点击这里CATransform3DMakeRotation旋转,翻转:点击这里日期处理:点击这里问题解决XCODE语法高亮消失解决办法:点击这里

2012-06-25 15:48:49 1104

原创 IOS开发之所有类型的UIKeyboardType图片展示

在使用UITextField的时候,我们经常会有需求来控制打开的键盘的类型,虽然文档里都有相应类型的说明,但都不够直观。现在,把所有的UIKeyboardType来以图片展示下。可以直观的来选择所需的键盘种类。UIKeyboardTypeAlphabet

2012-06-17 10:50:15 12034 1

原创 IOS开发之触摸背景关闭键盘的代码实现

直接上代码:// 触摸背景,关闭键盘- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ UITouch *touch = [touches anyObject]; UIView *view = (UIView *)[touch view]; if (view == self.view)

2012-06-15 10:54:43 5331

原创 Mac os x下git merge工具P4Merge的安装与配置

下载安装    我们使用P4Merge,这个工具,非常好用,而且是免费的工具。P4Merge这个工具可以在所有的主流平台上运行。    下载P4Merge,请点击这里 。打开链接以后,找到名字为P4V的下载区域,选择Macintosh-Mac OS X for x86_64,点击打开的“Accept and Download”下载按钮进行下载。    下载完后安装,只需

2012-06-14 09:22:05 12672

原创 IOS开发问题解决之限制UITextField输入特定位数小数时,Done按钮失效

问题描述      要求是限制UITextField只能输入一位小数。我的方法是重写delegate的textField:shouldChangeCharactersInRange:replacementString:函数。自己写的代码如下:-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NS

2012-06-11 11:12:39 3421

原创 linux常用技巧总结

1.改变命令行提示的颜色PS1="\[\e[31m\]\h:\W \u\$ \[\e[m\]"然后使用export导出

2012-06-07 16:47:41 833

原创 IOS开发问题解决之UIAlertView调用UIActionSheet后灰色背景一直存在

问题描述今天开发IOS时碰到了一个问题,就是在UIAlertView的delegate方法里初始化一个UIActionSheet,并显示后,在选择了按钮的操作以后,会有灰色背景一直存在,挡住了整个页面,使得页面无法交互。解决方法在alertView:clickedButtonAtIndex:这个委托方法里,使用下面代码调用显示UIActionSheet:[self perfor

2012-06-07 16:39:51 3230

原创 IOS开发之自定义UIActionSheet

IOS开发中,经常会用到UIActionSheet,但是,默认的只能添加按钮。如果能自定义的话,岂不是更好?上网搜了一下,都是只有那一种代码,通过设置几个按钮来增加UIActionSheet的高度,不是很准确。今天研究了一下,然后做了一个可以自定义高度和控件的通用UIActionSheet,拿出来共享一下。自定义UIActionSheet的思路就是写一个继承了UIActionSheet的类,然

2012-06-01 20:35:41 11719 9

原创 Windows环境下msysgit下安装gitflow步骤。

之前发表了一篇关于Windows环境下搭建git服务器的博文,下面开始讲解一下Windows环境下安装gitflow的步骤。参考文档,来自github的gitflow的wiki,链接:https://github.com/nvie/gitflow/wiki/Windows  这里只介绍msysgit环境下的gitflow安装。首先需要下载两个文件:getopt.exe和libintl3.d

2012-05-26 00:00:05 10037

原创 IOS中UIScrollView的contentSize、contentOffset和contentInset属性

IOS中,UIScrollView是可以滚动的视图,其中最常用的UITableView就是继承了UIScrollView。跟所有的view一样,UIScrollView有一个frame属性,同时,UIScrollView还具有contentSize、contentOffset和contentInset属性。我在学习中,就觉得其中contentSize和contentOffset相对比较好理解,

2012-05-23 16:48:51 72418 3

原创 关于git的博文收集

本文记录一些关于git的好的博文链接,以供查阅。git-简易指南   http://rogerdudler.GitHub.com/git-guide/index.zh.html   关于git的入门教程,浅显易懂。如何高效利用github   http://www.yangzhiping.com/tech/github.html  介绍github的文章,写的很好。 

2012-05-23 09:26:35 2405

原创 Windows下搭建基于ssh的git服务器

最近接触到了git,感觉到了它的强大和方便,git在linux环境下使用起来是非常方便,但如何在windows下搭建一个基于ssh的git服务器呢?闲话不多说,开始。本文系本人原创,若要转载,请注明文章出处。http://blog.csdn.net/ccf07031、所需的软件下载及安装所需工具下载地址:msysgit    http://code.google.com/p

2012-05-19 15:52:47 74566 16

原创 解决安卓4.0获取本地IP地址问题。

最近写的程序需要获取本地IP地址,于是上网搜了下,找到了一段代码。如下:public String getLocalIpAddress() { try { for (Enumeration en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) { Netw

2012-04-11 21:27:34 9566 2

转载 android sqlite3 adb命令学习

创建数据库在cmd下面调用sqlite3.exe,创建数据命令如下:sqlite3 db_name.xx;数据库名称任意,创建后直接进入数据库;如果文件存在,则直接打开;SQL的指令格式所有的SQL的指令都是以分号(;)结尾的,为增加可读性,允许一个指令多行编辑,直到遇到分号结束指令;sqlite3中两个减号(--)代表注释,sqlite会忽略。创建表键入以

2012-02-02 13:10:17 1406

原创 Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE解决

刚开始学习android,今天测试SDK里带的例子JetBoy时,出现了个错误Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE上网搜了下,原来是虚拟机内存不够,在eclipse里解决方法如下:在 run configurations的target标签里最下面,加上参数-partition-size 256如图然后

2011-11-14 20:41:32 2465

原创 C++临时量

<br />     编译程序在编译代码时,在求表达式值期间,编译器有时必须创建临时对象(tempeoary object)。和其他别的对象一样,他们需要存储空间,并且必须能够构造和销毁。但是由于这些工作是有编译器自动为我们完成,我们看不到它们——编译器负责决定它们的去留以及它们存在的细节。但是临时量有这样一种情况:它们自动地成为常量。在一般情况下,我们是接触不到临时对象的,而试图改变临时量是错误的,因为这么信息是不可得的。注意:编译器使所有的临时量自动地成为const。下面通过代码来分析。<br />

2010-11-28 10:16:00 1381 1

原创 C++常量

<br />    在C语言中,常量一般是通过预处理器建立宏来进行文本替代的。如下面代码:<br /><br /><br />#define BUFSIZE 100<br /><br /><br /><br />    这中间没有类型检查功能,而且替代是发生在编译阶段,编译器通过把程序里的所有BUFSIZE来用100替代,并且在这期间,它不占用存储空间。在C++中,完全可以用const取代#define。<br />    C++中const默认为内部连接,意思是const仅在const被定义的文件里才是可

2010-11-26 14:39:00 878

原创 delete 和delete []的区别

<br />    今天看到动态内存分配时对delete和delete[]产生了疑惑,通过一个程序分析下他们的区别。<br /> <br />#include <iostream>using namespace std;class T {public: T() { cout << "constructor" << endl; } ~T() { cout << "destructor" << endl; }};int main(){ const int NUM = 3;

2010-11-25 18:52:00 979

IOS自定义UIActionSheet的Demo

IOS自定义UIActionSheet的例子,供大家学习

2012-06-01

谢希仁计算机网络(第5版)答案

绝对第5版答案。有些题目这里没有可以参考书后答案。

2009-12-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除