??xml version="1.0" encoding="utf-8" standalone="yes"?>BlogJava-Robin's Programming Worldhttp://www.qpkxbc.shop/fastzch/I Love Programming As My Life!zh-cnSat, 24 Aug 2019 10:22:58 GMTSat, 24 Aug 2019 10:22:58 GMT60Hybrid开发资源网站汇?/title><link>http://www.qpkxbc.shop/fastzch/archive/2014/08/05/416566.html</link><dc:creator>Robin's Programming World</dc:creator><author>Robin's Programming World</author><pubDate>Tue, 05 Aug 2014 01:45:00 GMT</pubDate><guid>http://www.qpkxbc.shop/fastzch/archive/2014/08/05/416566.html</guid><wfw:comment>http://www.qpkxbc.shop/fastzch/comments/416566.html</wfw:comment><comments>http://www.qpkxbc.shop/fastzch/archive/2014/08/05/416566.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.qpkxbc.shop/fastzch/comments/commentRss/416566.html</wfw:commentRss><trackback:ping>http://www.qpkxbc.shop/fastzch/services/trackbacks/416566.html</trackback:ping><description><![CDATA[@import url(http://www.qpkxbc.shop/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); http://cubiq.org/ <div id="xunlei_com_thunder_helper_plugin_d462f475-c18e-46be-bd10-327458d045bd"></div> <div>包含iscroll, infinity wall{?/div> <div><br /> </div> <div><br /> </div><img src ="http://www.qpkxbc.shop/fastzch/aggbug/416566.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.qpkxbc.shop/fastzch/" target="_blank">Robin's Programming World</a> 2014-08-05 09:45 <a href="http://www.qpkxbc.shop/fastzch/archive/2014/08/05/416566.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>?USB 讑֤启动 Surfacehttp://www.qpkxbc.shop/fastzch/archive/2014/04/01/411761.htmlRobin's Programming WorldRobin's Programming WorldMon, 31 Mar 2014 16:15:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2014/04/01/411761.htmlhttp://www.qpkxbc.shop/fastzch/comments/411761.htmlhttp://www.qpkxbc.shop/fastzch/archive/2014/04/01/411761.html#Feedback0http://www.qpkxbc.shop/fastzch/comments/commentRss/411761.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/411761.html
?Surface 关闭时从可启?USB 讑֤启动
步骤 1Q?    可启动 USB 讑֤q接?USB 端口?br />步骤 2Q?    按住音量减小 (-) 控制键?br />步骤 3Q?    按下q攄源按钮?br />步骤 4Q?    当显C?Surface 徽标Ӟ释放音量控制键?Surface 启?USB 讑֤上的软g?br />
?Surface 启用时从可启?USB 讑֤启动
步骤 1Q?    可启动 USB 讑֤q接?USB 端口?br />步骤 2Q?    从屏q右边缘向左LQ然后点?#8220;讄”?br />Q如果您使用鼠标Q请指向屏幕的右上角Q将鼠标指针下移q单?#8220;讄”。)
步骤 3Q?    点击或单?#8220;更改电脑讄”?br />步骤 4Q?    点击或单?#8220;更新和恢?#8221;Q然后点L单击“恢复”?br />步骤 5Q?    ?#8220;高启动”下,点击或单?#8220;立即重新启动”?br />步骤 6Q?    ?#8220;选择一个选项”屏幕中,点击或单?#8220;使用讑֤”?br />步骤 7Q?    ?#8220;疑难解答”屏幕中,点击或单?#8220;高选项”?br />步骤 8Q?    ?#8220;高选项”屏幕中,点击或单?USB 讑֤的名U。Surface 重新启动ƈ?USB 讑֤启动?br />
BTW, q是官方文档靠谱Q还是Google靠谱Q!Q?br />原文地址Qhttp://www.microsoft.com/surface/zh-cn/support/storage-files-and-folders/boot-surface-pro-from-usb-recovery-device


Robin's Programming World 2014-04-01 00:15 发表评论
]]>
XCode Plugins Package Managerhttp://www.qpkxbc.shop/fastzch/archive/2014/02/05/409533.htmlRobin's Programming WorldRobin's Programming WorldTue, 04 Feb 2014 18:28:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2014/02/05/409533.htmlhttp://www.qpkxbc.shop/fastzch/comments/409533.htmlhttp://www.qpkxbc.shop/fastzch/archive/2014/02/05/409533.html#Feedback1http://www.qpkxbc.shop/fastzch/comments/commentRss/409533.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/409533.htmlXCode Plugins Package Manager
https://github.com/mneorr/Alcatraz

通过q个工具Q我q装了以下插Ӟ
AJKExtendedOpening
BBUDebuggerTuckAway
BBUncrustifyPlugin
CocoaPods
CodePilot
DLAutoresizeMaskPlugin
DerivedData Exterminator
FuzzyAutocomplete
HOStringSense
KSImageNamed
OMColorSense
OMQuickHelp
PluginConsole
QuickLocalization
SCXcodeMinimap
VVDocumenter-Xcode
XCFixin_CurrentLineHighlighter
XcodeAutoCloseDebug
XcodePlus Delete Line

q些插g都是相当的好用呀Q!Q?br />

Robin's Programming World 2014-02-05 02:28 发表评论
]]>
Ubuntu环境下Apache2与Tomcat集成http://www.qpkxbc.shop/fastzch/archive/2014/02/05/409532.htmlRobin's Programming WorldRobin's Programming WorldTue, 04 Feb 2014 18:21:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2014/02/05/409532.htmlhttp://www.qpkxbc.shop/fastzch/comments/409532.htmlhttp://www.qpkxbc.shop/fastzch/archive/2014/02/05/409532.html#Feedback4http://www.qpkxbc.shop/fastzch/comments/commentRss/409532.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/409532.html    apt-get install apache2

重启命oQ?/etc/init.d/apache2 restart

/etc/apache2/conf.d/charset
q个是网站编码配|,需要将最后行?QAddDefaultCharset UTF-8 前面?LQ用UTF-8~码Q当然也可以?UTF-8Ҏ别的~码?br />
q个是网站目录配|,x改网站目录的话,׃改这个,上面的目录的 apache2.conf 里面也有|站目录?br />/etc/apache2/sites-available/default


2?install JK connector.
apt-get install libapache2-mod-jk
so文g会被安装到目录: /usr/lib/apache2/modules 中?br />安装完后Q在/etc/apache2/mods-enabled下会多出一个jk.load文gQ重启apache2后,apache自动装蝲q个文g以加载mod_jk.


3、修改httpd.conf,一开始它是空?增加
#Server Name
ServerName 127.0.0.1

