<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[shenjianping的专栏]]></title><description><![CDATA[iOS and XMPP]]></description><link>https://blog.youkuaiyun.com/tjsjping</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; tjsjping]]></copyright><item><title><![CDATA[SpiderMonkey (JavaScript engine)]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7168295</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7168295</guid><author>tjsjping</author><pubDate>Sat, 31 Dec 2011 13:23:36 +0800</pubDate><description><![CDATA[home page

Embedding SpiderMonkey - best practice]]></description><category></category></item><item><title><![CDATA[Apache Ant]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7168268</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7168268</guid><author>tjsjping</author><pubDate>Sat, 31 Dec 2011 13:15:16 +0800</pubDate><description><![CDATA[Apache Ant, 现在流行的生成package的一个open source, 还没有研究过，备忘


http://ant.apache.org/]]></description><category></category></item><item><title><![CDATA[Unix File Permissions]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7168136</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7168136</guid><author>tjsjping</author><pubDate>Sat, 31 Dec 2011 12:03:05 +0800</pubDate><description><![CDATA[http://www.unix.com/tips-tutorials/19060-unix-file-permissions.html]]></description><category></category></item><item><title><![CDATA[Patch to make openssl1 even more XMPP-friendly]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7168127</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7168127</guid><author>tjsjping</author><pubDate>Sat, 31 Dec 2011 11:59:15 +0800</pubDate><description><![CDATA[XMPP牛人写的一个patch:
https://gist.github.com/1511463



description:
This adds support for xmpp-server, allows setting the name of the server
differently than the host you're connecting to (using -]]></description><category></category></item><item><title><![CDATA[The GNU Readline Library]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7168120</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7168120</guid><author>tjsjping</author><pubDate>Sat, 31 Dec 2011 11:56:53 +0800</pubDate><description><![CDATA[一个很好的console read库， 备忘
http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html]]></description><category></category></item><item><title><![CDATA[libevent – an event notification library]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7168114</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7168114</guid><author>tjsjping</author><pubDate>Sat, 31 Dec 2011 11:54:40 +0800</pubDate><description><![CDATA[一个很好的异步IO event的open source, 用C写的，备忘
http://libevent.org/]]></description><category></category></item><item><title><![CDATA[python列举目录（包括子目录）下的所有文件]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7057058</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7057058</guid><author>tjsjping</author><pubDate>Fri, 09 Dec 2011 14:47:37 +0800</pubDate><description><![CDATA[def ListFiles(dir) :
	print "list file in dir ", os.path.abspath(dir)
	subdir = []
	for item in os.listdir(os.path.abspath(dir)) :
		if os.path.isfile(os.path.join(dir, item)) :
		    print item
		els]]></description><category></category></item><item><title><![CDATA[osx获取全局键盘／鼠标事件]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7027254</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7027254</guid><author>tjsjping</author><pubDate>Wed, 30 Nov 2011 14:57:27 +0800</pubDate><description><![CDATA[下面的代码可以获取osx下的键盘输入，这个是全局的，也就是说在其他Application中输入键盘事件，这些事件也能被捕获。


CGEventRef myCallBack(CGEventTapProxy proxy, CGEventType type, CGEventRef event, void *userInfo)
{

    UniCharCount actualStringLen]]></description><category></category></item><item><title><![CDATA[编译ios平台的openssl]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7018974</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7018974</guid><author>tjsjping</author><pubDate>Mon, 28 Nov 2011 11:53:52 +0800</pubDate><description><![CDATA[发现一个不错的地方介绍如何在ios平台下编译openssl，试用了一下，成功了。
需要注意的一点是,需要用openssl1.0编译，同时编译出来的文件生成在openssl目录下面:libCrypto.a libssl.a


https://github.com/sjlombardo/openssl-xcode





Usage


In a normal case]]></description><category></category></item><item><title><![CDATA[How To Choose The Best XML Parser for Your iPhone Project]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7011896</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7011896</guid><author>tjsjping</author><pubDate>Fri, 25 Nov 2011 14:14:34 +0800</pubDate><description><![CDATA[come from below blog:
http://www.raywenderlich.com/553/how-to-chose-the-best-xml-parser-for-your-iphone-project]]></description><category></category></item><item><title><![CDATA[class-dump，分析可执行／app文件的函数定义]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7007529</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7007529</guid><author>tjsjping</author><pubDate>Thu, 24 Nov 2011 12:23:48 +0800</pubDate><description><![CDATA[class-dump是一个开源项目，可以从http://www.codethecode.com/projects/class-dump/下载。
下面是我对自己写的一个demo程序，GKDemo.app用class-dump解析后得到的结果：
note: /Users/tonys/Library/Developer/Xcode/DerivedData/GKDemo-bgpwxsribkdlyph]]></description><category></category></item><item><title><![CDATA[Message Forwarding总结]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/7004384</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/7004384</guid><author>tjsjping</author><pubDate>Wed, 23 Nov 2011 15:45:54 +0800</pubDate><description><![CDATA[在Objective-C中，如果你将一个没有实现的消息发送给一个接受者，系统会调用接受者forwardInvocation:方法，从而给这个接受者一个二次处理的机会。机遇这个特性，我们可以做一些自己的处理。

例如下面的调用，我们调用了一个不存在的方法，系统就会调用myObject对象的forwardInvocation:方法。
objc_msgSend(self, @selector(di]]></description><category></category></item><item><title><![CDATA[显示／隐藏 adium XMPP控制台]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/6997264</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/6997264</guid><author>tjsjping</author><pubDate>Mon, 21 Nov 2011 17:08:26 +0800</pubDate><description><![CDATA[come from http://trac.adium.im/wiki/HiddenPreferences


XMPP Advanced Features (Default: Off)

To enable the advanced features (only the XML Console menu item right now), run the following comman]]></description><category></category></item><item><title><![CDATA[使用AVPlayer获取HTTP live stream audio文件的duration]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/6996515</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/6996515</guid><author>tjsjping</author><pubDate>Mon, 21 Nov 2011 14:27:58 +0800</pubDate><description><![CDATA[关于AVPlayer的详细解析，请看Apple document。但是document里面并没有详细解析如何获取HTTP live stream文件的duration，google了一下，发现通过duration属性获取的方法，不能得到正确的直。正确的做法应该是通过调用AVPlayerItem的seekableTimeRanges来获取（loadedTimeRagnes表示已经下载的部分）。
事]]></description><category></category></item><item><title><![CDATA[如何往iphone模拟器中增加图片]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/6991934</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/6991934</guid><author>tjsjping</author><pubDate>Sat, 19 Nov 2011 21:48:06 +0800</pubDate><description><![CDATA[Explain step by step of Airsource Ltd's answer for adding image to simulator:


Drag it to simulator, then Safari opens (or browse to the Image in the internet using Safari)
Hold your click on the]]></description><category></category></item><item><title><![CDATA[在macpro上安装windows 7]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/6968349</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/6968349</guid><author>tjsjping</author><pubDate>Mon, 14 Nov 2011 13:00:49 +0800</pubDate><description><![CDATA[google一下，网上应该有很多文章介绍如何在macpro上安装windows 7，我今天上午安装了windows 7, 等所有安装好以后，发现windows 7连不上网络，花了一些时间研究了一下，原来是没有安装mac安装盘里面的bootcamp（for windows)，安装了bootcamp，一切都正常了。所以简单来说在macpro上安装windows需要如下几个步骤：


安装wind]]></description><category></category></item><item><title><![CDATA[登陆csdn 1000次]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/6966500</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/6966500</guid><author>tjsjping</author><pubDate>Sun, 13 Nov 2011 20:13:46 +0800</pubDate><description><![CDATA[发现自己竟然有排名了，纪念一下。]]></description><category></category></item><item><title><![CDATA[xcode 4.2 bug  of my mac 32-bit or my mac-64 bit]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/6959921</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/6959921</guid><author>tjsjping</author><pubDate>Fri, 11 Nov 2011 15:13:45 +0800</pubDate><description><![CDATA[当xcode 4.2的工程文件被修改后（ outside，可能别人修改了）, xcode 4.2 就会显示my mac-64bit(我的机器上）, stack overflow上有人说这时app dev确认的一个bug，会在xcode 4.2的下一个版本fix。
解决方法是close code and reopen it。
app的东西做的是很酷， 不过xcode的小问题一直不断，这个问题不知]]></description><category></category></item><item><title><![CDATA[xcode 4.2 设置.xcconfig文件]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/6959548</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/6959548</guid><author>tjsjping</author><pubDate>Fri, 11 Nov 2011 13:55:59 +0800</pubDate><description><![CDATA[习惯于xcode 3的开发人员，升级到xcode 4.2以后，肯定会有一段时间不会适应，例如在什么地方可以设计xcconfig文件等。google了一下，终于发现如何在xcode 4.2设置这个文件了，直接上图：
下图中红色部分，你就可以选择你想要的xcconfig文件了。]]></description><category></category></item><item><title><![CDATA[ios多线程之我见]]></title><link>https://blog.youkuaiyun.com/tjsjping/article/details/6936580</link><guid>https://blog.youkuaiyun.com/tjsjping/article/details/6936580</guid><author>tjsjping</author><pubDate>Mon, 07 Nov 2011 09:12:27 +0800</pubDate><description><![CDATA[引言

随着多核CPU的兴起，传统的线程处理方法已经不能满足现在的需求, 为了解决这个问题，apple ios提出了新的解决方法：



GCD grand central dispatch，serial dispatch queue按序执行，concurrent queue并发执行

operation queues, 遵循first in, first out原则
opera]]></description><category></category></item></channel></rss>