<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Wangling</title>
	<atom:link href="http://wangling.me/feed/" rel="self" type="application/rss+xml" />
	<link>http://wangling.me</link>
	<description>I&#039;m Wang Ling. I&#039;m wangling you.</description>
	<lastBuildDate>Tue, 15 May 2012 14:17:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Three Things Apple Didn’t Tell You About In-App Purchase</title>
		<link>http://wangling.me/2012/04/three-things-apple-didnt-tell-you-about-in-app-purchase/</link>
		<comments>http://wangling.me/2012/04/three-things-apple-didnt-tell-you-about-in-app-purchase/#comments</comments>
		<pubDate>Tue, 17 Apr 2012 16:38:39 +0000</pubDate>
		<dc:creator>an0</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[App Store]]></category>
		<category><![CDATA[IAP]]></category>

		<guid isPermaLink="false">http://wangling.me/?p=827</guid>
		<description><![CDATA[You read once again In-App Purchase Programming Guide and Technical Note TN2259 completely, yet still can not make the sandbox work. Now may be the time for a break to get something fresh: Bundle ID is case-sensitive. If it is com.moke.app in the iTunes Connect but com.moke.App in App-Info.plist — that is default Bundle ID [...]]]></description>
			<content:encoded><![CDATA[<p>You read once again <a href="https://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/StoreKitGuide/Introduction/Introduction.html">In-App Purchase Programming Guide</a> and <a href="http://developer.apple.com/library/ios/#technotes/tn2259/_index.html">Technical Note TN2259</a> completely, yet still can not make the sandbox work. Now may be the time for a break to get something fresh:</p>
<ol>
<li>Bundle ID is case-sensitive. If it is com.moke.app in the iTunes Connect but com.moke.App in App-Info.plist — that is default Bundle ID set in your app if you named your Xcode project &#8220;App&#8221; — IAP will not work.</li>
<li>&#8220;Waiting for Screenshot&#8221; is not a good status. At least you should upload a placeholder screenshot and let the product status be &#8220;Ready to Submit&#8221;.</li>
<li>No new Development Provisioning Profile is required. Though <a href="http://developer.apple.com/library/ios/#technotes/tn2259/_index.html">Technical Note TN2259</a> tells you to &#8220;Create, download, and install a new Development Provisioning Profile that uses your App ID enabled for In-App Purchase as seen in…&#8221;, it is not required if you are using a Development Provisioning Profile &#8220;Managed by Xcode&#8221; — it works for IAP apps even though it has a different App ID. Of course, it works for development installations only and you need setup Distribution Provisioning Profiles to distribute any apps no matter they have IAP or not.</li>
</ol>
<p>One more thing. It&#8217;s not Apple&#8217;s One More Thing. In fact, it is one more thing that Apple does not like. If you are using a jailbroken device, make sure you uninstall AppSync from Cydia before testing IAP.</p>
<div class="social">			<a href="https://twitter.com/share?url=http%3A%2F%2Fwangling.me%2F2012%2F04%2Fthree-things-apple-didnt-tell-you-about-in-app-purchase%2F" class="twitter-share-button" data-url="http%3A%2F%2Fwangling.me%2F2012%2F04%2Fthree-things-apple-didnt-tell-you-about-in-app-purchase%2F" data-text="Three Things Apple Didn’t Tell You About In-App Purchase" data-via="an0" data-count="none">Tweet</a>
			<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>			<script type="text/javascript" charset="utf-8">
(function(){
  var _w = 86 , _h = 18;
  var param = {
    url:"http%3A%2F%2Fwangling.me%2F2012%2F04%2Fthree-things-apple-didnt-tell-you-about-in-app-purchase%2F",
    type:'6',
    count:'', /**是否显示分享数，1显示(可选)*/
    appkey:'', /**您申请的应用appkey,显示分享来源(可选)*/
    title:'Three Things Apple Didn’t Tell You About In-App Purchase', /**分享的文字内容(可选，默认为所在页面的title)*/
    pic:'', /**分享图片的路径(可选)*/
    ralateUid:'1676354212', /**关联用户的UID，分享微博会@该用户(可选)*/
    rnd:new Date().valueOf()
  }
  var temp = [];
  for( var p in param ){
    temp.push(p + '=' + encodeURIComponent( param[p] || '' ) )
  }
  document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'" style="margin-left:5px;"></iframe>')
})()
</script></div>]]></content:encoded>
			<wfw:commentRss>http://wangling.me/2012/04/three-things-apple-didnt-tell-you-about-in-app-purchase/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Some Taps You Don&#8217;t Want</title>
		<link>http://wangling.me/2012/03/some-taps-you-dont-want/</link>
		<comments>http://wangling.me/2012/03/some-taps-you-dont-want/#comments</comments>
		<pubDate>Thu, 22 Mar 2012 22:25:57 +0000</pubDate>
		<dc:creator>an0</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[UIButton]]></category>

		<guid isPermaLink="false">http://wangling.me/?p=820</guid>
		<description><![CDATA[UIButton is one of the most simple and commonly used UIControl. We use it so often in the way it is intended to be used that we dismiss it as a perfectly meek boy until one day it bites our fingers when we tap it. Today is such a day. I have a UIButton that [...]]]></description>
			<content:encoded><![CDATA[<p><span class="code">UIButton</span> is one of the most simple and commonly used <span class="code">UIControl</span>. We use it so often in the way it is intended to be used that we dismiss it as a perfectly meek boy until one day it bites our fingers when we tap it.</p>
<p>Today is such a day.</p>
<p>I have a <span class="code">UIButton</span> that when tapped will trigger a custom view transition with animations. Animations mean duration — it takes some time to complete. Though the transition is still in progress, the button does not refuse more taps — it just loves taps!</p>
<p>I guess you see the problem here: What happens if the button is tapped again during the view transition?</p>
<p>Another view transition is triggered, of course, and I don&rsquo;t want it.</p>
<p>So I must filter out taps during the view transition.</p>
<p>Notice that you can&rsquo;t reproduce this problem by double tapping a button that triggers a standard view transition such as pushing a view controller using <span class="code">pushViewController<span style="color: #002200;">:</span>animated<span style="color: #002200;">:</span></span> or presenting a view controller using <span class="code">presentViewController<span style="color: #002200;">:</span>animated<span style="color: #002200;">:</span>completion<span style="color: #002200;">:</span></span>. I guess it is because the view the button is on is being covered during these standard view transitions so the button can not receive taps.</p>
<div class="social">			<a href="https://twitter.com/share?url=http%3A%2F%2Fwangling.me%2F2012%2F03%2Fsome-taps-you-dont-want%2F" class="twitter-share-button" data-url="http%3A%2F%2Fwangling.me%2F2012%2F03%2Fsome-taps-you-dont-want%2F" data-text="Some Taps You Don&#8217;t Want" data-via="an0" data-count="none">Tweet</a>
			<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>			<script type="text/javascript" charset="utf-8">
(function(){
  var _w = 86 , _h = 18;
  var param = {
    url:"http%3A%2F%2Fwangling.me%2F2012%2F03%2Fsome-taps-you-dont-want%2F",
    type:'6',
    count:'', /**是否显示分享数，1显示(可选)*/
    appkey:'', /**您申请的应用appkey,显示分享来源(可选)*/
    title:'Some Taps You Don&#8217;t Want', /**分享的文字内容(可选，默认为所在页面的title)*/
    pic:'', /**分享图片的路径(可选)*/
    ralateUid:'1676354212', /**关联用户的UID，分享微博会@该用户(可选)*/
    rnd:new Date().valueOf()
  }
  var temp = [];
  for( var p in param ){
    temp.push(p + '=' + encodeURIComponent( param[p] || '' ) )
  }
  document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'" style="margin-left:5px;"></iframe>')
})()
</script></div>]]></content:encoded>
			<wfw:commentRss>http://wangling.me/2012/03/some-taps-you-dont-want/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>坑爹的 iA Writer &amp; App Store 退款经历</title>
		<link>http://wangling.me/2012/03/app-store-refund-time-frame/</link>
		<comments>http://wangling.me/2012/03/app-store-refund-time-frame/#comments</comments>
		<pubDate>Wed, 14 Mar 2012 16:48:48 +0000</pubDate>
		<dc:creator>an0</dc:creator>
				<category><![CDATA[中文]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[App Store]]></category>

		<guid isPermaLink="false">http://wangling.me/?p=815</guid>
		<description><![CDATA[iA Writer 很坑爹，中文输入有问题。App Store 退款有时间限制，须在购买后 60 天之内提出。]]></description>
			<content:encoded><![CDATA[<h3>坑爹的 <a href="http://www.iawriter.com/">iA Writer</a></h3>
<p>我早就向 iA Writer 的开发者反映过中文输入时的<a href="http://www.youtube.com/watch?v=fOtSBvmSgyQ">跳动问题</a>。当时他们感谢了我反馈这个 bug，并声称尽力在后续版本中解决。</p>
<p>半年过去了，iA Writer 1.2.1 都出了，这个问题仍未解决。我再次去询问。这次他们说：“iA Writer 本来就没有声称支持中文输入。” Fuck！</p>
<h3>App Store 退款</h3>
<p>于是，我一怒之下首次在 App Store 申请退款，但是为时已晚：</p>
<blockquote><p>Dear Ling,</p>
<p>When you first noticed that you could not use the application for the purpose you intended you should have contacted the iTunes Store for a refund.</p>
<p>Regrettably we cannot be held responsible for developers giving false information on updates that they plan on releasing in the future.</p>
<p>The iTunes Store will not be able to offer you a refund. Since the system does not allow refunds past the 60 day point we very strongly encourage customers to notify the iTunes Store of any issues you have with your purchases within that 60 days time frame.</p>
<p>In light of the current circumstances I do hope you have a pleasant day, Ling.</p>
<p>Sincerely,</p>
<p>Missy<br/><br />
iTunes Store/Mac App Store Customer Support Senior Advisor</p>
</blockquote>
<p>简单复述：</p>
<ol>
<li>一旦发现 app 不好用，第一时间申请退款。</li>
<li>相信开发者所谓的“以后会修正”是你的事，App Store 不对此负责。</li>
<li>退款有时间限制，须在购买后 60 天之内提出。</li>
<li>虽然你被坑、退款不成，我们还是希望你有开心的一天。</li>
</ol>
<div class="social">			<a href="https://twitter.com/share?url=http%3A%2F%2Fwangling.me%2F2012%2F03%2Fapp-store-refund-time-frame%2F" class="twitter-share-button" data-url="http%3A%2F%2Fwangling.me%2F2012%2F03%2Fapp-store-refund-time-frame%2F" data-text="坑爹的 iA Writer &#038; App Store 退款经历: iA Writer 很坑爹，中文输入有问题。App Store 退款有时间限制，须在购买后 60 天之内提出。" data-via="an0" data-count="none">Tweet</a>
			<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>			<script type="text/javascript" charset="utf-8">
(function(){
  var _w = 86 , _h = 18;
  var param = {
    url:"http%3A%2F%2Fwangling.me%2F2012%2F03%2Fapp-store-refund-time-frame%2F",
    type:'6',
    count:'', /**是否显示分享数，1显示(可选)*/
    appkey:'', /**您申请的应用appkey,显示分享来源(可选)*/
    title:'坑爹的 iA Writer &#038; App Store 退款经历: iA Writer 很坑爹，中文输入有问题。App Store 退款有时间限制，须在购买后 60 天之内提出。', /**分享的文字内容(可选，默认为所在页面的title)*/
    pic:'', /**分享图片的路径(可选)*/
    ralateUid:'1676354212', /**关联用户的UID，分享微博会@该用户(可选)*/
    rnd:new Date().valueOf()
  }
  var temp = [];
  for( var p in param ){
    temp.push(p + '=' + encodeURIComponent( param[p] || '' ) )
  }
  document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'" style="margin-left:5px;"></iframe>')
})()
</script></div>]]></content:encoded>
			<wfw:commentRss>http://wangling.me/2012/03/app-store-refund-time-frame/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Joke 发烧友</title>
		<link>http://wangling.me/2012/03/joke-%e5%8f%91%e7%83%a7%e5%8f%8b/</link>
		<comments>http://wangling.me/2012/03/joke-%e5%8f%91%e7%83%a7%e5%8f%8b/#comments</comments>
		<pubDate>Sat, 03 Mar 2012 13:55:02 +0000</pubDate>
		<dc:creator>an0</dc:creator>
				<category><![CDATA[中文]]></category>
		<category><![CDATA[humor]]></category>

		<guid isPermaLink="false">http://wangling.me/?p=813</guid>
		<description><![CDATA[发烧中，得一笑话： 忽然意识到，打点滴治发烧的原理不就是往热水里兑凉水来降温吗？ Tweet]]></description>
			<content:encoded><![CDATA[<p>发烧中，得一笑话：<br />
忽然意识到，打点滴治发烧的原理不就是往热水里兑凉水来降温吗？</p>
<div class="social">			<a href="https://twitter.com/share?url=http%3A%2F%2Fwangling.me%2F2012%2F03%2Fjoke-%25e5%258f%2591%25e7%2583%25a7%25e5%258f%258b%2F" class="twitter-share-button" data-url="http%3A%2F%2Fwangling.me%2F2012%2F03%2Fjoke-%25e5%258f%2591%25e7%2583%25a7%25e5%258f%258b%2F" data-text="Joke 发烧友" data-via="an0" data-count="none">Tweet</a>
			<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>			<script type="text/javascript" charset="utf-8">
(function(){
  var _w = 86 , _h = 18;
  var param = {
    url:"http%3A%2F%2Fwangling.me%2F2012%2F03%2Fjoke-%25e5%258f%2591%25e7%2583%25a7%25e5%258f%258b%2F",
    type:'6',
    count:'', /**是否显示分享数，1显示(可选)*/
    appkey:'', /**您申请的应用appkey,显示分享来源(可选)*/
    title:'Joke 发烧友', /**分享的文字内容(可选，默认为所在页面的title)*/
    pic:'', /**分享图片的路径(可选)*/
    ralateUid:'1676354212', /**关联用户的UID，分享微博会@该用户(可选)*/
    rnd:new Date().valueOf()
  }
  var temp = [];
  for( var p in param ){
    temp.push(p + '=' + encodeURIComponent( param[p] || '' ) )
  }
  document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'" style="margin-left:5px;"></iframe>')
})()
</script></div>]]></content:encoded>
			<wfw:commentRss>http://wangling.me/2012/03/joke-%e5%8f%91%e7%83%a7%e5%8f%8b/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>韩有假，方有错</title>
		<link>http://wangling.me/2012/01/cold-square/</link>
		<comments>http://wangling.me/2012/01/cold-square/#comments</comments>
		<pubDate>Sat, 28 Jan 2012 13:35:45 +0000</pubDate>
		<dc:creator>an0</dc:creator>
				<category><![CDATA[中文]]></category>

		<guid isPermaLink="false">http://wangling.me/?p=800</guid>
		<description><![CDATA[面对方舟子文的合理质疑，韩寒答非所问，其支持者更是不知所谓，用无理和无礼把明眼看客一波波赶往对方阵营。不知这无理和无礼之下，是否是回天无力？我秉持人性本善的无罪推论原则，给韩寒献策。]]></description>
			<content:encoded><![CDATA[<p>正如<a href="http://weibo.com/1182419921/y2QEY3DV6">路金波所言</a>：“只要有天空的地方，就有道理可讲。一个真正光明磊落的孩子，不畏惧任何。”</p>
<p>韩寒阵营倒是出个把“讲理”的啊！再怎么“光明磊落的孩子”，也经不住你们这样答非所问、不切重点、倒行逆施的“辩护”啊。韩寒一介文人（+车夫），不善用逻辑理据来辩论，又不幸摊上“猪”（借路金波的自称）一样的队友，面对方舟子文思不乱的进攻只会信誓旦旦的背书、舍理保义的袒护、毫无风度的谩骂，硬是生生的把不少理性看客逼到对方阵营。如果韩寒真有团队，建议尽快引进些理工科人才。</p>
<p>说回韩寒自己。事发后的一系列文章大失水准，全无章法，答非所问，无济于事。我现在深信他当年真的是文理偏科十分严重的孩子，以至于到现在都还没能找补回来。刚出炉的<a href="http://blog.sina.com.cn/s/blog_4701280b0102e0fm.html">《看着手稿真欢乐——附16岁写孔庆东文章一篇》</a>又是一篇偏离阵地的文章，唯一亮点是这段新材料：</p>
<blockquote><p>对方有一点质疑的很对，如果语文考40分，那么写文章一定不好。这点其实我比较认同。的确，我语文有一次考了四十分，但那一次纯粹是为了发泄情绪，胡乱答题，评价考题，甚至还批判试卷。如果100分满分，平时我的语文成绩一般都在85分到90分左右（早期是100分满分，后来是120分满分，作文每个人都要被扣掉几分），然后理科都是不及格。如果你果真阅读了不少课外书，语文考试除了默写和填空有难度以外，其他还是不难高分通过的。</p>
</blockquote>
<p>这料本身是有价值的。它说明韩寒语文一直都是好的，若真，可推翻方舟子的<a href="http://blog.sina.com.cn/s/blog_474068790102dx1q.html">部分论据</a>：</p>
<blockquote><p>为什么一个文学天才的语文成绩、作文成绩如此糟糕？写作才能在考试时一点也没有表现出来？</p>
<p>在没有外人监督、有可能代笔或作弊的情况下（例如投稿），韩寒的作品就能表现出高于一般人的文学水平，会被认为出自成年人之手；而在课堂上，在和别人一起参加考试时，他的写作才能神秘地消失了，作文甚至拖了他的分数。</p>
</blockquote>
<p>但同时，这也与其父韩仁均所著《儿子韩寒》中的描述“韩寒的语文成绩经常不及格”形成了矛盾，再次落人口实。别说是方舟子了，我都很好奇到底韩寒的语文是好还是不好？不好，现在却来说好，那就明显在给伪证了。好，为何原先宣称不好？刻意塑造“不学有术”的天才形象？那也是骗人，甚至是用扭曲的价值观在害人！那就该好好批批，不得还嘴！但这是另一个批判点，不是方舟子现在抓的这个。你们这样前后矛盾，自觉出具以往语文考试成绩吧，别等方舟子来提醒了。</p>
<p>此文再次体现了韩寒在这场辩论中的不得要领。对方质疑《书店》、《求医》不是少年的你所写，你说十六岁的你写了《眼中孔庆东》有什么用？何况《眼》和前两篇也不是一个路数的文章。你要弄清楚对方质疑的点是什么。</p>
<p><a href="http://blog.sina.com.cn/s/blog_474068790102dx2o.html">《书店》最大的疑点</a>不在于成熟老练的文风笔法，而在于一个中年人的视角和“恶趣味”不可思议的出现在一个十四五六岁的少年身上。文风笔法可以刻意模仿，但挑战生理规律这种事还是需要解释一下。可行的解释：1）这不是韩寒自己的经历，但是由韩寒书写出来的。当然，这也可被批为“假”，但写作文瞎编这种事，谁真拿来说事就真是“恶趣味”了。2）韩寒就是这么过度早熟。</p>
<p><span id="contradiction"><a href="http://blog.sina.com.cn/s/blog_474068790102dx40.html">《求医》最大的疑点</a>在于其中对外国长篇名著的熟练引用，与之前韩寒自称“唯中外名著不读”“直到现在，我还没读全过一本外国名著”互相矛盾。</span>可行的解释：韩寒以前的不读书论是骗人的，是装逼、装帅、装神童、装天才。如此，韩寒当挨批，不得还嘴，还应澄清、检讨于天下。这套不读书论、天才说毒害多少青少年啊！对此，<a href="http://blog.sina.com.cn/s/blog_4701280b0102e0eu.html">韩仁均的文章</a>已隐约有所透露：</p>
<blockquote><p>大家之所以觉得他能做很多的事情，精力很旺盛，是因为他把别人可能用来应酬和娱乐的时间都用在工作上。你们可能不知道吧，如果没有比赛和游戏，他几乎每天晚上的八点开始写作或者看书，一直到早上六点，连续十个小时都在书房里。所以他的博客大多都是凌晨发的。<em>虽然他口头上不承认，一直说他在玩，但这个就好像一个考试很好的学生喜欢说他在家里从来不复习一样。</em>没有想到，他的努力反而成为了他的过错。</p>
</blockquote>
<p>所以，韩寒必然有假。</p>
<p>同样，方舟子有错。</p>
<p>方舟子的错很好说明，他也应该很好承认，因为这是推理的错误，想必死硬理性派科学斗士不会抵赖。具体错误发生在<a href="http://blog.sina.com.cn/s/blog_474068790102dx40.html">《“天才”韩寒作品《求医》分析》</a>：</p>
<blockquote><p>《父与子》和《烟》都是屠格涅夫的长篇小说，俄国文学曾在韩仁均这一代知青中流行，却不是“80后”喜欢的。而且韩寒在回忆中小学生活的小传《第三个人》中明确说自己不读中外名著，特别是这类翻译过来的长篇小说：“我无书不看，只是有一个怪癖，唯中外名著不读。那时我就觉得好些特被人推崇的长篇小说文笔拖沓，太强调思想性，而且有的翻译得半生不熟，读了几本后就觉得是浪费时间。直到现在，我还没读全过一本外国名著。”但是在《求医》中却引用了屠格涅夫两部长篇小说中相关的细节，信手拈来，不仅读过这两部长篇小说，而且十分熟悉，<em>显然不可能是韩寒写的</em>。</p>
</blockquote>
<p>方舟子发现了韩寒的自相矛盾，但得出的结论有失偏颇。<a href="#contradiction">如前所述</a>，A（韩寒能够对屠格涅夫长篇小说进行熟练引用），与B（韩寒“唯中外名著不读”“直到现在，我还没读全过一本外国名著”）形成的矛盾，并不一定得出A为假—即韩寒没有能力对屠格涅夫长篇小说进行熟练引用—进而推出《求医》非韩寒所作，也可以得出B为假—即韩寒所谓的“唯中外名著不读”“直到现在，我还没读全过一本外国名著”是骗人的。方舟子完全不考虑B的可能性，急忙得出“显然不可能是韩寒写的”这样的结论，反映了他的心之所向。这样不严谨的推理，发生在身经百战、老谋深算的方舟子身上，是不应该的。可见，方舟子还是先入为主了，不够纯理性啊。</p>
<p>除此之外，我不记得方舟子有明显的纰漏。他不出口伤人，摆事实，讲道理，步步为营，可敬！</p>
<p>顺便提醒韩寒方面军，要反驳方舟子，最好反驳他的推理。反驳他的论据，当然也行，只是别忘了这些论据大多来自韩寒、韩寒他爸、韩寒的朋友们。</p>
<p>“泼粪”不好，夸大美化也不好。若真被泼了粪了，在清洗时，顺便把那虚华的彩妆也洗去，挺好。</p>
<div class="social">			<a href="https://twitter.com/share?url=http%3A%2F%2Fwangling.me%2F2012%2F01%2Fcold-square%2F" class="twitter-share-button" data-url="http%3A%2F%2Fwangling.me%2F2012%2F01%2Fcold-square%2F" data-text="韩有假，方有错: 面对方舟子文的合理质疑，韩寒答非所问，其支持者更是不知所谓，用无理和无礼把明眼看客一波波赶往对方阵营。不知这无理和无礼之下，是否是回天无力？我秉持人性本善的无罪推论原则，给韩寒献策。" data-via="an0" data-count="none">Tweet</a>
			<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>			<script type="text/javascript" charset="utf-8">
(function(){
  var _w = 86 , _h = 18;
  var param = {
    url:"http%3A%2F%2Fwangling.me%2F2012%2F01%2Fcold-square%2F",
    type:'6',
    count:'', /**是否显示分享数，1显示(可选)*/
    appkey:'', /**您申请的应用appkey,显示分享来源(可选)*/
    title:'韩有假，方有错: 面对方舟子文的合理质疑，韩寒答非所问，其支持者更是不知所谓，用无理和无礼把明眼看客一波波赶往对方阵营。不知这无理和无礼之下，是否是回天无力？我秉持人性本善的无罪推论原则，给韩寒献策。', /**分享的文字内容(可选，默认为所在页面的title)*/
    pic:'', /**分享图片的路径(可选)*/
    ralateUid:'1676354212', /**关联用户的UID，分享微博会@该用户(可选)*/
    rnd:new Date().valueOf()
  }
  var temp = [];
  for( var p in param ){
    temp.push(p + '=' + encodeURIComponent( param[p] || '' ) )
  }
  document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'" style="margin-left:5px;"></iframe>')
})()
</script></div>]]></content:encoded>
			<wfw:commentRss>http://wangling.me/2012/01/cold-square/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>欺诈 app 追杀记 — 迟到的战果</title>
		<link>http://wangling.me/2012/01/tracker-killer/</link>
		<comments>http://wangling.me/2012/01/tracker-killer/#comments</comments>
		<pubDate>Sun, 22 Jan 2012 08:43:00 +0000</pubDate>
		<dc:creator>an0</dc:creator>
				<category><![CDATA[中文]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[App Store]]></category>

		<guid isPermaLink="false">http://wangling.me/?p=778</guid>
		<description><![CDATA[历时半载，龙抬头时，终斩获小妖一二，回顾一路艰辛，附 App Store 生存指南。作拜年礼，赠与各种有求、有爱、有魔之人。有求之人用以防身，有爱之人用以传播，有魔之人用以救赎。]]></description>
			<content:encoded><![CDATA[<p>不计之前在 Twitter 上的声讨，亦不计在 App Store 里的报告，仅从第一篇《<a href="http://wangling.me/2011/08/swindle-app-killer/">欺诈 app 追杀记</a>》算起，至今已过 5 个月。</p>
<p>年关，龙抬头时，祭出大杀器，终于斩获小妖一二：</p>
<ol>
<li>“<a href="http://itunes.apple.com/app/id438625047?mt=8">超级手机号码追踪器</a>”已经从 App Store 下架。</li>
<li>顺藤摸瓜出来的四个开发商中的一个 — <a href="http://itunes.apple.com/artist/goodcode/id331859333">GoodCode</a> — 已经从 App Store 消失。</li>
</ol>
<p>战果虽小，这一路追杀之艰辛还是值得回顾一下，也算年终对自己有个交代：</p>
<ol>
<li>很久很久以前，第一次在中国 App Store 首页十大榜单上注意到“超级手机号码追踪器”，当即识破其骗局，在 Twitter 上唾骂之。</li>
<li>很久以前，再次看到“超级手机号码追踪器”出现在十大榜单中，意识到 Apple 监管不力，骗子尝尽甜头用尽花招，受骗人数在不断增多，于是在 App Store “报告问题”，对部分引人注目的虚假好评“Report a Concern”（有谁知道在中国 App Store “Report a Concern” 有中文版的说法吗？）并再次在 Twitter 上声讨之，希望能让更多人知道、警惕。</li>
<li>2011年8月19日，“超级手机号码追踪器”又上十大了，我怒！决心铲除祸患，替天行道。于是撰文《<a href="http://wangling.me/2011/08/swindle-app-killer/">欺诈 app 追杀记</a>》详细揭露其骗局，揪出整个欺诈团伙，为受害者和有心一起除害的义士们提供几种维权途径，呼吁更多人加入，并厚着脸皮请 Twitter 上几个国产“果粉”大号帮忙扩散。</li>
<li>2011年8月20日，在 <a href="https://twitter.com/#!/apple4us">@apple4us</a> 的建议下给 appstorenotices@apple.com 写<a href="http://wangling.me/2011/08/mail-from-swindle-app-killer-to-app-store/">投诉信</a>反映这一情况。</li>
<li>几日后，不见回复，追加了一封，还是石沉大海。同时，还经由 <a href="https://twitter.com/#!/zuola">@zuola</a>、<a href="https://twitter.com/#!/POPOEVER">@POPOEVER</a> 帮忙把问题反映给 Apple 中国市场部，亦无反应。</li>
<li>2011年9月15日，“超级手机号码追踪器”又一次闪亮登陆十大榜单。同日，我还发现了<a href="http://wangling.me/2011/09/another-swindle-app-seller/">另一个欺诈 app 及其背后的团伙</a>。出离愤怒，又深感无力。再次撰文点评，并痛心疾首的批评了 Apple 的渎职：「你放任这些骗子在 App Store 上卖狗皮膏药，眼看惠顾你的用户上当受骗，难道你愿看到他们伤了心，对你失了信，离你而去？何况，那些不义之财你是抽了三成的，你真的希望大家说你“分赃”？”」此文传播到 Twitter 和新浪微博上得到一定的扩散和共鸣，但是没人真的动手跟进，上阵助力，于是很快又不了了之。</li>
<li>2011年12月5日，<a href="http://developer.apple.com/techtalk/">iOS 5 Tech Talk World Tour</a> 北京站，我刚回国，赶上参加。网上状告无门，那就当面反映。于是我牺牲了个把 session 的时间，跟 iTunes Connect Team 和 App Review Team 人员聊了这个事情。他们承认这些欺诈 app 和虚假好评违规，但说这事不属于他们管辖，告诉了我一个用 iTunes Connect 投诉的途径：iTunes Connect &ndash;> Contact Us &ndash;> App Store Questions &ndash;> Customer Reviews &ndash;> Specific Removal Request。我当场用此途径进行投诉。这是我此次 Tech Talk 之行的最大收获，无关 Tech。但是心里还是没底，毕竟又从“当面反映”转回到“网上告状”，参考前情，确无把握。</li>
<li>
<p>2012年1月7日，终于等来了首次回信：</p>
<div class="thumbnail"><a href="https://skitch.com/an00na/g43jm/itunesconnectfollowup"><img src="https://img.skitch.com/20120122-xgrpasmqg3nfrguimarr5cxusi.preview.jpg" alt="iTunesConnectFollowUp" /></a></div>
</p>
<p>&ldquo;submit <em>each</em> fraudulent report in a <em>separate</em> email. Be sure to include <em>screenshots</em> of the reviews.&rdquo; 要我一封 email 只报一个案，也就是说我要写好多封；还要我附上那些虚假好评的 screenshots。</p>
</li>
<li>2012年1月11日，收到 follow-up，说此案已转给相关 Apple teams：
<div class="thumbnail"><a href="https://skitch.com/an00na/g43ke/itunesconnectfollowup2"><img src="https://img.skitch.com/20120122-efmngm3mkuc7te3tqq3b6tbraa.preview.jpg" alt="iTunesConnectFollowUp2" /></a></div>
</li>
<li>2012年1月20日左右，我尝试打开“<a href="http://itunes.apple.com/app/id438625047?mt=8">超级手机号码追踪器</a>”页面时发现已经下架。</li>
</ol>
<p>这一路，真切体会了状告无门的无力感、邪恶盛行而不得抑制时的嚣张、正义不得伸张时的愤懑；也清楚认识到，“如果等着别人相助，此事大概会不了了之，届时只徒留一篇愤概文章。”</p>
<p>不过，这只是整个追杀战役中首场小小的胜利，路漫漫啊。十几个欺诈 app 只下架了一个，9 个开发商只关了一家。而且，几乎一模一样的骗局在不断继续上演 — 杀死了“超级手机号码追踪器”，还有“<a href="http://itunes.apple.com/cn/app//id435060395?mt=8">手机追踪器</a>”，“<a href="http://itunes.apple.com/cn/app/super-mobile-tracker/id446994503?l=en&amp;mt=8">超级手机追踪器</a>”，“<a href="http://itunes.apple.com/cn/app//id415236321?mt=8">手机追踪 电话追踪 定位器</a>”，“<a href="http://itunes.apple.com/cn/app//id434698951?mt=8">2011 中国移动手机追踪器</a>”，“<a href="http://itunes.apple.com/cn/app//id437815078?mt=8">A+ 手机追踪 手机定位 GPS</a>”……</p>
<p>追追追，丧尽天良的开发者，别追着钱跑了，回头去拾起早已掉落的良心吧。<br/><br />
追追追，好奇心过剩或有偷窥欲的小白用户，别瞎追了，这些都是骗子利用你的好奇心或偷窥欲骗你的。要定位自己的 iOS 设备，请用“<a href="http://itunes.apple.com/cn/app//id376101648?mt=8">查找我的 iPhone</a>”；要定位朋友的 iOS 设备，请“<a href="http://itunes.apple.com/cn/app//id466122094?mt=8">查找我的朋友</a>”。这两个都是 Apple 官方出品的免费 app，其功能不是普通第三方 app 能够实现的。<br/><br />
追追追，坏人这么多，我一个人追杀的过来吗？</p>
<hr />
<p>附《App Store 生存指南》：<br/><br />
欲购买不知名、非熟悉 app，请在电脑上用 iTunes 操作。因为你需要用多种方式看评论，在 iPhone 或 iPad 上无法完成。确实比较麻烦，但谁让咱们国家骗子多呢。</p>
<ol>
<li>“排序方法”选“最差评价”。</li>
<li>如果“当前版本”都是好评，点开“所有版本”看看。</li>
<li>如果还是好评居多，把“排序方法”切换到“最有帮助”，点开前两页那些有很多“顾客认为此评价有用”的好评的“评论人”，查看其“撰写的所以评价”。如果其中有人的好评是集中在几个开发商的 app 上，或有部分人的好评对象雷同，那这些好评就基本是造假的。</li>
</ol>
<div class="social">			<a href="https://twitter.com/share?url=http%3A%2F%2Fwangling.me%2F2012%2F01%2Ftracker-killer%2F" class="twitter-share-button" data-url="http%3A%2F%2Fwangling.me%2F2012%2F01%2Ftracker-killer%2F" data-text="欺诈 app 追杀记 — 迟到的战果: 历时半载，龙抬头时，终斩获小妖一二，回顾一路艰辛，附 App Store 生存指南。作拜年礼，赠与各种有求、有爱、有魔之人。有求之人用以防身，有爱之人用以传播，有魔之人用以救赎。" data-via="an0" data-count="none">Tweet</a>
			<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>			<script type="text/javascript" charset="utf-8">
(function(){
  var _w = 86 , _h = 18;
  var param = {
    url:"http%3A%2F%2Fwangling.me%2F2012%2F01%2Ftracker-killer%2F",
    type:'6',
    count:'', /**是否显示分享数，1显示(可选)*/
    appkey:'', /**您申请的应用appkey,显示分享来源(可选)*/
    title:'欺诈 app 追杀记 — 迟到的战果: 历时半载，龙抬头时，终斩获小妖一二，回顾一路艰辛，附 App Store 生存指南。作拜年礼，赠与各种有求、有爱、有魔之人。有求之人用以防身，有爱之人用以传播，有魔之人用以救赎。', /**分享的文字内容(可选，默认为所在页面的title)*/
    pic:'', /**分享图片的路径(可选)*/
    ralateUid:'1676354212', /**关联用户的UID，分享微博会@该用户(可选)*/
    rnd:new Date().valueOf()
  }
  var temp = [];
  for( var p in param ){
    temp.push(p + '=' + encodeURIComponent( param[p] || '' ) )
  }
  document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'" style="margin-left:5px;"></iframe>')
})()
</script></div>]]></content:encoded>
			<wfw:commentRss>http://wangling.me/2012/01/tracker-killer/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>国产 Tapbots，零号呼叫壹号</title>
		<link>http://wangling.me/2011/11/0-calls-for-1/</link>
		<comments>http://wangling.me/2011/11/0-calls-for-1/#comments</comments>
		<pubDate>Sat, 19 Nov 2011 08:21:38 +0000</pubDate>
		<dc:creator>an0</dc:creator>
				<category><![CDATA[中文]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[startup]]></category>
		<category><![CDATA[微博]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[Voodo]]></category>

		<guid isPermaLink="false">http://wangling.me/?p=756</guid>
		<description><![CDATA[如果你爱 ，爱 graphics，追求 pixel perfect，想做顶级 app，听到呼叫请回答。从此以后，好用看我的，好看看你的。对 Tweetbot 有爱的也请入，有惊喜。]]></description>
			<content:encoded><![CDATA[<p><script src="http://wangling.me/safari/WeiboApp/scripts/prototype.js" language="JavaScript" type="text/javascript"></script><br />
<script src="http://wangling.me/safari/WeiboApp/scripts/qtp_poster.js" language="JavaScript" type="text/javascript"></script></p>
<link href="http://wangling.me/safari/WeiboApp/stylesheets/qtp_poster.css" rel="StyleSheet" type="text/css" />
<p><a href="http://tapbots.com/">Tapbots</a> 是这个星球上最酷的 iOS 开发组合。他们的 apps 极具风格，功能完善，细致入微，质感十足，有趣如玩具，优雅如艺术，强劲如 bot。</p>
<p>他们证明：一个 Top Developer (Paul) + 一个 Top Designer (Mark) + 将事情做到极致的态度 = 近乎完美的 apps</p>
<p>对于这样一个组合，我向往已久。</p>
<p>作为一个完美主义者，将事情做到极致的态度是与生俱来的。</p>
<p>经过近两年在 iOS 平台上的积累，渐入佳境，任何想法，只要平台支持，都能实现。由于不能展示代码，最好的途径是展示作品。</p>
<p><a href="http://iwonderphone.com/">Voodo</a> 是我的第一款产品，已在 App Store 贩卖近两年，获得过一些<a href="http://blog.iwonderphone.com/2011/07/11/new-and-noteworthy-in-japan/">成绩</a>，用户评价很高。</p>
<p>我善于立足于功能进行产品设计：贴心的交互方式、合理的功能布局、最优的操作流程。用，你会发现它们如此顺手；看，它们的确不算养眼。正因如此，我这个零号 Developer 才呼叫你这个壹号 Designer。从此以后，好用看我的，好看看你的。</p>
<p>XXX<sup><a href="http://wangling.me/2011/11/0-calls-for-1/#footnote_0_756" id="identifier_0_756" class="footnote-link footnote-identifier-link" title="待命名">1</a></sup> 是一款顶级微博客户端 app，正在开发中，功能基本完成。这将是你入伙后立马参与的产品。</p>
<p><a href="http://wangling.me/safari/WeiboApp/WeiboApp.mov" rel="qtposter"><br />
	<img src="http://wangling.me/safari/WeiboApp/WeiboApp.jpg" width="640" height="496" alt="WeiboApp"/><br />
</a></p>
<p>(如果你的浏览器无法播放上面视频的话，请在<a href="http://v.youku.com/v_show/id_XMzI0MDE0NjMy.html">优酷</a>观看。)</p>
<p>之所以开发这款产品，是因为：</p>
<ol>
<li>我们有各种各样的国产 Twitter，有一两个还很火，却没有一款很好的客户端 app。作为一个用户，我无法接受；作为一个习惯了精良 Twitter 客户端 app 的用户，我心生向往；作为一个开发者，我明白自力更生最行之有效；作为一个创业者，我认准这个市场大有可为。</li>
<li>自我验证。Tweetbot 不光是最优秀的 Twitter 客户端 app，而且是整个 App Store 里数一数二的，堪称艺术品。我想试试能不能做出一款同样品质的 app。事实证明，我可以。</li>
<li>展示才能。想要一个如此优秀的你，自然得先让你看到一个配得上你的我。</li>
</ol>
<p>在此，必须特别申明：我从 Tweetbot 上学习了很多，但我的目的不是抄袭它。最终产品会借鉴它的优秀之处，但不会使用它的 graphic 元素。事实上，我有自己的美好设想，只等你来一起实现。</p>
<p>如果，你喜爱 Apple 的产品，热爱 graphics，追求 pixel perfect，能够画出如 Tweetbot 这般细腻有质感的 UI，并且也有做顶级 app 的梦想，听到呼叫请回答。</p>
<p>联系方式：</p>
<ul>
<li>Email: <a href="&#x6d;&#x61;&#x69;&#108;&#116;&#111;&#58;&#97;&#x6e;&#x30;&#48;&#x6e;&#97;&#64;&#x67;&#x6d;&#x61;&#x69;&#108;&#46;&#x63;&#x6f;&#x6d;">&#x61;&#110;&#x30;&#x30;&#110;&#97;&#x40;&#x67;&#109;&#97;&#x69;&#108;&#x2e;&#x63;&#x6f;&#x6d;</a></li>
<li>Twitter: <a href="http://twitter.com/an0">an0</a></li>
<li>新浪微博：<a href="http://weibo.com/an00na">an00na</a></li>
</ul>
<hr />
<p>To Tapbots or anyone concerned:<br/><br />
I didn&#8217;t intend to rip off Tweetbot and I won&#8217;t. I see Tapbots as a role model and I studied and learned from their products. The development of this Weibo app is a self challenge to see whether I can make such beautiful things. My app as of now is just a demo to demonstrate what I can do as a developer. I used Tweetbot&#8217;s graphics because I couldn&#8217;t resist its beauty and also because I needed to see my app form gradually in a realistic way as a self motivataion. I won&#8217;t use any of graphics from Tweetbot in my final product. Actually, I have my own ideas about this app, and I&#8217;m here calling for my partner, my own designer, to make it real together with me. Thank you very much, Tapbot, for inspiring me!</p>
<div class="footnotes"><ol ><li id="footnote_0_756" class="footnote">待命名</li></ol></div><div class="social">			<a href="https://twitter.com/share?url=http%3A%2F%2Fwangling.me%2F2011%2F11%2F0-calls-for-1%2F" class="twitter-share-button" data-url="http%3A%2F%2Fwangling.me%2F2011%2F11%2F0-calls-for-1%2F" data-text="国产 Tapbots，零号呼叫壹号: 如果你爱 ，爱 graphics，追求 pixel perfect，想做顶级 app，听到呼叫请回答。从此以后，好用看我的，好看看你的。对 Tweetbot 有爱的也请入，有惊喜。" data-via="an0" data-count="none">Tweet</a>
			<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>			<script type="text/javascript" charset="utf-8">
(function(){
  var _w = 86 , _h = 18;
  var param = {
    url:"http%3A%2F%2Fwangling.me%2F2011%2F11%2F0-calls-for-1%2F",
    type:'6',
    count:'', /**是否显示分享数，1显示(可选)*/
    appkey:'', /**您申请的应用appkey,显示分享来源(可选)*/
    title:'国产 Tapbots，零号呼叫壹号: 如果你爱 ，爱 graphics，追求 pixel perfect，想做顶级 app，听到呼叫请回答。从此以后，好用看我的，好看看你的。对 Tweetbot 有爱的也请入，有惊喜。', /**分享的文字内容(可选，默认为所在页面的title)*/
    pic:'', /**分享图片的路径(可选)*/
    ralateUid:'1676354212', /**关联用户的UID，分享微博会@该用户(可选)*/
    rnd:new Date().valueOf()
  }
  var temp = [];
  for( var p in param ){
    temp.push(p + '=' + encodeURIComponent( param[p] || '' ) )
  }
  document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'" style="margin-left:5px;"></iframe>')
})()
</script></div>]]></content:encoded>
			<wfw:commentRss>http://wangling.me/2011/11/0-calls-for-1/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