#JK config
#JkWorkersFile /etc/libapache2-mod-jk/workers.properties
JkLogFile /var/log/apache2/mod_jk.log
JkLogLevel info
JkMount /*.jsp ajp13_worker
JkMount /*/servlet/ ajp13_worker
JkMount /*.do ajp13_worker

4?etc/apache2/sites-available中增加一个文Ӟ文g名随?
如我的tomcat,内容如下:
<VirtualHost 127.0.0.1>
  ServerAdmin fastzch@gmail.com
  DocumentRoot "/var/www"
  ErrorLog "/var/log/apache2/ediskmanage_errors.log"
  CustomLog "/var/log/apache2/ediskmanage_accesses.log" common

  JkMount /servlet/* ajp13_worker
  #让Apache支持对servlet传送,用以Tomcat解析
  JkMount /*.jsp ajp13_worker
  #让Apache支持对jsp传送,用以Tomcat解析
  JkMount /*.do ajp13_worker
  #让Apache支持?do传送,用以Tomcat解析
</VirtualHost>

5、执?a2ensite tomcat

6?etc/init.d/apache2 reload

7、部|应用后重启Tomcat卛_

Robin's Programming World 2014-02-05 02:21 发表评论
]]>
Phonegap Debug Notehttp://www.qpkxbc.shop/fastzch/archive/2014/01/02/408382.htmlRobin's Programming WorldRobin's Programming WorldThu, 02 Jan 2014 06:17:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2014/01/02/408382.htmlhttp://www.qpkxbc.shop/fastzch/comments/408382.htmlhttp://www.qpkxbc.shop/fastzch/archive/2014/01/02/408382.html#Feedback0http://www.qpkxbc.shop/fastzch/comments/commentRss/408382.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/408382.html
The following are notes for debug feature:
The "console" is a plugin now, so we need to add it by following command:
cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-console.git

And then you could use console API now, e.g.:
console.log('onSuccess! contacts.length:' + contacts.length );

You will see logs on output console of Xcode or Logcat of Eclipse.
Pls see following screenshots:







Robin's Programming World 2014-01-02 14:17 发表评论
]]>
iOS App -- WHETC 发布http://www.qpkxbc.shop/fastzch/archive/2012/11/10/391148.htmlRobin's Programming WorldRobin's Programming WorldSat, 10 Nov 2012 12:06:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2012/11/10/391148.htmlhttp://www.qpkxbc.shop/fastzch/comments/391148.htmlhttp://www.qpkxbc.shop/fastzch/archive/2012/11/10/391148.html#Feedback0http://www.qpkxbc.shop/fastzch/comments/commentRss/391148.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/391148.html主要是ؓ武汉车主提供ETC查询的功能?/div>

有需要的朋友Q可直接?App Store上搜WHETCQ然后下载?/div>
也可通过下蝲链接直接下蝲Qhttps://itunes.apple.com/cn/app/whetc/id558349225

有什么好的徏议或问题La。谢谢!



]]>How to uninstall dnscrypt client on MAChttp://www.qpkxbc.shop/fastzch/archive/2012/09/16/387829.htmlRobin's Programming WorldRobin's Programming WorldSun, 16 Sep 2012 10:14:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2012/09/16/387829.htmlhttp://www.qpkxbc.shop/fastzch/comments/387829.htmlhttp://www.qpkxbc.shop/fastzch/archive/2012/09/16/387829.html#Feedback0http://www.qpkxbc.shop/fastzch/comments/commentRss/387829.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/387829.htmlhttp://shared.opendns.com/dnscrypt/packages/osx-client/
下蝲  Uninstall.app.zip


Robin's Programming World 2012-09-16 18:14 发表评论
]]>
首个iOS Appl于提交?/title><link>http://www.qpkxbc.shop/fastzch/archive/2012/09/03/386856.html</link><dc:creator>Robin's Programming World</dc:creator><author>Robin's Programming World</author><pubDate>Mon, 03 Sep 2012 03:45:00 GMT</pubDate><guid>http://www.qpkxbc.shop/fastzch/archive/2012/09/03/386856.html</guid><wfw:comment>http://www.qpkxbc.shop/fastzch/comments/386856.html</wfw:comment><comments>http://www.qpkxbc.shop/fastzch/archive/2012/09/03/386856.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.qpkxbc.shop/fastzch/comments/commentRss/386856.html</wfw:commentRss><trackback:ping>http://www.qpkxbc.shop/fastzch/services/trackbacks/386856.html</trackback:ping><description><![CDATA[@import url(http://www.qpkxbc.shop/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); l过两个月左右的旉{划和开发,我个人的首个iOS Appl于提交了,先冒个Q等Review通过后会再开一个专贴进行介l和技术支持? <div>至于是个什么应用,我想可能q得先保密一两周什么的Q这得看Apple的速度了,哈哈...</div> <div><br /> </div> <div>有兴的可以猜猜看?/div><img src ="http://www.qpkxbc.shop/fastzch/aggbug/386856.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.qpkxbc.shop/fastzch/" target="_blank">Robin's Programming World</a> 2012-09-03 11:45 <a href="http://www.qpkxbc.shop/fastzch/archive/2012/09/03/386856.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>XP IIS出现The specified module could not be found解决Ҏhttp://www.qpkxbc.shop/fastzch/archive/2012/07/03/382092.htmlRobin's Programming WorldRobin's Programming WorldTue, 03 Jul 2012 07:09:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2012/07/03/382092.htmlhttp://www.qpkxbc.shop/fastzch/comments/382092.htmlhttp://www.qpkxbc.shop/fastzch/archive/2012/07/03/382092.html#Feedback0http://www.qpkxbc.shop/fastzch/comments/commentRss/382092.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/382092.html

Robin's Programming World 2012-07-03 15:09 发表评论
]]>
Open Mac Ftp Serverhttp://www.qpkxbc.shop/fastzch/archive/2012/06/30/381890.htmlRobin's Programming WorldRobin's Programming WorldSat, 30 Jun 2012 15:15:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2012/06/30/381890.htmlhttp://www.qpkxbc.shop/fastzch/comments/381890.htmlhttp://www.qpkxbc.shop/fastzch/archive/2012/06/30/381890.html#Feedback0http://www.qpkxbc.shop/fastzch/comments/commentRss/381890.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/381890.htmlWhile this hint will work as stated, it's pretty much incorrect usage of launchctl for the purpose of the hint.

launchctl load...loads the FTP service into launchd's database of services. When you do an unload, you are telling launchd to not manage it anymore.

So a better way to do this--probably the proper way--is to first issue the command to load the service:

sudo launchctl load -w /System/Library/LaunchDaemons/ftp.plist

Then, if you'd like to stop FTP, issue this command:

sudo launchctl stop com.apple.ftpd

And if you decide you'd like to bring it back up, use this command:

sudo launchctl start com.apple.ftpd

If you'd like for launchd to forget about FTP, that is when you would run this:

sudo launchctl unload /System/Library/LaunchDaemons/ftp.plist

The hint as-is will work, but seems a little counter-productive to make launchd remember and forget about FTP all the time.



Robin's Programming World 2012-06-30 23:15 发表评论
]]>
Spring 3 MVC and JSON examplehttp://www.qpkxbc.shop/fastzch/archive/2012/06/04/379962.htmlRobin's Programming WorldRobin's Programming WorldMon, 04 Jun 2012 15:06:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2012/06/04/379962.htmlhttp://www.qpkxbc.shop/fastzch/comments/379962.htmlhttp://www.qpkxbc.shop/fastzch/archive/2012/06/04/379962.html#Feedback1http://www.qpkxbc.shop/fastzch/comments/commentRss/379962.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/379962.html原文地址Qhttp://www.mkyong.com/spring-mvc/spring-3-mvc-and-json-example/


Published: July 28, 2011 , Updated: July 27, 2011 , Author: mkyong

 

In Spring 3, you can enable “mvc:annotation-driven” to support object conversion to/from JSON format, if Jackson JSON processor is existed on the project classpath.

In this tutorial, we show you how to output JSON data from Spring MVC.

Technologies used :

Spring 3.0.5.RELEASE
Jackson 1.7.1
JDK 1.6
Eclipse 3.6
Maven 3
1. Project Dependencies

To use JSON in Spring MVC, you need to include Jackson dependency.

    <properties>
        <spring.version>3.0.5.RELEASE</spring.version>
    </properties>
 
    <dependencies>
 
        <!-- Jackson JSON Mapper -->
        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
            <version>1.7.1</version>
        </dependency>
 
        <!-- Spring 3 dependencies -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${spring.version}</version>
        </dependency>
 
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
        </dependency>
 
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring.version}</version>
        </dependency>
 
    </dependencies>

 
2. Model

A simple POJO, later convert this object into JSON output.

package com.mkyong.common.model;
 
public class Shop {
 
    String name;
    String staffName[];
 
    //getter and setter methods
 
}

 
3. Controller

Add “@ResponseBody” in the return value, no much detail in the Spring documentation.

As i know, when Spring see

Jackson library existed on classpath
“mvc:annotation-driven” is enabled
Return method annotated with @ResponseBody
It will handle the JSON conversion automatically.

package com.mkyong.common.controller;
 
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.mkyong.common.model.Shop;
 
@Controller
@RequestMapping("/kfc/brands")
public class JSONController {
 
    @RequestMapping(value="{name}", method = RequestMethod.GET)
    public @ResponseBody Shop getShopInJSON(@PathVariable String name) {
 
        Shop shop = new Shop();
        shop.setName(name);
        shop.setStaffName(new String[]{"mkyong1", "mkyong2"});
 
        return shop;
 
    }
 
}
4. mvc:annotation-driven

Enable “mvc:annotation-driven” in your Spring configuration XML file.

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans    
        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-3.0.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
 
    <context:component-scan base-package="com.mkyong.common.controller" />
 
    <mvc:annotation-driven />
 
</beans>
5. Demo

URL : http://localhost:8080/SpringMVC/rest/kfc/brands/kfc-kampar


Download Source Code

Download it – SpringMVC-JSON-Example.zip (7 KB)
References

mvc-annotation-driven documentation
High-performance JSON processor
Spring MVC and XML example


Robin's Programming World 2012-06-04 23:06 发表评论
]]>
MongoDB install notes on Mac:http://www.qpkxbc.shop/fastzch/archive/2012/06/03/379837.htmlRobin's Programming WorldRobin's Programming WorldSat, 02 Jun 2012 17:15:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2012/06/03/379837.htmlhttp://www.qpkxbc.shop/fastzch/comments/379837.htmlhttp://www.qpkxbc.shop/fastzch/archive/2012/06/03/379837.html#Feedback0http://www.qpkxbc.shop/fastzch/comments/commentRss/379837.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/379837.htmlReference page: Http://docs.mongodb.org/master/tutorial/install-mongodb-on-os-x/

1, install brew, if it is exist, skip this step.
Reference page:  http://mxcl.github.com/homebrew/
Execute the following command:
#/usr/bin/ruby -e "$(/usr/bin/curl -fsSL https://raw.github.com/mxcl/homebrew/master/Library/Contributions/install_homebrew.rb)"

2, install MongoDB:
#brew update
#brew install mongodb

3, use mondod command to startup MongoDB
#nohup mongod &

4, enter mongo shell for testing:
#mongo

MongoDB shell version: 2.0.5
connecting to: test
> db.test.save({a:1})
> db.test.find()
{ "_id" : ObjectId("4fca4824293f5115fa740813"), "a" : 1 }

5, GUI client recommendations:

MongoExplorer
MongoHub

6, MongoDB has provided a web base management inerface:
http://localhost:28017/

7, export and import:
$ mongodump -h test.xxxx.com:52000 -d dataname -o /home/aa/dev/mongodb/data

mongodump mongo导出数据库命?mongodump --help 可以查看该命令下所有的帮助

-h 导出?br /> -d 要导出的数据库名U?br /> -o 数据库要导出的位|?br />
在终端滚qN行之后,数据库导出完成,可以?home/aa/dev/mongodb/data 目录下查看导出的文gQbson格式的(我导出后没有马上q到文Ӟ{了一会才出现的,原因不明Q?br />
然后数据库恢复用:mongorestore 命o

$ mongorestore -d cmsdev  /home/xx/dev/mongodb/data/cmsdev

-d 使用的数据库名称
后面直接加你刚才导出的目录,q样是直接恢复所有表

如果-c 是恢复一个表


Robin's Programming World 2012-06-03 01:15 发表评论
]]>
怹恢复联?iPhone4 ?YouTubehttp://www.qpkxbc.shop/fastzch/archive/2012/01/17/368638.htmlRobin's Programming WorldRobin's Programming WorldTue, 17 Jan 2012 02:43:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2012/01/17/368638.htmlhttp://www.qpkxbc.shop/fastzch/comments/368638.htmlhttp://www.qpkxbc.shop/fastzch/archive/2012/01/17/368638.html#Feedback2http://www.qpkxbc.shop/fastzch/comments/commentRss/368638.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/368638.html

原文地址Q?/span> http://www.inanu.net/post/314.html
iOS 5.0.1 亲测


怹恢复联?iPhone4 ?YouTube

作? Nanu 日期: 2011-05-18

在有 G.F.W. “保护”下的天朝|络Q联通竟然还阉割掉了 iPhone4 ?Youtube 应用Q真是断子绝孙啊Q不甘心Q一定要?Youtube 扑֛来!

在网上看了很关于恢复联?iPhone4 YouTube 的方法,ȝ下大致就 2 U方法:
1. 利用SBSettings恢复Q(我测试是没有效果的)
2. ?Safari 上访?m.youtube.com 之后挂个dq的标签Q(图标太恶心)

下面l极恢复Ҏ来了Q?/p>

  • 该方法只适用于联?iPhone4Q?/strong>
  • iPhone4 必须已经狱Q如果不惌qQ请使用上面的方?2Q?/strong>
  • 该方法适用于所有的 iOS Zg版本Q?/strong>

1. ?iPhone4 q接?i-FunboxQƈq入?//Applications/YouTube.app 目录Q?/p>

2. 目录中?Info.plist 文g复制C的电脑上Q做个备份,以防万一Q;

3. 下面的代码复制_脓C个文件中Qƈ命名?Info.plistQ?/p>

4. 新建的 Info.plist 复制?iPhone4 中的 YouTube.app 目录Q覆盖原文gQ?/p>

5. 重启 iPhone4Q?/p>

HOHO! 熟悉?YouTube 图标回来啦!


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0" converted_by="i-funbox.com">
<dict> 
    <key>DTXcode</key>
        <string>0324</string>
        <key>DTSDKName</key>
        <string>iphoneos4.1.internal</string>
        <key>CFBundleName</key>
    <string>YouTube</string>
    <key>UIApplicationExitsOnSuspend</key>
        <true />
    <key>CFBundleDevelopmentRegion</key>
    <string>English</string>
    <key>CFBundleVersion</key>
    <string>1.0</string>
    <key>DTPlatformName</key>
    <string>iphoneos</string>
    <key>CFBundlePackageType</key>
    <string>APPL</string>
    <key>CFBundleSupportedPlatforms</key>
    <array>
        <string>iPhoneOS</string>
    </array>
    <key>SBUsesNetwork</key>
    <integer>3</integer>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleExecutable</key>
    <string>YouTube</string>
    <key>DTCompiler</key>
    <string>4.2</string>
    <key>SBMatchingApplicationGenres</key>
    <array>
        <string>Entertainment</string>
        <string>Social Networking</string>
    </array>
    <key>CFBundleURLTypes</key>
    <array>
        <dict>
            <key>CFBundleURLName</key>
            <string>YouTube Internal URL</string>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>youtube</string>
            </array>
        </dict>
 
    </array>
    <key>CFBundleIdentifier</key>
    <string>com.apple.youtube</string>
    <key>CFBundleResourceSpecification</key>
    <string>ResourceRules.plist</string>
    <key>DTPlatformVersion</key>
    <string>4.1 GM</string>
        <key>CFBundleIconFiles</key>
        <array>
               <string>icon-72.png</string>
               <string>icon.png</string>
               <string>icon@2x.png</string>
        </array>
        <key>CFBundleDisplayName</key>
        <string>YouTube</string>
    <key>CFBundleSignature</key>
    <string>????</string>
    <key>CFBundleDisplayName</key>
    <string>YouTube</string>
    <key>UISupportedInterfaceOrientations</key>
    <array>
        <string>UIInterfaceOrientationPortrait</string>
        <string>UIInterfaceOrientationPortraitUpsideDown</string>
        <string>UIInterfaceOrientationLandscapeLeft</string>
        <string>UIInterfaceOrientationLandscapeRight</string>
    </array>
    <key>MinimumOSVersion</key>
    <string>4.1</string>
    <key>UIDeviceFamily</key>
    <array>
        <integer>1</integer>
        <integer>2</integer>
    </array>
</dict>
</plist>



]]>
[转]查找 EXC_BAD_ACCESS 问题Ҏ的方?/title><link>http://www.qpkxbc.shop/fastzch/archive/2012/01/05/367925.html</link><dc:creator>Robin's Programming World</dc:creator><author>Robin's Programming World</author><pubDate>Thu, 05 Jan 2012 08:18:00 GMT</pubDate><guid>http://www.qpkxbc.shop/fastzch/archive/2012/01/05/367925.html</guid><wfw:comment>http://www.qpkxbc.shop/fastzch/comments/367925.html</wfw:comment><comments>http://www.qpkxbc.shop/fastzch/archive/2012/01/05/367925.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.qpkxbc.shop/fastzch/comments/commentRss/367925.html</wfw:commentRss><trackback:ping>http://www.qpkxbc.shop/fastzch/services/trackbacks/367925.html</trackback:ping><description><![CDATA[<div>原文地址Q?http://www.cocoachina.com/macdev/objc/2011/0219/2661.html<br /><br /><div style="margin-top: 19px; margin-right: 10px; margin-bottom: 20px; margin-left: 10px; height: 58px; width: 609px; border-top-width: 2px; border-right-width: 2px; border-bottom-width: 2px; border-left-width: 2px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: #ebf1ed; border-right-color: #ebf1ed; border-bottom-color: #ebf1ed; border-left-color: #ebf1ed; border-image: initial; font-family: 'Lucida Grande', Geneva, Arial, Verdana, Tahoma, Arial, 微Y雅黑, 黑体, 宋体; font-size: 12px; line-height: normal; "><p style="margin-top: 4px; margin-bottom: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; height: 50px; width: 601px; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #f3f4f4; "><span style="display: block; height: 31px; width: 578px; margin-top: 0px; margin-right: auto; margin-bottom: 0px; margin-left: auto; padding-top: 8px; line-height: 1.4; overflow-x: hidden; overflow-y: hidden; ">写程序遇?Bug q不可怕,大部分的问题Q通过单的 Log 或?代码分析q不难找到原因所在。但是在 Objective-C ~程中遇?EXC_BAD_ACCESS 问题的时候,通过单常规的手段很难发现问题?/span></p></div><div id="article_text_font" style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; height: auto; width: 643px; line-height: 1.8; font-family: 'Lucida Grande', Geneva, Arial, Verdana, Tahoma, Arial, 微Y雅黑, 黑体, 宋体; "><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    写程序遇?Bug q不可怕,大部分的问题Q通过单的 Log 或?代码分析q不难找到原因所在。但是在 Objective-C ~程中遇?EXC_BAD_ACCESS 问题的时候,通过单常规的手段很难发现问题。这文章,l大家介l一个常用的查找 EXC_BAD_ACCESS 问题Ҏ的方法?/p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    首先说一?EXC_BAD_ACCESS q个错误Q可以这么说Q?0%的错误来源在于对一个已l释攄对象q行release操作。D一个简单的例子来说明吧Q首先看一DJava代码Q?/p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">public class Test{<br />        public static void main(String[] args){<br />                String s = “This is a test string”;<br />                s = s.substring(s.indexOf(“a”),(s.length()));<br />                System.out.println(s);<br />                <br />        }<br />}</p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    q种写法在Java中很常见也很普遍Q这不会产生M问题。但是到?Objective-C 中,׃ZQ考虑q个E序Q?/p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; "><span style="color: #339966; ">#import <Foundation/Foundation.h><br /><br />int main (int argc, const char * argv[]) {<br />NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];<br />        NSString* s = [[NSString alloc]initWithString:@”This is a test string”];<br />        s = [s substringFromIndex:[s rangeOfString:@"a"].location];//内存泄露<br />        [s release];//错误释放<br />[pool drain];//EXC_BAD_ACCESS<br />return 0;<br />}</span><br /><br />    q个例子当然狠容易的看出问题所在,如果q段代码包含在一个很大的逻辑中,实Ҏ被忽略。Objective-C q段代码有三个致命问题:1、内存泄Ԍ2、错误释放;3、造成 EXC_BAD_ACCESS 错误?/p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    1Q?NSString* s = [[NSString alloc]initWithString:@”This is a test string”]; 创徏了一?NSString ObjectQ随后的 s = [s substringFromIndex:[s rangeOfString:@"a"].location]; 执行后,D创徏的对象引用消失,直接造成内存泄露?/p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    2Q错误释放。[s release]; q个问题Q原因之一是一个逻辑错误Q以?s q是我们最初创建的那个 NSString 对象。第二是因ؓ?substringFromIndex:(NSUInteger i) q个Ҏq回?NSString 对象Qƈ不需要我们来释放Q它其实是一个被 substringFromIndex Ҏ标记?autorelease 的对象。如果我们强行的释放了它Q那么会造成 EXC_BAD_ACCESS 问题?/p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    3Q?EXC_BAD_ACCESS。由?s 指向?NSString 对象被标Cؓ autorelease, 则在 NSAutoreleasePool 中已有记录。但是由于我们在前面错误的释放了该对象,则当 [pool drain] 的时候,NSAutoreleasePool 又一ơ的对它记录?s 对象调用?release ҎQ但q个时?s 已经被释放不复存在,则直接导致了 EXC_BAD_ACCESS问题?/p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    那么Q知道了 EXC_BAD_ACCESS 的诱因之一后,如何快速高效的定位问题Q?/p><p id="" style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">1: 为工E运行时加入 NSZombieEnabled 环境变量Qƈ设ؓ启用Q则?EXC_BAD_ACCESS 发生ӞXCode ?Console 会打印出问题描述?/p><p id="" style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">首先双击 XCode 工程中,Executables 下的 可执行模l,</p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; text-align: center; "><img width="469" height="311" border="0" alt="" src="http://www.cocoachina.com/cms/uploads/allimg/110219/8_110219221940_1.png" data-pinit="registered" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-image: initial; cursor: pointer; " /></p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">在弹出窗口中QVariables to be set in the environmentQ添?NSZombieEnabledQƈ讑֮?YESQ点击选中复选框启用此变量?/p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; text-align: center; "><img width="290" height="415" border="0" alt="" src="http://www.cocoachina.com/cms/uploads/allimg/110219/8_110219222206_1.png" data-pinit="registered" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-image: initial; cursor: pointer; " /></p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    q样Q运行上q?Objective-C 时会看到控制台输出:Untitled[3646:a0f] *** -[CFString release]: message sent to deallocated instance 0x10010d340</p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; text-align: center; "><img width="472" height="344" border="0" alt="" src="http://www.cocoachina.com/cms/uploads/allimg/110219/8_110219222424_1.png" data-pinit="registered" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-image: initial; cursor: pointer; " /></p><p id="" style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    q条消息对于定位问题有很好的提示作用。但是很多时候,只有q条提示是不够的Q我们需要更多的提示来帮助定位问题,q时候再加入 MallocStackLogging 来启用malloc记录?/p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; text-align: center; "><img width="291" height="414" border="0" alt="" src="http://www.cocoachina.com/cms/uploads/allimg/110219/8_110219222612_1.png" data-pinit="registered" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-image: initial; cursor: pointer; " /></p><p id="" style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; "><br />    当错误发生后Q在l端执行Q?/p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; "><span style="color: #339966; ">malloc_history ${App_PID} ${Object_instance_addr}</span></p><p id="" style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    则会获得相应?malloc 历史记录Q比如对于上一个控制台输出</p><p style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; "><span style="color: #339966; ">Untitled[3646:a0f] *** -[CFString release]: message sent to deallocated instance 0x10010d340</span></p><p id="" style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    则我们可以在l端执行Q结果如下:</p><p id="" style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">Buick-Wongs-MacBook-Pro:Downloads buick$ malloc_history 3646 0x10010d340<br />malloc_history Report Version: 2.0<br />Process: Untitled [3646]<br />Path: /Users/buick/Desktop/Untitled/build/Debug/Untitled<br />Load Address: 0×100000000<br />Identifier: Untitled<br />Version: ??? (???)<br />Code Type: X86-64 (Native)<br />Parent Process: gdb-i386-apple-darwin [3638]<br /><br />Date/Time: 2011-02-01 15:07:04.181 +0800<br />OS Version: Mac OS X 10.6.6 (10J567)<br />Report Version: 6<br /><br />ALLOC 0x10010d340-0x10010d357 [size=24]: thread_7fff70118ca0 |start | main | objc_msgSend | lookUpMethod | prepareForMethodLookup | _class_initialize | +[NSString initialize] | objc_msgSend | lookUpMethod | prepareForMethodLookup | _class_initialize | NXCreateMapTableFromZone | malloc_zone_malloc<br />—-<br />FREE 0x10010d340-0x10010d357 [size=24]: thread_7fff70118ca0 |start | main | objc_msgSend | lookUpMethod | prepareForMethodLookup | _class_initialize | _finishInitializing | free<br /><br />ALLOC 0x10010d340-0x10010d357 [size=24]: thread_7fff70118ca0 |start | main | -[NSPlaceholderString initWithString:] | objc_msgSend | lookUpMethod | prepareForMethodLookup | _class_initialize | _class_initialize | +[NSMutableString initialize] | objc_msgSend | lookUpMethod | prepareForMethodLookup | _class_initialize | NXCreateMapTableFromZone | malloc_zone_malloc<br />—-<br />FREE 0x10010d340-0x10010d357 [size=24]: thread_7fff70118ca0 |start | main | -[NSPlaceholderString initWithString:] | objc_msgSend | lookUpMethod | prepareForMethodLookup | _class_initialize | _class_initialize | _finishInitializing | free<br /><br />ALLOC 0x10010d340-0x10010d35f [size=32]: thread_7fff70118ca0 |start | main | -[NSCFString substringWithRange:] | CFStringCreateWithSubstring | __CFStringCreateImmutableFunnel3 | _CFRuntimeCreateInstance | malloc_zone_malloc</p><p id="aeaoofnhgocdbnbeljkmbjdmhbcokfdb-mousedown" style="margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; line-height: 1.8; ">    q样可以很快的定位出问题的代码片段了,注意输出的最后一行,Q,q行虽然不是问题的最l原因,但是问题点已经很近了,随着它找下去Q八成就会找到问题?/p></div></div><img src ="http://www.qpkxbc.shop/fastzch/aggbug/367925.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.qpkxbc.shop/fastzch/" target="_blank">Robin's Programming World</a> 2012-01-05 16:18 <a href="http://www.qpkxbc.shop/fastzch/archive/2012/01/05/367925.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[copy]创业公司应该如何招hQ?/title><link>http://www.qpkxbc.shop/fastzch/archive/2011/12/31/367620.html</link><dc:creator>Robin's Programming World</dc:creator><author>Robin's Programming World</author><pubDate>Sat, 31 Dec 2011 02:24:00 GMT</pubDate><guid>http://www.qpkxbc.shop/fastzch/archive/2011/12/31/367620.html</guid><wfw:comment>http://www.qpkxbc.shop/fastzch/comments/367620.html</wfw:comment><comments>http://www.qpkxbc.shop/fastzch/archive/2011/12/31/367620.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.qpkxbc.shop/fastzch/comments/commentRss/367620.html</wfw:commentRss><trackback:ping>http://www.qpkxbc.shop/fastzch/services/trackbacks/367620.html</trackback:ping><description><![CDATA[<div><div id="xvh" style="outline-style: none; outline-width: initial; outline-color: initial; margin-top: 0px; margin-right: 0px; margin-bottom: 8px; margin-left: 0px; color: #222222; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 22px; "><h2>创业公司应该如何招hQ?/h2></div><div xu"="" style="outline-style: none; outline-width: initial; outline-color: initial; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; height: 1px; width: 632px; border-top-style: solid; border-top-width: 3px; border-top-color: #dddddd; border-bottom-style: solid; border-bottom-width: 1px; border-bottom-color: #dddddd; color: #222222; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 22px; "></div><div id="xwg" style="outline-style: none; outline-width: initial; outline-color: initial; border-bottom-style: solid; border-bottom-width: 1px; border-bottom-color: #dddddd; margin-top: 0px; margin-right: 0px; margin-bottom: 6px; margin-left: 0px; color: #222222; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; line-height: 22px; "><div id="aa-1091" style="outline-style: none; outline-width: initial; outline-color: initial; margin-top: 6px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; position: relative; border-image: initial; "><div style="outline-style: none; outline-width: initial; outline-color: initial; "><h3><a href="http://www.zhihu.com/question/19551593" style="color: #105cb6; outline-style: none; outline-width: initial; outline-color: initial; text-decoration: none; float: right; height: 25px; width: 25px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 5px; "><img src="http://p1.zhimg.com/73/ae/73ae1de85_s.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-color: initial; border-image: initial; float: left; height: 25px; margin-top: 0px; margin-right: 10px; margin-bottom: 5px; margin-left: 0px; width: 25px; border-color: initial; " alt="" /></a><a href="http://www.zhihu.com/question/19551593" style="color: #105cb6; outline-style: none; outline-width: initial; outline-color: initial; text-decoration: none; ">周源</a> <strong title="知乎 001 号员?>Q知?001 号员?/strong></h3></div><div style="outline-style: none; outline-width: initial; outline-color: initial; font-size: 12px; color: #999999; ">374 ,来自 金错刀, ZX, E非 <a id="xbtw" href="http://www.zhihu.com/question/19551593" style="color: #105cb6; outline-style: none; outline-width: initial; outline-color: initial; text-decoration: none; ">更多</a></div><div style="outline-style: none; outline-width: initial; outline-color: initial; "><div style="outline-style: none; outline-width: initial; outline-color: initial; ">其实?08 q到现在Q我一直想q事能不能有点窍门,或者是实用的方法,l论是几乎没有?br /><br />我用q的大家都用的方法:<br /><br /><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 20px; "><li>在水木上发脓子(有点效果Q?br /></li><li>在蓝色理想上发脓子(无效Q?br /></li><li>在技术邮件组里发贴子Q无效)</li><li>?51job/ 最便宜的服务(有点效果Q?/li><li>l所有可以想到的人打电话Q请他们推荐Q无效)<br /></li><li>l所有和你讨创业Q喝q点酒的h打电话(无效Q?br /></li><li>U前同事U下谈(有效Q?br /></li></ul><br />我用q的大家可能没有用的ҎQ?br /><br /><ul style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 20px; "><li>?twitterQ看 XXX ?followerQ一个一个看Q看他们?twitterQ博客,Google Reader 分nQ想办法搞到邮gQ联p,半夜电话骚扰?br /></li><li>上豆瓣,前端后端挑几本重量的书Q去找想看,看过Q正在看q本书的人,一个一个看Q看他们的活动,博客QGoogle Reader 分nQ想办法搞到邮gQ联p,半夜电话骚扰?br /></li><li>扑֐事,问他们都看什么技术博客,惛_法搞到邮Ӟ联系Q半夜电话骚扰?br /></li></ul><br />谈几点体会:<br /><br /><strong>不要太指望周围的?/strong><br /><br />从社招和校园招聘{选初Uh才的Ҏ不适合创业公司Q所以创业者只能靠自己d猎头Q从你周围的人,同学Q朋友,和接触过的公司员工开始?br /><br />q是事实Q也是陷阱。周围的人在能力上恰好满_业需求的可能极低Qh情债又高Q对方其实很勉强Q但你却臆想他完全胜任,动之以情拉入伙,l果是撑不了多久,单纯靠交情ؓU带Q很快就会透支得一q二净?br /><br /><strong>别以Zh人都惛_?/strong><br /><br />我在招h的过E中遇到q很多很聪明的hQ也遇到q很多独特的人,但到了最后一刻,他们会犹豫,把创业视为机会者,会自己鼓p己,但问题是太多的h实际上都只看C创业风险的一面,选择时会們֐于规遉K险?br /><br />q有Q即使是有能力的心有梦想者,也会有很多的实际情况Qؓ知乎招hӞ有h安有重病患者,无法从事需要加班的工作Q有人无法换城市Q有׃惯了Q有时候,他们和你通电话,只是想知道你正在做的事情?/div></div></div></div></div><img src ="http://www.qpkxbc.shop/fastzch/aggbug/367620.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.qpkxbc.shop/fastzch/" target="_blank">Robin's Programming World</a> 2011-12-31 10:24 <a href="http://www.qpkxbc.shop/fastzch/archive/2011/12/31/367620.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转]自定义UITableViewhttp://www.qpkxbc.shop/fastzch/archive/2011/12/29/367465.htmlRobin's Programming WorldRobin's Programming WorldThu, 29 Dec 2011 01:12:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2011/12/29/367465.htmlhttp://www.qpkxbc.shop/fastzch/comments/367465.htmlhttp://www.qpkxbc.shop/fastzch/archive/2011/12/29/367465.html#Feedback1http://www.qpkxbc.shop/fastzch/comments/commentRss/367465.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/367465.html
原文地址Q?http://blog.sina.com.cn/s/blog_7e3132ca0100wyls.html
在XCode对应头文件中修改该类所l承的父c:
@interface TableViewController:UIViewController <UITableViewDataSource, UITableViewDelegate>
{
}
在对应的.m文g中添加如下代码:
@implementation TableViewController
{
UITableView *tableView = [[UITableView alloc]initWithFrame:CGRectMake(0,0,320,460) style:UITableViewStylePlain];
tableView.dataSource = self;
tableView.delegate = self;
[self.view addSubview:tableView];
}
q样在view上添加了一个tableViewQ但其样式是默认的,其中的内容也是空白的Q而且此时是无法运行的Q因为在头文件中d了UITableViewDataSource和UITableViewDelegate两个c,所以必设|一些自定义tableView样式的方法,下面列D了一些相关的ҎQ?/div>
讄Cell高度Q?/div>
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
讄SectionHeader高度Q?/div>
-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
讄SectionFooter高度Q?/div>
-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
讄Section数目Q?/div>
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
 
讄SectionHeader内容Q?/div>
-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
讄各个Section中的Cell个数Q?nbsp;
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
讄Cell内容Q?nbsp;
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
 
讄Cell行羃q量Q?/div>
-(NSInteger)tableView:(UITableView *)tableView indentationLevelForRowAtIndexPath:(NSIndexPath *)indexPath
讄Cell被选中响应前动?例如Q可用以判断选中的Cell,来阻止其响应Q?/div>
-(NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath
讄Cell选中触发响应Q?/div>
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath


]]>【{】Xcode分析CrashLog的方?/title><link>http://www.qpkxbc.shop/fastzch/archive/2011/12/28/367403.html</link><dc:creator>Robin's Programming World</dc:creator><author>Robin's Programming World</author><pubDate>Wed, 28 Dec 2011 04:24:00 GMT</pubDate><guid>http://www.qpkxbc.shop/fastzch/archive/2011/12/28/367403.html</guid><wfw:comment>http://www.qpkxbc.shop/fastzch/comments/367403.html</wfw:comment><comments>http://www.qpkxbc.shop/fastzch/archive/2011/12/28/367403.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.qpkxbc.shop/fastzch/comments/commentRss/367403.html</wfw:commentRss><trackback:ping>http://www.qpkxbc.shop/fastzch/services/trackbacks/367403.html</trackback:ping><description><![CDATA[<h1 class="entry-title" style="border-top-width: 0px; clear: both; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; word-spacing: 0px; font: bold 21px/1.3em 'Helvetica Neue', Arial, Helvetica, 'Nimbus Sans L', sans-serif; vertical-align: baseline; text-transform: none; color: rgb(0,0,0); text-indent: 0px; padding-top: 0px; white-space: normal; letter-spacing: normal; background-color: rgb(255,255,255); border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial; orphans: 2; widows: 2; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px"> </h1> <div class="entry-content" style="border-top-width: 0px; clear: both; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; word-spacing: 0px; font: 16px/24px Georgia, 'Bitstream Charter', serif; vertical-align: baseline; text-transform: none; color: rgb(51,51,51); text-indent: 0px; padding-top: 12px; white-space: normal; letter-spacing: normal; background-color: rgb(255,255,255); border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial; orphans: 2; widows: 2; webkit-text-size-adjust: auto; webkit-text-stroke-width: 0px"> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">原文地址Q?a href="http://www.acwind.net/blog/?p=1090">http://www.acwind.net/blog/?p=1090</a><br /><br />Bug是永q伴随着E序员们的东西,各种各样的情况造成E序crash掉也是家怾饭。Windows下的很多大型软g在崩溃的时候,都会弹出提示框,询问用户是否crash的信息发送到软g厂商Q以供Y件开发商debug。App store中的软g也有q个功能Q用户在使用软g的时候,如果E序崩溃Q错误信息会发送到Apple的服务器中,软g的开发者们可以很方便在后台获得自己E序的crash logQ供自己调试?/p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">但随之而来的问题是Q我们收到的E序崩溃调试信息多半是汇~语a一L堆栈代码Q同时这些信息ƈ不是在我们debug的时候生,所以看到这一串crash log的天书,常常无可奈何。Xcode很好的解决了q一问题Q它所提供的Orgainzer分析器加上symbolicatecrash,可以分析二进制文件以及源代码和crashlog之间的连接,直接扑և源程序中出错的代码行。方法网上到处是Q本文不讨论?/p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">但是如果使用symbolicatecrash无法定位到出错的代码行的话Q怎么整呢Q有一个办法,如下Q?/p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">首先查看crash log中的崩溃U程Q假如是q样的:</p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">Thread 0 Crashed:<br />0   libobjc.A.dylib              <span class="Apple-converted-space"> </span><span style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; white-space: pre; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial"> </span>0x00003ec0 objc_msgSend + 24<br />1   MyApp               0x000036d2 0×1000 + 9938?/p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">我们得到了用户发生崩溃情늚内存地址Q?x000036d2?/p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">然后回到我们应用E序的build目录Q目录下一定要包含MyApp.app 和MyApp.app.dSYM两个文g?/p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">在控制台使用dwarfdump命oQ解析出内存地址Q如Q?nbsp;</p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">dwarfdump –lookup 0x000036d2 –arch armv6 MyApp.app.dSYM</p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">输出信息如下Q?/p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial"><img title="dwarfdump.jpg" style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial" height="149" alt="dwarfdump.jpg" src="http://www.acwind.net/blog/wp-content/uploads/2010/06/dwarfdump.jpg" width="534" border="0" /></p> <p style="border-top-width: 0px; padding-right: 0px; padding-left: 0px; border-left-width: 0px; border-bottom-width: 0px; padding-bottom: 0px; margin: 0px 0px 24px; vertical-align: baseline; padding-top: 0px; background-color: transparent; border-right-width: 0px; background-origin: initial; background-clip: initial; border-image: initial">直接定位C码的出错行,CoolQ?/p></div><img src ="http://www.qpkxbc.shop/fastzch/aggbug/367403.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.qpkxbc.shop/fastzch/" target="_blank">Robin's Programming World</a> 2011-12-28 12:24 <a href="http://www.qpkxbc.shop/fastzch/archive/2011/12/28/367403.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转] Objective-C内存理教程和原理剖析口诀与范?/title><link>http://www.qpkxbc.shop/fastzch/archive/2011/12/01/365258.html</link><dc:creator>Robin's Programming World</dc:creator><author>Robin's Programming World</author><pubDate>Thu, 01 Dec 2011 01:25:00 GMT</pubDate><guid>http://www.qpkxbc.shop/fastzch/archive/2011/12/01/365258.html</guid><wfw:comment>http://www.qpkxbc.shop/fastzch/comments/365258.html</wfw:comment><comments>http://www.qpkxbc.shop/fastzch/archive/2011/12/01/365258.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.qpkxbc.shop/fastzch/comments/commentRss/365258.html</wfw:commentRss><trackback:ping>http://www.qpkxbc.shop/fastzch/services/trackbacks/365258.html</trackback:ping><description><![CDATA[<span style="font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 13px; line-height: normal; "> <table width="100%" class="Framework" cellspacing="0" cellpadding="0" style="background-color: #eeeeee; "> <tbody> <tr> <td class="MainCell" width="100%" style="font-size: 12px; padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; background-color: white; vertical-align: top; "> <div id="main"> <div class="post" style="border-left-color: #cccccc; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-bottom: 28px; "> <div class="posthead" style="background-color: #eeeeee; background-image: url(http://www.cnblogs.com/Skins/HabaHaba/images/PostHeaderBg.gif); padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; color: #444444; font-size: 9px; background-position: 50% 100%; background-repeat: repeat no-repeat; "> <h2 style="margin-top: 0px; font-size: 13px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><a id="ctl03_TitleUrl" class="singleposttitle" href="http://www.cnblogs.com/VinceYuan/archive/2010/03/08/1680492.html" style="color: #223355; text-decoration: none; ">iPhone/Mac Objective-C内存理教程和原理剖??口诀与范?/a></h2> Posted on 2010-03-08 00:35 <a href="http://www.cnblogs.com/VinceYuan/" style="color: #223355; text-decoration: none; ">Vince Yuan</a> 阅读(2331) <a href="http://www.cnblogs.com/VinceYuan/archive/2010/03/08/1680492.html#commentform" style="color: #223355; text-decoration: none; ">评论(1)</a> <a href="http://www.cnblogs.com/VinceYuan/archive/2010/03/08/1680492.html#" rel="nofollow" style="color: #223355; text-decoration: none; ">~辑</a> <a href="http://www.cnblogs.com/VinceYuan/archive/2010/03/08/1680492.html#" style="color: #223355; text-decoration: none; ">收藏</a> <img src="http://www.cnblogs.com/VinceYuan/aggbug/1680492.html?type=1&webview=1" width="1px" height="1px" alt="" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-style: initial; border-color: initial; " /></div> <div class="postbody" style="padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; margin-bottom: 14px; font-size: 13px; line-height: 1.5; "> <div id="cnblogs_post_body"> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span style="font-size: 13px; font-family: 宋体; ">版权声明</span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span style="font-size: 13px; font-family: 宋体; ">此文版权归作?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">Vince Yuan (vince.yuan#gmail.com)</font></span><span style="font-size: 13px; font-family: 宋体; ">所有。欢q非营利性{载,转蝲时必d含原始链?/span><span lang="EN-US" style="font-size: 13px; "><a href="http://vinceyuan.cnblogs.com/" target="_blank" style="color: #1d58d1; text-decoration: none; "><font face="Calibri">http://vinceyuan.cnblogs.com</font></a></span><span style="font-size: 13px; font-family: 宋体; ">Q且必须包含此版权声明的完整内容?/span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span style="font-size: 13px; font-family: 宋体; "></span><span style="font-size: 13px; font-family: 宋体; "></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span style="font-size: 13px; font-family: 宋体; "></span> </p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span style="font-size: 13px; font-family: 宋体; ">版本</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"> 1.1<span style="font-size: 13px; "> </span></font></span><span style="font-size: 13px; font-family: 宋体; ">发表?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">2010-03-08</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "> </p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span style="font-size: 13px; font-family: 宋体; ">?/span><font face="Calibri"> </font><span style="font-size: 13px; font-family: 宋体; ">口诀与范?/span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 21.25pt; margin-bottom: 0pt; text-indent: -21.25pt; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">1</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">           </span></span></span><span style="font-size: 13px; font-family: 宋体; ">口诀?/span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 49.6pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">1.1</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">          </span></span></span><span style="font-size: 13px; font-family: 宋体; ">谁创建,谁释放(cM?#8220;谁污染,谁治?#8221;Q。如果你通过</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">alloc</font></span><span style="font-size: 13px; font-family: 宋体; ">?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">new</font></span><span style="font-size: 13px; font-family: 宋体; ">?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">copy</font></span><span style="font-size: 13px; font-family: 宋体; ">来创Z个对象,那么你必调?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">release</font></span><span style="font-size: 13px; font-family: 宋体; ">?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">autorelease</font></span><span style="font-size: 13px; font-family: 宋体; ">。换句话_不是你创建的Q就不用你去释放?/span><span lang="EN-US" style="font-size: 13px; "><br /> </span><span style="font-size: 13px; font-family: 宋体; ">例如Q你在一个函C</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">alloc</font></span><span style="font-size: 13px; font-family: 宋体; ">生成了一个对象,且这个对象只在这个函C被用,那么你必dq个函数中调?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">release</font></span><span style="font-size: 13px; font-family: 宋体; ">?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">autorelease</font></span><span style="font-size: 13px; font-family: 宋体; ">。如果你在一?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">class</font></span><span style="font-size: 13px; font-family: 宋体; ">的某个方法中</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">alloc</font></span><span style="font-size: 13px; font-family: 宋体; ">一个成员对象,且没有调?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">autorelease</font></span><span style="font-size: 13px; font-family: 宋体; ">Q那么你需要在q个cȝ</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">dealloc</font></span><span style="font-size: 13px; font-family: 宋体; ">Ҏ中调?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">release</font></span><span style="font-size: 13px; font-family: 宋体; ">Q如果调用了</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">autorelease</font></span><span style="font-size: 13px; font-family: 宋体; ">Q那么在</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">dealloc</font></span><span style="font-size: 13px; font-family: 宋体; ">Ҏ中什么都不需要做?/span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 49.6pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">1.2</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">          </span></span></span><span style="font-size: 13px; font-family: 宋体; ">除了</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">alloc</font></span><span style="font-size: 13px; font-family: 宋体; ">?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">new</font></span><span style="font-size: 13px; font-family: 宋体; ">?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">copy</font></span><span style="font-size: 13px; font-family: 宋体; ">之外的方法创建的对象都被声明?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">autorelease</font></span><span style="font-size: 13px; font-family: 宋体; ">?/span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 49.6pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">1.3</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">          </span></span></span><span style="font-size: 13px; font-family: 宋体; ">?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">retain</font></span><span style="font-size: 13px; font-family: 宋体; ">Q谁</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">release</font></span><span style="font-size: 13px; font-family: 宋体; ">。只要你调用?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">retain</font></span><span style="font-size: 13px; font-family: 宋体; ">Q无个对象是如何生成的,你都要调?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">release</font></span><span style="font-size: 13px; font-family: 宋体; ">。有时候你的代码中明明没有</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">retain</font></span><span style="font-size: 13px; font-family: 宋体; ">Q可是系l会在默认实C加入</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">retain</font></span><span style="font-size: 13px; font-family: 宋体; ">。不知道Z么苹果公司的文档没有q个非常重要的一点,请参考范?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">2.7</font></span><span style="font-size: 13px; font-family: 宋体; ">和第三章?/span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 21.25pt; margin-bottom: 0pt; text-indent: -21.25pt; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">           </span></span></span><span style="font-size: 13px; font-family: 宋体; ">范式?/span><span lang="EN-US" style="font-size: 13px; "><br /> </span><span style="font-size: 13px; font-family: 宋体; ">范式是模板Q就是依葫芦ȝ。由于不同h有不同的理解和习惯,我ȝ的范式不一定适合所有hQ但我能保证照着q样做不会出问题?/span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 49.6pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.1</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">          </span></span></span><span style="font-size: 13px; font-family: 宋体; ">创徏一个对象?/span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">ClassA *obj1 = [[ClassA alloc] init];</font></span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 49.6pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.2</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">          </span></span></span><span style="font-size: 13px; font-family: 宋体; ">创徏一?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">autorelease</font></span><span style="font-size: 13px; font-family: 宋体; ">的对象?/span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">ClassA *obj1 = [[[ClassA alloc] init] autorelease];</font></span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 49.6pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.3</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">          </span></span></span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">Release</font></span><span style="font-size: 13px; font-family: 宋体; ">一个对象后Q立x指针清空。(Z说一句,</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">release</font></span><span style="font-size: 13px; font-family: 宋体; ">一个空指针是合法的Q但不会发生M事情Q?/span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">[obj1 release];</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">obj1 = nil;</font></span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 49.6pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.4</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">          </span></span></span><span style="font-size: 13px; font-family: 宋体; ">指针赋值给另一个指针?/span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">ClassA *obj2 = obj1;</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">[obj2 retain];</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">//do something</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">[obj2 release];</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">obj2 = nil;</font></span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 49.6pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.5</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">          </span></span></span><span style="font-size: 13px; font-family: 宋体; ">在一个函C创徏q返回对象,需要把q个对象讄?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">autorelease</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">ClassA *Func1()</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">{</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">  </span>ClassA *obj = [[[ClassA alloc]init]autorelease];</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">  </span>return obj;</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">}</font></span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 49.6pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.6</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">          </span></span></span><span style="font-size: 13px; font-family: 宋体; ">在子cȝ</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">dealloc</font></span><span style="font-size: 13px; font-family: 宋体; ">Ҏ中调用基cȝ</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">dealloc</font></span><span style="font-size: 13px; font-family: 宋体; ">Ҏ</span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">-(void) dealloc</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">{</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>…</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>[super dealloc];</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">}</font></span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 49.6pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.7</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">          </span></span></span><span style="font-size: 13px; font-family: 宋体; ">在一?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">class</font></span><span style="font-size: 13px; font-family: 宋体; ">中创建和使用</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">property</font></span><span style="font-size: 13px; font-family: 宋体; ">?/span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 70.9pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.7.1</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">     </span></span></span><span style="font-size: 13px; font-family: 宋体; ">声明一个成员变量?/span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.5pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">ClassB *objB;</font></span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 70.9pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.7.2</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">     </span></span></span><span style="font-size: 13px; font-family: 宋体; ">声明</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">property</font></span><span style="font-size: 13px; font-family: 宋体; ">Q加?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">retain</font></span><span style="font-size: 13px; font-family: 宋体; ">参数?/span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">@property (retain) ClassB* objB;</font></span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 70.9pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.7.3</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">     </span></span></span><span style="font-size: 13px; font-family: 宋体; ">定义</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">property</font></span><span style="font-size: 13px; font-family: 宋体; ">。(</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">property</font></span><span style="font-size: 13px; font-family: 宋体; ">的默认实现请看第三章Q?/span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.2pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">@synthesize objB;</font></span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 70.9pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.7.4</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">     </span></span></span><span style="font-size: 13px; font-family: 宋体; ">除了</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">dealloc</font></span><span style="font-size: 13px; font-family: 宋体; ">Ҏ以外Q始l用</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">.</font></span><span style="font-size: 13px; font-family: 宋体; ">操作W的方式来调?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">property</font></span><span style="font-size: 13px; font-family: 宋体; ">?/span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.5pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">self.objB </font></span><span style="font-size: 13px; font-family: 宋体; ">或?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">objA.objB</font></span></p> <p class="MsoListParagraph" style="margin-top: 0cm; margin-right: 0cm; margin-left: 70.9pt; margin-bottom: 0pt; text-indent: -1cm; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.7.5</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">     </span></span></span><span style="font-size: 13px; font-family: 宋体; ">?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">dealloc</font></span><span style="font-size: 13px; font-family: 宋体; ">Ҏ?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">release</font></span><span style="font-size: 13px; font-family: 宋体; ">q个成员变量?/span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63.5pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">[objB release];</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span style="font-size: 13px; font-family: 宋体; ">CZ代码如下Q详l代码请参考附件中?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">memman-property.m</font></span><span style="font-size: 13px; font-family: 宋体; ">Q你需要特别留意对象是在何时被销毁的。)Q?/span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">@interface ClassA : NSObject</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">{</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>ClassB* objB;</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">}</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><o:p><font face="Calibri"> </font></o:p></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">@property (retain) ClassB* objB;</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">@end</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><o:p><font face="Calibri"> </font></o:p></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">@implementation ClassA</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">@synthesize objB;</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">-(void) dealloc</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">{</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>[objB release];</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>[super dealloc];</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">}</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">@end</font></span></p> <p class="MsoListParagraph" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 70.9pt; margin-bottom: 0pt; text-indent: -1cm; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><span style="font-size: 13px; "><font face="Calibri">2.7.6</font><span style="font-size: 13px; font: normal normal normal 7pt/normal 'Times New Roman'; ">     </span></span></span><span style="font-size: 13px; font-family: 宋体; ">l这?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">property</font></span><span style="font-size: 13px; font-family: 宋体; ">赋值时Q有手动</span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">release</font></span><span style="font-size: 13px; font-family: 宋体; ">?/span><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">autorelease</font></span><span style="font-size: 13px; font-family: 宋体; ">两种方式?/span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">void funcNoAutorelease()</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">{</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>ClassB *objB1 = [[ClassB alloc]init];</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>ClassA *objA = [[ClassA alloc]init];</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>objA.objB = objB1;</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>[objB1 release];</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>[objA release];</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">}</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><o:p><font face="Calibri"> </font></o:p></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">void funcAutorelease()</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">{</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>ClassB *objB1 = [[[ClassB alloc]init] autorelease];</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>ClassA *objA = [[[ClassA alloc]init] autorelease];</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri"><span style="font-size: 13px; ">         </span>objA.objB = objB1;</font></span></p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 63pt; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span lang="EN-US" style="font-size: 13px; "><font face="Calibri">}</font></span></p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "> </p> <p class="MsoNormal" align="left" style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; text-align: left; "> </p> <p class="MsoNormal" style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0pt; text-indent: 0px; font-size: 13px; line-height: 19px; "><span style="font-size: 13px; font-family: 宋体; ">CZ代码文g链接Q?/span><span lang="EN-US" style="font-size: 13px; "><a href="http://files.cnblogs.com/VinceYuan/objective-c-memman.zip" target="_blank" style="color: #1d58d1; text-decoration: none; "><font face="Calibri">http://files.cnblogs.com/VinceYuan/objective-c-memman.zip</font></a></span></p> </div> </div> </div> </div> </td> </tr> </tbody> </table> </span> @import url(http://www.qpkxbc.shop/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);<img src ="http://www.qpkxbc.shop/fastzch/aggbug/365258.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.qpkxbc.shop/fastzch/" target="_blank">Robin's Programming World</a> 2011-12-01 09:25 <a href="http://www.qpkxbc.shop/fastzch/archive/2011/12/01/365258.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MAC上查看Adobe AIR的版?/title><link>http://www.qpkxbc.shop/fastzch/archive/2011/10/09/360246.html</link><dc:creator>Robin's Programming World</dc:creator><author>Robin's Programming World</author><pubDate>Sun, 09 Oct 2011 01:19:00 GMT</pubDate><guid>http://www.qpkxbc.shop/fastzch/archive/2011/10/09/360246.html</guid><wfw:comment>http://www.qpkxbc.shop/fastzch/comments/360246.html</wfw:comment><comments>http://www.qpkxbc.shop/fastzch/archive/2011/10/09/360246.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.qpkxbc.shop/fastzch/comments/commentRss/360246.html</wfw:commentRss><trackback:ping>http://www.qpkxbc.shop/fastzch/services/trackbacks/360246.html</trackback:ping><description><![CDATA[<p id="aeaoofnhgocdbnbeljkmbjdmhbcokfdb-mousedown" style="font-size: 1.025em; line-height: 1.462; margin-top: 0px; padding-bottom: 1px; margin-bottom: 1.2em; color: #444444; font-family: Arial, Helvetica; font-style: normal; font-variant: normal; letter-spacing: normal; orphans: 2; text-align: text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; background-color: #ffffff; ">MAC上看个Adobe AIR的版本没惛_如此复杂Q备忘一下:</p> <p id="aeaoofnhgocdbnbeljkmbjdmhbcokfdb-mousedown" style="font-size: 1.025em; line-height: 1.462; margin-top: 0px; padding-bottom: 1px; margin-bottom: 1.2em; color: #444444; font-family: Arial, Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; background-color: #ffffff; "><strong>M</strong><strong>ac OS X</strong></p> <ul style="list-style-type: disc; margin-left: 2em !important; padding-left: 2.5ex; margin-top: -8px; margin-bottom: 1.35em; color: #444444; font-family: Arial, Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-align: text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; background-color: #ffffff; "> <li id="" style="line-height: 1.25em; font-size: 1.025em; padding-bottom: 0.5em; "><span id="">Open the<span class="apple-converted-space"> </span></span><span id="">/Library/Frameworks/Adobe AIR.framework/Versions/1.0/Resources/Info.plist</span><span class="apple-converted-space"> </span>text file and locate<span class="apple-converted-space"> the<span class="apple-converted-space"> </span></span><key>CFBundleVersion</key><span id="">entry. The corresponding string entry represents the version of AIR, for example:<span class="apple-converted-space"> </span></span><string>1.5.3.9130</string> </li> </ul> <div><font color="#444444" face="Arial, Helvetica"><span style="font-size: 12px; line-height: 15px;">原文地址Q?/span></font></div> <div><font color="#444444" face="Arial, Helvetica"><span style="font-size: 12px; line-height: 15px;"><a href="http://kb2.adobe.com/cps/407/kb407625.html">http://kb2.adobe.com/cps/407/kb407625.html</a></span></font></div> @import url(http://www.qpkxbc.shop/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);<img src ="http://www.qpkxbc.shop/fastzch/aggbug/360246.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.qpkxbc.shop/fastzch/" target="_blank">Robin's Programming World</a> 2011-10-09 09:19 <a href="http://www.qpkxbc.shop/fastzch/archive/2011/10/09/360246.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Android Media Player 深入观察http://www.qpkxbc.shop/fastzch/archive/2011/08/06/355906.htmlRobin's Programming WorldRobin's Programming WorldSat, 06 Aug 2011 00:36:00 GMThttp://www.qpkxbc.shop/fastzch/archive/2011/08/06/355906.htmlhttp://www.qpkxbc.shop/fastzch/comments/355906.htmlhttp://www.qpkxbc.shop/fastzch/archive/2011/08/06/355906.html#Feedback1http://www.qpkxbc.shop/fastzch/comments/commentRss/355906.htmlhttp://www.qpkxbc.shop/fastzch/services/trackbacks/355906.html    A. Open coreQstagefright{agent不支持同时存在join stereo ?stereo两种cd的音乐数据,否则抛出 onCompeletion 事g?/div>
    B. QuickTime支持得很好,没问题?/div>

2QMedia Player用流数据的话Q如果超q?U种没有M数据写入Q便会抛出broken pipe异常Q这个也是很让h费解的,在网l不好时Q常常超q?U得不到数据?/div>

3QAndroid 2.3.3中,低于128K的音乐数据需要很长时间prepareQ如果是一?6K的音乐数据,需要超q?20U,据观察,臛_需?250,000 bytes以上数据才能使其prepared. 或许q是Z更好的播放体验在考虑Q但是有时候似乎适得其反?/div>

4QAndroid 2.2中,低于56K数据的音乐,用流播放ӞgetCurrentPosition数据不准,通常播了一U,q个position只走?00Q?00msQ依bitrate不同而有所区别Q?nbsp;

另:ImageView 不支持u.s. web coated (SWOP) color workflow。不是你放在drawable中,用BitmapFactory去decodeQ都无法支持?/div>
    其实g整个Java都不支持Q这个比较奇怪!q可是很行的一U格式呀Q做Java的h的杯P


]]> 1һ152ͼ ˿Ϸ p3 11ѡ5ͼ 2012Ϸ ݿ3ֵƼ ɽǿ agѶ 齫ɿھ ֲʿ 齫ͼƬȫЦͼ