﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-不过而而-随笔分类-ios</title><link>http://www.blogjava.net/lincode/category/50610.html</link><description /><language>zh-cn</language><lastBuildDate>Tue, 29 May 2012 06:37:19 GMT</lastBuildDate><pubDate>Tue, 29 May 2012 06:37:19 GMT</pubDate><ttl>60</ttl><item><title>[iOS] 生成 Push Notification pem 文件</title><link>http://www.blogjava.net/lincode/archive/2012/05/29/379418.html</link><dc:creator>lincode</dc:creator><author>lincode</author><pubDate>Tue, 29 May 2012 03:07:00 GMT</pubDate><guid>http://www.blogjava.net/lincode/archive/2012/05/29/379418.html</guid><wfw:comment>http://www.blogjava.net/lincode/comments/379418.html</wfw:comment><comments>http://www.blogjava.net/lincode/archive/2012/05/29/379418.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lincode/comments/commentRss/379418.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lincode/services/trackbacks/379418.html</trackback:ping><description><![CDATA[<div>1 Launch Keychain Access from your local Mac and from the login keychain, filter by the Certificates category. You will see an expandable option called &#8220;Apple Development Push Services&#8221;<br /></div><div>2 Right click on &#8220;Apple Development Push Services&#8221; &gt; Export &#8220;Apple Development Push Services ID123&#8243;. Save this as apns-dev-cert.p12 file somewhere you can access it. There is no need to enter a password.</div><div></div><div>3 The next command generates the cert in Mac&#8217;s Terminal for PEM format (Privacy Enhanced Mail Security Certificate):</div><div></div><div>openssl pkcs12 -in apns-dev-cert.p12 -out apns-dev-cert.pem -nodes -clcerts</div><img src ="http://www.blogjava.net/lincode/aggbug/379418.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lincode/" target="_blank">lincode</a> 2012-05-29 11:07 <a href="http://www.blogjava.net/lincode/archive/2012/05/29/379418.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[iOS] 引用外部静态库时，目录方法无法加载问题</title><link>http://www.blogjava.net/lincode/archive/2012/04/23/376373.html</link><dc:creator>lincode</dc:creator><author>lincode</author><pubDate>Mon, 23 Apr 2012 06:56:00 GMT</pubDate><guid>http://www.blogjava.net/lincode/archive/2012/04/23/376373.html</guid><wfw:comment>http://www.blogjava.net/lincode/comments/376373.html</wfw:comment><comments>http://www.blogjava.net/lincode/archive/2012/04/23/376373.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lincode/comments/commentRss/376373.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lincode/services/trackbacks/376373.html</trackback:ping><description><![CDATA[<br />这个 bug 在 xcode 4.3 以下会出现，4.3 以后已经修正了。<br />解决方法为：找到 target 的图标，更改其 Other Linker Flags 为： -all_load 或 -force_load<br />-force_load，后跟随一个文件位置，可以更精确地加载所需文件。<br />&nbsp;<br />苹果的解释为 ： <a href="http://developer.apple.com/library/mac/#qa/qa1490/_index.html">http://developer.apple.com/library/mac/#qa/qa1490/_index.html</a><br /><br />简单点说就是，Objective-C 的动态特性使得需要，为链接器添加一个标签（设置 Other Linker Flags 为 -ObjC）来解决通过 Category 向类添加方法的问题。<br />但这个标签 －ObjC 在 64 位 和 iOS 中有问题，需要使用 -all_load 或 -force_load。<br /><br />总结如下：<br />如果，第三库中没有 category，Other Linker Flags 无需设置<br />如果，第三方库中有 category，需要设置为 -ObjC<br />如果，某些 Xcode 版本中，出现问题，修改设置为 -all_load<img src ="http://www.blogjava.net/lincode/aggbug/376373.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lincode/" target="_blank">lincode</a> 2012-04-23 14:56 <a href="http://www.blogjava.net/lincode/archive/2012/04/23/376373.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[iOS] 阅读 Crash Report </title><link>http://www.blogjava.net/lincode/archive/2012/03/18/372131.html</link><dc:creator>lincode</dc:creator><author>lincode</author><pubDate>Sun, 18 Mar 2012 05:56:00 GMT</pubDate><guid>http://www.blogjava.net/lincode/archive/2012/03/18/372131.html</guid><wfw:comment>http://www.blogjava.net/lincode/comments/372131.html</wfw:comment><comments>http://www.blogjava.net/lincode/archive/2012/03/18/372131.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lincode/comments/commentRss/372131.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lincode/services/trackbacks/372131.html</trackback:ping><description><![CDATA[<strong>获得 Crash Report：</strong><br />1 itunesConnect 的后台会提供一个 Crash report 表；<br />2 把一台打开了开发模式的机器接入 Mac，Xcode 的 Organizer 中能查看这台设备的 Crash Report；<br />3 若使用了 Umeng.com, Bugsense.com 之类的工具。<br /><br /><strong>阅读 Crash Report:</strong><br />这之前需要一个名为 AppName.app.dSYM 的文件。Xcode 中，Archive 一个项目之后，可以在 Organizer 的 Archives 分页中，找到所有项目的 Archvie 文件。<br />右键点击一个， Show Package Content，就能看到一个类似 AppName－3－19－12.app.PM.xcarchive&nbsp; 的文件，show in finder 这个文件，就能找到 .dSYM 文件。<br /><br />在 Ternimal 中执行，若是 来自于 iphone 3G 的机器，就需要使用 armv6 代替 armv7.<br /><div><br />&nbsp;atos -o AppName.app.dSYM/Contents/Resources/DWARF/AppName &nbsp;-arch armv7 0x0000b82<br /><br />这样就能看到，地址对应的类，函数，代码行数。这个命令只能解析出客户代码的位置。若是错误堆栈中的系统调用，是无法翻译出来的。</div><img src ="http://www.blogjava.net/lincode/aggbug/372131.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lincode/" target="_blank">lincode</a> 2012-03-18 13:56 <a href="http://www.blogjava.net/lincode/archive/2012/03/18/372131.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[iOS] 地址反向解析</title><link>http://www.blogjava.net/lincode/archive/2012/01/12/368424.html</link><dc:creator>lincode</dc:creator><author>lincode</author><pubDate>Thu, 12 Jan 2012 13:27:00 GMT</pubDate><guid>http://www.blogjava.net/lincode/archive/2012/01/12/368424.html</guid><wfw:comment>http://www.blogjava.net/lincode/comments/368424.html</wfw:comment><comments>http://www.blogjava.net/lincode/archive/2012/01/12/368424.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/lincode/comments/commentRss/368424.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/lincode/services/trackbacks/368424.html</trackback:ping><description><![CDATA[Apple 提供了一个地址方向解析的服务&nbsp;MKReverseGeocoder，上传一个经纬度，返回一个详细的地理位置信息。但这个服务在中国不太稳定，时常不可用。<br />Google map 也提供了一个类似的服务，是访问一个 google map 的 api，这里试图封装了 google map 的服务。使使用 apple 和 google 的服务的接口基本一致，替换起来很容易。Google map 的这个服务在中国的状态比 apple 稍微好一些，但也有不稳定的时候。我猜想，apple 也许是使用 google 的服务封装了自己的&nbsp;MKReverseGeocoder。若是如此，这里的尝试也就没有什么意义了。<br /><br />DOUHttpRequest 是对 ASIHTTPRequest 的一个简单封装。这些代码可以 继承自&nbsp;MKReverseGeocoder。这样，使用方法就和 MKReverseGeocoder 一样了。<br /><br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #0000FF; ">static</span>&nbsp;NSString*&nbsp;kGeoServerUrl&nbsp;=&nbsp;@"http://maps.google.com/maps/api/geocode/json?latlng=%f,%f&amp;sensor=true&amp;language=en";<br /><span style="color: #0000FF; ">static</span>&nbsp;NSString*&nbsp;kLatitudeUserInfoKey&nbsp;=&nbsp;@"latitudeUserInfoKey";<br /><span style="color: #0000FF; ">static</span>&nbsp;NSString*&nbsp;kLongitudeUserInfoKey&nbsp;=&nbsp;@"longitudeUserInfoKey";<br /><br /><span style="color: #008000; ">//</span><span style="color: #008000; "><br /></span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;It's&nbsp;tje&nbsp;solution&nbsp;for&nbsp;replacing&nbsp;MKReverseGeocoder&nbsp;that&nbsp;has&nbsp;problem&nbsp;in&nbsp;China.<br /></span><span style="color: #008000; ">//<br /></span>-&nbsp;(<span style="color: #0000FF; ">void</span>)startedReverseGeoderWithLatitude:(<span style="color: #0000FF; ">double</span>)latitude&nbsp;longitude:(<span style="color: #0000FF; ">double</span>)longitude&nbsp;{<br />&nbsp;&nbsp;NSString&nbsp;*url&nbsp;=&nbsp;[NSString&nbsp;stringWithFormat:kGeoServerUrl,&nbsp;latitude,&nbsp;longitude];<br />&nbsp;&nbsp;DOUHttpRequest&nbsp;*req&nbsp;=&nbsp;[DOUHttpRequest&nbsp;requestWithURL:[NSURL&nbsp;URLWithString:url]&nbsp;target:self];<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;NSNumber&nbsp;*lat&nbsp;=&nbsp;[NSNumber&nbsp;numberWithDouble:latitude];<br />&nbsp;&nbsp;NSNumber&nbsp;*lon&nbsp;=&nbsp;[NSNumber&nbsp;numberWithDouble:longitude];<br />&nbsp;&nbsp;req.userInfo&nbsp;=&nbsp;[NSDictionary&nbsp;dictionaryWithObjectsAndKeys:lat,&nbsp;kLatitudeUserInfoKey,&nbsp;lon,&nbsp;kLongitudeUserInfoKey,&nbsp;nil];<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;DOUService&nbsp;*service&nbsp;=&nbsp;[DOUService&nbsp;sharedInstance];&nbsp;&nbsp;<br />&nbsp;&nbsp;[service&nbsp;addRequest:req];<br />}<br /><br /><br />-&nbsp;(NSDictionary&nbsp;*)addressDictionary:(NSObject&nbsp;*)obj&nbsp;{<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;NSArray*&nbsp;ary&nbsp;=&nbsp;nil;<br />&nbsp;&nbsp;<span style="color: #0000FF; ">if</span>&nbsp;(IS_INSTANCE_OF(obj,&nbsp;NSDictionary))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;NSObject*&nbsp;data&nbsp;=&nbsp;[(NSDictionary*)obj&nbsp;objectForKey:@"results"];<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">if</span>&nbsp;(IS_INSTANCE_OF(data,&nbsp;NSArray))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ary&nbsp;=&nbsp;(NSArray*)data;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NSDictionary&nbsp;*dic&nbsp;=&nbsp;[ary&nbsp;objectAtIndex:0];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NSArray&nbsp;*addressComps&nbsp;=&nbsp;[dic&nbsp;objectForKey:@"address_components"];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #008000; ">//</span><span style="color: #008000; ">NSString&nbsp;*streetNumber&nbsp;=&nbsp;@"";</span><span style="color: #008000; "><br /></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NSString&nbsp;*route&nbsp;=&nbsp;@"";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NSString&nbsp;*locality&nbsp;=&nbsp;@"";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NSString&nbsp;*country&nbsp;=&nbsp;@"";<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">for</span>&nbsp;(NSDictionary&nbsp;*comp&nbsp;in&nbsp;addressComps)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NSArray&nbsp;*types&nbsp;=&nbsp;[comp&nbsp;objectForKey:@"types"];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NSString&nbsp;*type&nbsp;=&nbsp;[types&nbsp;objectAtIndex:0];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;([type&nbsp;isEqualToString:@"street_number"])&nbsp;{<br /></span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;streetNumber&nbsp;=&nbsp;[comp&nbsp;objectForKey:@"long_name"];<br /></span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><span style="color: #008000; "><br /></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">if</span>&nbsp;([type&nbsp;isEqualToString:@"route"])&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;route&nbsp;=&nbsp;[comp&nbsp;objectForKey:@"long_name"];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">if</span>&nbsp;([type&nbsp;isEqualToString:@"locality"])&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;locality&nbsp;=&nbsp;[comp&nbsp;objectForKey:@"long_name"];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">if</span>&nbsp;([type&nbsp;isEqualToString:@"country"])&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;country&nbsp;=&nbsp;[comp&nbsp;objectForKey:@"long_name"];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NSDictionary&nbsp;*addressDic&nbsp;=&nbsp;[NSDictionary&nbsp;dictionaryWithObjectsAndKeys:route,&nbsp;kABPersonAddressStreetKey,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;locality,&nbsp;kABPersonAddressCityKey,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;country,&nbsp;kABPersonAddressCountryKey,&nbsp;nil];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">return</span>&nbsp;addressDic;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;}<br />&nbsp;&nbsp;<span style="color: #0000FF; ">return</span>&nbsp;nil;<br />}<br /><br /><br />-&nbsp;(<span style="color: #0000FF; ">void</span>)requestFinished:(DOUHttpRequest&nbsp;*)req&nbsp;{<br />&nbsp;&nbsp;NSError&nbsp;*error&nbsp;=&nbsp;[req&nbsp;error];<br />&nbsp;&nbsp;<span style="color: #0000FF; ">if</span>&nbsp;(!error)&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;DebugLog(@"str:%@",&nbsp;[req&nbsp;responseString]);<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;NSObject&nbsp;*obj&nbsp;=&nbsp;[[req&nbsp;responseString]&nbsp;JSONValue];<br />&nbsp;&nbsp;&nbsp;&nbsp;NSDictionary&nbsp;*addressDic&nbsp;=&nbsp;[self&nbsp;addressDictionary:obj];<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;CLLocationCoordinate2D&nbsp;coordinate;<br />&nbsp;&nbsp;&nbsp;&nbsp;coordinate.latitude&nbsp;=&nbsp;[[req.userInfo&nbsp;objectForKey:kLatitudeUserInfoKey]&nbsp;doubleValue];<br />&nbsp;&nbsp;&nbsp;&nbsp;coordinate.longitude&nbsp;=&nbsp;[[req.userInfo&nbsp;objectForKey:kLongitudeUserInfoKey]&nbsp;doubleValue];&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;MKPlacemark&nbsp;*placemark&nbsp;=&nbsp;[[[MKPlacemark&nbsp;alloc]&nbsp;initWithCoordinate:coordinate&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;addressDictionary:addressDic]&nbsp;autorelease];<br />&nbsp;&nbsp;&nbsp;&nbsp;[self&nbsp;reverseGeocoder:nil&nbsp;didFindPlacemark:placemark];<br />&nbsp;&nbsp;}<br />}<br /><br />-&nbsp;(<span style="color: #0000FF; ">void</span>)requestFailed:(DOUHttpRequest&nbsp;*)req&nbsp;{&nbsp;<br />&nbsp;&nbsp;[self&nbsp;reverseGeocoder:nil&nbsp;didFailWithError:[req&nbsp;error]];<br />}<br /><br /><br />#pragma&nbsp;mark&nbsp;-&nbsp;MKReverseGeocoderDelegate<br /><br /><span style="color: #0000FF; ">static</span>&nbsp;NSString&nbsp;*&nbsp;<span style="color: #0000FF; ">const</span>&nbsp;AppleLanguagesKey&nbsp;=&nbsp;@"AppleLanguages";<br /><br />-&nbsp;(<span style="color: #0000FF; ">void</span>)reverseGeocoder:(MKReverseGeocoder&nbsp;*)geocoder&nbsp;didFindPlacemark:(MKPlacemark&nbsp;*)placemark&nbsp;{<br /><br />&nbsp;&nbsp;NSArray&nbsp;*array&nbsp;=&nbsp;[[NSUserDefaults&nbsp;standardUserDefaults]&nbsp;objectForKey:AppleLanguagesKey];<br />&nbsp;&nbsp;NSString&nbsp;*currentLanguage&nbsp;=&nbsp;[array&nbsp;objectAtIndex:0];<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;<span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;set&nbsp;current&nbsp;language&nbsp;as&nbsp;english</span><span style="color: #008000; "><br /></span>&nbsp;&nbsp;[[NSUserDefaults&nbsp;standardUserDefaults]&nbsp;setObject:[NSArray&nbsp;arrayWithObjects:@"zh-Hans",&nbsp;nil]&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;forKey:AppleLanguagesKey];<br />&nbsp;&nbsp;NSString&nbsp;*local&nbsp;=&nbsp;[placemark.locality&nbsp;lowercaseString];<br />&nbsp;<br />&nbsp;&nbsp;[AppContext&nbsp;sharedInstance].currentCityUid&nbsp;=&nbsp;local;<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;<span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;reset&nbsp;current&nbsp;language</span><span style="color: #008000; "><br /></span>&nbsp;&nbsp;[[NSUserDefaults&nbsp;standardUserDefaults]&nbsp;setObject:[NSArray&nbsp;arrayWithObjects:currentLanguage,&nbsp;nil]&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;forKey:AppleLanguagesKey];<br />}<br /><br />-&nbsp;(<span style="color: #0000FF; ">void</span>)reverseGeocoder:(MKReverseGeocoder&nbsp;*)geocoder&nbsp;didFailWithError:(NSError&nbsp;*)error&nbsp;{<br />&nbsp;&nbsp;TraceLog(@"reverseGeocoder&nbsp;:%@",&nbsp;[error&nbsp;localizedDescription]);&nbsp;&nbsp;<br />}</div><img src ="http://www.blogjava.net/lincode/aggbug/368424.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/lincode/" target="_blank">lincode</a> 2012-01-12 21:27 <a href="http://www.blogjava.net/lincode/archive/2012/01/12/368424.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>