Facebook的iOS授权和发布没有对话框?

我刚刚开始与iOS的Facebook SDK,并检查了文档和其他帮助彻底,但不能成功。 我已经开始了一个新的基于视图的应用程序,并按照文档中的build议进行授权。 每次我启动应用程序切换到Facebook应用程序(我已经安装在我的iPhone上),并说已经授权,按OK。 我怎样才能阻止它重复这样做? 我也尝试过在Facebook上发帖而没有对话。 控制台告诉我一个请求,但发生错误(不会崩溃,但didFailWithError告诉我)。 无论如何,我没有发布任何我的代码,因为它似乎相对简单,所以如果有人知道如何做到这一点,我会大力赞赏任何帮助,甚至可能是一个代码示例。 谢谢。

支持西class牙语的iOS语音识别框架

是否有支持西class牙语的iOS语音框架的演讲? 商业或操作系统是好的。

如何计算用户移动时从用户位置到注释的距离

我有一个用户位置(蓝点)和mapView注释。 当select注释时,我将文本设置为distLabel – “到点%4.0f m的距离”。 用户移动时如何更新该文本标签? didSelectAnnotationView: – (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view { CLLocation *pinLocation = [[CLLocation alloc] initWithLatitude: [(MyAnnotation*)[view annotation] coordinate].latitude longitude: [(MyAnnotation*)[view annotation] coordinate].longitude]; CLLocation *userLocation = [[CLLocation alloc] initWithLatitude: self.mapView.userLocation.coordinate.latitude longitude: self.mapView.userLocation.coordinate.longitude]; CLLocationDistance distance = [pinLocation distanceFromLocation:userLocation]; [distLabel setText: [NSString stringWithFormat:@"Distance to point %4.0f m.", distance]]; } 我知道有一个函数didUpdateToLocation ,但我怎样才能用它didSelectAnnotationView ? – (void)locationManager:(CLLocationManager […]

为什么我会遇到dispatch_once死锁?

我为什么僵持? – (void)foo { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ [self foo]; }); // whatever… } 我希望foo在第一次通话时被执行两次。

将XCTest导入到现有项目中

我添加了一个新的目标作为一个cocoa触摸unit testing包,命名为“MyAppTests”目录,而实际的框架是不活跃的 – 它突出显示为红色 当我在“构build阶段”选项卡技术中通过“链接二进制库”添加框架时,将添加一个新框架,而不是更新通过添加目标创build的框架。 当我运行代码时,我遇到了各种各样的麻烦,包括将错误链接到其他未被识别的框架。 如何激活在添加目标时生成的XCTest.framework? 请帮忙,谢谢!

在Swift中从JSON数组获取值

我试图从我从JSON Web请求中获取的数组中检索值。 但是我不能让valueForKey函数工作,所以我可以将string应用到标签。 下面的例子search软件的Apples API。 作为一个testing,我希望能够将“trackName”键应用于UILabel,但是我尝试的所有事情,无论是崩溃,还是返回nil。 这是我的代码 func searchFunction(searchQuery: NSString) { var url : NSURL = NSURL.URLWithString("https://itunes.apple.com/search?term=\(searchQuery)&media=software") var request: NSURLRequest = NSURLRequest(URL:url) let config = NSURLSessionConfiguration.defaultSessionConfiguration() let session = NSURLSession(configuration: config) let task : NSURLSessionDataTask = session.dataTaskWithRequest(request, completionHandler: {(data, response, error) in var newdata : NSDictionary = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as NSDictionary var […]

检测移动到移动Safari中的新标签

我有一系列打开popup窗口的页面(Mobile Safari中的新选项卡)。这些popup窗口中的每一个都需要知道它们是何时关注的。 在桌面上,我们使用window.onblur和window.onfocus来驱动这种行为。 但是,这些事件都不能在iPad上使用。 我也尝试了window.onpageshow和window.onpagehide ,似乎没有在正确的时间开火。 我有一个testingHTML文件: <html> <head> <script language="javascript"> console.log('Hello'); window.onblur = function(e) { console.log('blur'); }; window.onfocus = function(e) { console.log('focus'); }; window.onpagehide = function(e) { console.log('pagehide'); }; window.onpageshow = function(e) { console.log('pageshow'); }; </script> </head> <body> <a href="http://www.google.com" target="_blank">Click Me</a> </body> </html> 理论上,当你点击“Click Me”时,当出现新窗口时,你应该得到一个模糊事件。 但是这在移动Safari上不会发生。 onpagehide和onpageshow显示任何爱,他们只是帮助检测当你要closures标签。 我如何获得我在移动Safari浏览器中查找的行为? 有没有可能?

我如何象征复制/粘贴的崩溃报告?

我有一个使用iPhone应用程序的应用程序版本遇到崩溃的用户。 崩溃不通过iTunes连接报告,用户无法与iTunes同步,并得到.crash文件(他们没有电脑)。 但是,用户可以在“设置>常规>关于>诊断和使用情况数据”下的手机中复制和粘贴崩溃报告。 我把这个用户复制的崩溃报告,并手动将其粘贴到一个文本文件,并用.crash扩展名重命名。 当我将这个手动创build的.crash报告导入到XCode的组织者中时,我无法对它进行符号化。 我正在使用生成应用程序商店二进制文件的XCode的相同副本,并将ipa归档,我可以象征性地表示来自iTunes连接的崩溃。 预计手动创build.crash文件不会有符号意义或我做错了什么? 任何帮助将非常感激! 谢谢! ****更新****我也无法使用这里的步骤象征性的崩溃报告: Symbolicating iPhone应用崩溃报告 。 ****更新2 ****这里是崩溃报告: Incident Identifier: 3A2A3D26-1E44-46AA-9777-658EBBBEDD57 CrashReporter Key: a9eadbf28904a2c3b4d285c7455db9ae06a5a555 Hardware Model: iPhone5,1 Process: MyApp [1180] Path: /var/mobile/Applications/0B09C692-7C36-4398-AC77-4217401E0FC/MyApp.app/MyApp Identifier: MyApp Version: ??? (???) Code Type: ARM (Native) Parent Process: launchd [1] Date/Time: 2013-02-12 18:45:15.066 -0500 OS Version: iOS 6.1 (10B143) Report Version: 104 Exception […]

Phonegap混合audio文件

我使用Phonegap为Ios构build了一个卡拉OK应用程序。 我可以使用media.play()函数播放www / assets文件夹中的audio文件 这允许用户收听背景音轨。 而媒体正在播放另一媒体实例正在录制。 一旦录音结束,我需要把录音文件放在背景音轨上,我不知道如何去做这件事。 我认为可能的一种方法是使用WEb Audio API – 我从HTML5 Rocks获取了以下代码,将两个文件加载到AudioContext中,并允许我同时播放这两个文件。 但是,我想要做的是将两个缓冲区写入一个.wav文件。 有什么办法可以将source1和source2合并成一个新的文件? var context; var bufferLoader; function init() { // Fix up prefixing window.AudioContext = window.AudioContext || window.webkitAudioContext; context = new AudioContext(); bufferLoader = new BufferLoader( context, [ 'backingTrack.wav', 'voice.wav', ], finishedLoading ); bufferLoader.load(); } function finishedLoading(bufferList) { // Create two sources […]

iOS中的例外Handeling

阅读文档并通过Apple示例代码(以及大部分可用的第三方Objective-C代码),我觉得您不应该使用try / catch和“traditional / C”来做exception处理,方法。 最近我正在阅读亚马逊AWS iOS SDK,并注意到他们已经使用了旧的方法。 这对我来说是一种解脱,因为我总是觉得我需要确保在使用别人编写的代码或二进制库(我的意思是Google Analytics二进制文件等)时特别注意这个exception。 我的问题是,是否有任何理由避免iOS上的“传统”exception处理“,或者这不是一个有品位的Objective-C实践?