草庐IT

iphone - 在 iPhone VOIP 应用程序中保持 SIP 注册的时间间隔小于 600 秒

我正在实现一个使用SIP协议(protocol)的VOIP应用程序。根据SIP,我需要在特定时间间隔刷新我在SIP服务器上的注册。但是当我的应用程序进入后台时,我的keepalive处理程序仅在600秒后根据documentsosApple调用。但这不是SIP协议(protocol)所希望的。为了能够保持与服务器的连接并接收来电,我需要在600秒之前发送注册消息,即使应用程序在后台也是如此。根据Apple文档,这是不可能的,但我仍然看到AppStore上的应用程序在后台运行,即使注册间隔为60秒,它们也会在SIP服务器上保持注册状态。他们始终保持应用程序在后台运行。那么这怎么可能呢?我

iphone - 创建 TCP 套接字连接并在多个 View 中保持连接打开

我已经使用TCP套接字成功地建立了从iPhone到服务器(这是一台Windows机器)的连接。目前,我正在使用一个按钮来执行以下代码:while(1){Socket*socket;intport=11005;NSString*host=@"9.5.3.63";socket=[Socketsocket];@try{NSMutableData*data;[socketconnectToHostName:hostport:port];[socketreadData:data];//[socketwriteString:@"HelloWorld!"];//**Connectionwassucc

ios - 在 SQLite 中保存 UIBezierPath

我正在使用UIBezierPath在View上绘制手绘注释。我想将它保存在SQLite中,以便在用户打开该View时绘制该View。有什么方法可以在SQLite中保存UIBezierPath,这样我就可以随时使用它来绘制View。 最佳答案 您可以将其序列化为数据(以NSData实例的形式),因为UIBezierPath符合NSCoding(即NSData*data=[NSDataarchivedDataWithRootObject:yourPath]另一种选择可能是与SVG相互转换并保存。

iphone - 如何在 APNS iPhone 应用程序的 php 服务器中保存所有 DeviceTokens?

正在将APNS集成到我的iPhone应用程序中。我已经完成了Apple提供的ApplePushNotification文档。我对服务器端有疑问。请在下面找到我的疑惑,1.Applesaidtocreateaserverfrombelowsteps,InstallingtheSSLCertificateandKeyontheServer:YoushouldinstalltheSSLdistributioncertificateandprivatecryptographickeyyouobtainedearlierontheservercomputeronwhichtheproviderc

ios - 如何在 iOS 编程中保持方法执行的顺序?

所以目前我正在iOS中开发相机应用程序。一般来说,当点击屏幕上的“捕获”按钮时,它会执行以下操作:在屏幕上显示UILabel“正在保存..”[camManagercaptureStillImage]//捕捉图像从屏幕上删除UILabel“Saving..”问题是,“Saving..”标签从未出现在屏幕上。但是,当我删除第3步时,标签实际上会出现在屏幕上,但是在捕获图像之后。所以根据我的理解,这要么是因为第2步执行得太快,要么是多线程导致这些步骤不能保证按照我写的顺序执行。它是否正确?如果是这样,我如何保证这个标签在捕获前出现并在捕获后立即消失?代码-(IBAction)captureI

ios - 如何在 KeychainItemWrapper 中保存 bool 值

我想在KeychainItemWrapper中存储bool值,如何存储?我试过这段代码,但它给了我错误。[keychainsetObject:YESforKey:(__bridgeBOOL)kSecAttrIsInvisible]; 最佳答案 BOOL是原始类型,setObject:forKey:仅排除派生自NSObject的类。所以使用NSNumber它有一个特殊的方法+numberWithBool::[keychainsetObject:[NSNumbernumberWithBool:YES]forKey:@"someKey"]

ios - 在我的 AppDelegate 中保留一个 CLLocationManager 是一种好习惯吗?

我的应用监控用户位置,包括一些后台位置监控。我的AppDelegate中有一个位置管理器,主要用于初始启动位置和后台更新。然后我在我的ViewController(map)中有另一个管理器,用于更具体的事件和快速引用。我想知道将其重构为一个实例、保存在AppDelegate中并在整个应用程序中引用它是否是一个好习惯:self.appDelegate=(AppDelegate*)[[UIApplicationsharedApplication]delegate];[self.appDelegate.locationManagerstartUpdatingLocation];

ios - iPhone - 从文件中保存和加载用户的登录信息

大家好,我在尝试保存用户的登录名(电子邮件)和密码(字符/数字)时遇到了一些问题。这些都是NSString的UITextFields。我现在在View的末尾设置它,然后它被取消为[emailwriteToFile:@"Login"atomically:YESencoding:NSUTF8StringEncodingerror:&error];[passwordwriteToFile:@"Password"atomically:YESencoding:NSUTF8StringEncodingerror:&error];但是,我不确定在加载View时如何加载这些。我尝试在View加载开始时

ios - 如何为核心数据中保存整数值的字符串属性设置谓词

如何为核心数据中包含整数值的字符串属性设置谓词以获取整数中的中间值。我在多个条件下使用复合谓词,下面是一段代码..NSPredicate*categoryPredicate=[NSPredicatepredicateWithFormat:@"rating>=%@ANDrating"rating"属性在数据库中是字符串类型。我需要在ratingFrom和ratingTo文本字段中获得给定范围之间的评分。“1”到“10”应该获取1到10之间的所有评分。如果不将属性类型更改为数字,我该如何实现这一点。感谢任何帮助..谢谢 最佳答案 我不确

css - 如何在浏览器窗口的边界(垂直和水平)中保持居中的 div?

我正在努力使图像和链接始终保留在浏览器窗口中。这是site.在iPad上加载时,居中内容比窗口大,如图所示.我希望它显示为(显然没有黑色边框)。这可能吗? 最佳答案 在没有任何额外标记的情况下使元素居中的技巧是使用translate:div{position:absolute;top:50%;left:50%;transform:translateX(-50%)translateY(-50%);}这是fiddle:http://jsfiddle.net/QE8KV/附注不要忘记供应商前缀。