<enclosure url="http://wangling.me/safari/WeiboApp/WeiboApp.mov" length="381" type="video/quicktime" />
		</item>
		<item>
		<title>如何用 iPhone、iPad 键盘输入书名号、中文引号</title>
		<link>http://wangling.me/2011/11/input-chinese-punctuations-with-ios-keyboard/</link>
		<comments>http://wangling.me/2011/11/input-chinese-punctuations-with-ios-keyboard/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 20:04:33 +0000</pubDate>
		<dc:creator>an0</dc:creator>
				<category><![CDATA[中文]]></category>
		<category><![CDATA[iOS]]></category>

		<guid isPermaLink="false">http://wangling.me/2011/11/%e5%a6%82%e4%bd%95%e7%94%a8-iphone%e3%80%81ipad-%e9%94%ae%e7%9b%98%e8%be%93%e5%85%a5%e4%b9%a6%e5%90%8d%e5%8f%b7%e3%80%81%e4%b8%ad%e6%96%87%e5%bc%95%e5%8f%b7/</guid>
		<description><![CDATA[iOS 中文键盘可以输入中文特有标点符号。键盘上找不到的话，尝试长按形似标点符号键。还是找不到？那可能你遇上了 bug，我有解决办法。]]></description>
			<content:encoded><![CDATA[<p>首先，iOS 中文键盘是可以输入书名号、中文引号等中文特有标点符号的。</p>
<p>如果翻遍了字母键盘、数字键盘、标点符号键盘都没找到你要的标点符号，尝试长按形似的标点符号键，大多能在弹出的扩展键中找到。比如说，你要输入&#8217;【&#8217;，长按&#8217;[&#8216;就能看到。同理，要输入书名号&#8217;《&#8217;就长按&#8217;＜&#8217;。</p>
<div class="thumbnail"><a href="https://skitch.com/an00na/g8mwx/skitched-20111109-142253"><img src="https://img.skitch.com/20111109-nf57y6q1y6qur82qb7eh5m7a5j.preview.jpg" alt="" /></a></div>
<p>长按键弹出扩展键可能很多人都知道，但是下面这个可能知道的人不多—我自己是刚试验出来的。</p>
<p>大陆用户大多只开启简体中文键盘，那么你翻遍所有子键盘也找不到中文引号&#8217;「&#8217;，并且长按&#8217;＜&#8217;也不会有扩展键出现。不确定这是 Apple 有意设计的，还是 iOS 的 bug。解决办法：在系统「设置」「通用」「键盘」「国际键盘」中添加繁体中文或日文键盘。然后你就会在简体中文键盘的数字键盘上看到中文引号&#8217;「&#8217;了，长按&#8217;＜&#8217;也能出现&#8217;《&#8217;了。此时，即便你把繁体中文或日文键盘删除，这些标点符号也不会消失了。</p>
<div class="social">			<a href="https://twitter.com/share?url=http%3A%2F%2Fwangling.me%2F2011%2F11%2Finput-chinese-punctuations-with-ios-keyboard%2F" class="twitter-share-button" data-url="http%3A%2F%2Fwangling.me%2F2011%2F11%2Finput-chinese-punctuations-with-ios-keyboard%2F" data-text="如何用 iPhone、iPad 键盘输入书名号、中文引号: iOS 中文键盘可以输入中文特有标点符号。键盘上找不到的话，尝试长按形似标点符号键。还是找不到？那可能你遇上了 bug，我有解决办法。" data-via="an0" data-count="none">Tweet</a>
			<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>			<script type="text/javascript" charset="utf-8">
(function(){
  var _w = 86 , _h = 18;
  var param = {
    url:"http%3A%2F%2Fwangling.me%2F2011%2F11%2Finput-chinese-punctuations-with-ios-keyboard%2F",
    type:'6',
    count:'', /**是否显示分享数，1显示(可选)*/
    appkey:'', /**您申请的应用appkey,显示分享来源(可选)*/
    title:'如何用 iPhone、iPad 键盘输入书名号、中文引号: iOS 中文键盘可以输入中文特有标点符号。键盘上找不到的话，尝试长按形似标点符号键。还是找不到？那可能你遇上了 bug，我有解决办法。', /**分享的文字内容(可选，默认为所在页面的title)*/
    pic:'', /**分享图片的路径(可选)*/
    ralateUid:'1676354212', /**关联用户的UID，分享微博会@该用户(可选)*/
    rnd:new Date().valueOf()
  }
  var temp = [];
  for( var p in param ){
    temp.push(p + '=' + encodeURIComponent( param[p] || '' ) )
  }
  document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'" style="margin-left:5px;"></iframe>')
})()
</script></div>]]></content:encoded>
			<wfw:commentRss>http://wangling.me/2011/11/input-chinese-punctuations-with-ios-keyboard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Steve Jobs, 1955–…</title>
		<link>http://wangling.me/2011/10/steve-jobs-i-miss/</link>
		<comments>http://wangling.me/2011/10/steve-jobs-i-miss/#comments</comments>
		<pubDate>Thu, 06 Oct 2011 04:37:14 +0000</pubDate>
		<dc:creator>an0</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Steve Jobs]]></category>

		<guid isPermaLink="false">http://wangling.me/?p=740</guid>
		<description><![CDATA[As an iCoder, I see him in every line of my code.]]></description>
			<content:encoded><![CDATA[<p>iSad</p>
<p>iMiss</p>
<p>iCode</p>
<p>I see him in every line of my code.</p>
<div class="thumbnail"><a href="https://skitch.com/an00na/f6weg/time-machine-bring-him-back"><img src="https://img.skitch.com/20111006-krfue4ngqjb23721i9wgfukw6f.preview.jpg" alt="Time Machine, bring him back" /></a></div>
<div class="social">			<a href="https://twitter.com/share?url=http%3A%2F%2Fwangling.me%2F2011%2F10%2Fsteve-jobs-i-miss%2F" class="twitter-share-button" data-url="http%3A%2F%2Fwangling.me%2F2011%2F10%2Fsteve-jobs-i-miss%2F" data-text="Steve Jobs, 1955–…: As an iCoder, I see him in every line of my code." data-via="an0" data-count="none">Tweet</a>
			<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>			<script type="text/javascript" charset="utf-8">
(function(){
  var _w = 86 , _h = 18;
  var param = {
    url:"http%3A%2F%2Fwangling.me%2F2011%2F10%2Fsteve-jobs-i-miss%2F",
    type:'6',
    count:'', /**是否显示分享数，1显示(可选)*/
    appkey:'', /**您申请的应用appkey,显示分享来源(可选)*/
    title:'Steve Jobs, 1955–…: As an iCoder, I see him in every line of my code.', /**分享的文字内容(可选，默认为所在页面的title)*/
    pic:'', /**分享图片的路径(可选)*/
    ralateUid:'1676354212', /**关联用户的UID，分享微博会@该用户(可选)*/
    rnd:new Date().valueOf()
  }
  var temp = [];
  for( var p in param ){
    temp.push(p + '=' + encodeURIComponent( param[p] || '' ) )
  }
  document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'" style="margin-left:5px;"></iframe>')
})()
</script></div>]]></content:encoded>
			<wfw:commentRss>http://wangling.me/2011/10/steve-jobs-i-miss/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What I&#8217;m going to do with the rest of my life</title>
		<link>http://wangling.me/2011/10/what-im-going-to-do-with-the-rest-of-my-life/</link>
		<comments>http://wangling.me/2011/10/what-im-going-to-do-with-the-rest-of-my-life/#comments</comments>
		<pubDate>Mon, 03 Oct 2011 15:04:01 +0000</pubDate>
		<dc:creator>an0</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://wangling.me/2011/10/what-im-going-to-do-with-the-rest-of-my-life/</guid>
		<description><![CDATA[Make something people love and help them find what they really love. 做人们喜爱的东西，借之帮助他们找到所爱的东西。 Tweet]]></description>
			<content:encoded><![CDATA[<p>Make something people love and help them find what they really love. </p>
<p>做人们喜爱的东西，借之帮助他们找到所爱的东西。</p>
<div class="social">			<a href="https://twitter.com/share?url=http%3A%2F%2Fwangling.me%2F2011%2F10%2Fwhat-im-going-to-do-with-the-rest-of-my-life%2F" class="twitter-share-button" data-url="http%3A%2F%2Fwangling.me%2F2011%2F10%2Fwhat-im-going-to-do-with-the-rest-of-my-life%2F" data-text="What I&#8217;m going to do with the rest of my life" data-via="an0" data-count="none">Tweet</a>
			<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>			<script type="text/javascript" charset="utf-8">
(function(){
  var _w = 86 , _h = 18;
  var param = {
    url:"http%3A%2F%2Fwangling.me%2F2011%2F10%2Fwhat-im-going-to-do-with-the-rest-of-my-life%2F",
    type:'6',
    count:'', /**是否显示分享数，1显示(可选)*/
    appkey:'', /**您申请的应用appkey,显示分享来源(可选)*/
    title:'What I&#8217;m going to do with the rest of my life', /**分享的文字内容(可选，默认为所在页面的title)*/
    pic:'', /**分享图片的路径(可选)*/
    ralateUid:'1676354212', /**关联用户的UID，分享微博会@该用户(可选)*/
    rnd:new Date().valueOf()
  }
  var temp = [];
  for( var p in param ){
    temp.push(p + '=' + encodeURIComponent( param[p] || '' ) )
  }
  document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'" style="margin-left:5px;"></iframe>')
})()
</script></div>]]></content:encoded>
			<wfw:commentRss>http://wangling.me/2011/10/what-im-going-to-do-with-the-rest-of-my-life/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

