如何防止Phonegap应用程序中的地理位置双重提示?

我为iPhone创build了一个PhoneGap应用程序,通过webview中的JavaScript使用地理定位。 当我第一次运行应用程序时,它会提示我允许此应用程序的地理位置。 当我点击“确定”,它会再次提示我有同样的问题,但这次它声明“index.html”想要使用地理定位的权限。 这是有道理的,因为iOS可能需要第一次允许应用程序本身的地理位置权限,第二次浏览器需要权限。 但是,由于不会带来很好的用户体验: 我怎样才能防止这种双重提示? (如果第二个提示可以被阻止,我就足够了)

方法 uniqueIdentifier]不再被允许,我需要一个替代

我在所有应用程序中使用[[UIDevice currentDevice] uniqueIdentifier] ,Apple不再允许使用uniqueIdentifier 。 我需要一些东西来替代uniqueIdentifier ,我可以使用它来识别用户,即使当用户删除了应用程序并重新安装它(并且也得到我的应用程序批准的苹果)。 谢谢

iOS如何debugging没有堆栈跟踪崩溃,如::索引0超出空数组的边界?

我试图解雇一个模式的视图控制器,并得到以下错误: *终止应用程序,由于未捕获的exception“NSRangeException”,原因:'* – [__ NSArrayM objectAtIndex:]:索引0超出空数组的边界' 有一次,我花了4个小时试图debugging这样的错误。 任何人都可以告诉我,如果有一种方法来查看堆栈跟踪这种错误,以了解哪个对象导致不正确的访问? 谢谢!

如何绕着X轴翻转UIView,同时切换子视图

这个问题之前已经被问过了,但是方式稍有不同,我无法得到任何答案,所以我希望拥有出色核心animation技能的人能够帮助我。 我有一张桌子上的一套卡。 随着用户向上或向下滑动,该组卡片在桌子上上下移动。 在任何时候屏幕上都可以看到4张牌,但是只有第二张牌正在显示其脸部。 当用户滑动第二张卡时,将其翻转回到其面部,并且下一张卡(取决于滑动方向)落在显示其面部的位置。 我已经build立了我的卡片视图类如下所示: @interface WLCard : UIView { UIView *_frontView; UIView *_backView; BOOL flipped; } 而且我试过用这段代码翻转卡片: – (void) flipCard { [self.flipTimer invalidate]; if (flipped){ return; } id animationsBlock = ^{ self.backView.alpha = 1.0f; self.frontView.alpha = 0.0f; [self bringSubviewToFront:self.frontView]; flipped = YES; CALayer *layer = self.layer; CATransform3D rotationAndPerspectiveTransform = CATransform3DIdentity; rotationAndPerspectiveTransform.m34 = 1.0 […]

如何authentication后从雅虎redirect到我的IOS应用程序?

我正在一个应用程序,我必须使用雅虎帐户login。 我已经通过这个链接,并按照程序,因为它在那里。但我无法回到我的应用程序authentication后。谷歌search后,我在这里find了答案。他说:“在您的info.plist中添加一个URL计划文件与YOUR_APP_ID_OR_BUNDLE_ID“我做了同样的,但无法从雅虎redirect到我的应用程序。如果任何人在这工作,请帮助我。提前感谢。 这是我在我的URL Schemes中完成的 JCzOzd44是我的应用程序ID。 在创build应用程序的雅虎帐户。我应该在“应用程序域”

如何精确地在图像模式上绘制线条

我有一个UIImageView。 里面,我画线用户触摸事件。 问题是UIImageview任何位置都可以绘制UIImageview ,但是我只喜欢用图像模式绘制线条。 例如,看这个图像。 我只需要在图像模式上画线。 这是我的代码: -(void)touchesMoved:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { UITouch *touch = [[event allTouches] anyObject]; touchPoint = [touch locationInView:self.imgColor]; UIBezierPath *path = [UIBezierPath bezierPath]; [path moveToPoint:CGPointMake(touchPoint.x,touchPoint.y)]; [path addLineToPoint:CGPointMake(startingPoint.x,startingPoint.y)]; startingPoint=touchPoint; CAShapeLayer *shapeLayer = [CAShapeLayer layer]; shapeLayer.path = [path CGPath]; shapeLayer.strokeColor = [[UIColor blueColor] CGColor]; shapeLayer.lineWidth = 3.0; shapeLayer.fillColor = [[UIColor redColor] CGColor]; […]

使用自签名证书在iOS 9中制作HTTPS请求

我想使用自签名证书向自定义服务器发出HTTPS请求。 我正在使用NSURLConnection类和处理身份validation的挑战,但始终在控制台中收到错误消息: NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802) 那么方法“connection:didFailWithError:”被调用,出现以下错误: Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={NSURLErrorFailingURLPeerTrustErrorKey=<SecTrustRef: 0x150094100>, NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9802, NSErrorPeerCertificateChainKey=<CFArray 0x1500ddd90 [0x19f6dab68]>{type = immutable, count = 1, values = ( 0 : <cert(0x14e6fb370) s: […]

NSUserDefaultsDidChangeNotification:什么是密钥的名称,改变?

当UserDefaults中的某个值发生更改时,此代码将调用方法“defaultsChanged” NSNotificationCenter *center = [NSNotificationCenter defaultCenter]; [center addObserver:self selector:@selector(defaultsChanged:) name:NSUserDefaultsDidChangeNotification object:nil]; 这个代码会给我改变的价值 – (void)defaultsChanged:(NSNotification *)notification { // Get the user defaults NSUserDefaults *defaults = (NSUserDefaults *)[notification object]; // Do something with it NSLog(@"%@", [defaults objectForKey:@"nameOfThingIAmInterestedIn"]); } 但我怎么能得到的密钥的名称,改变?

embedded式框架<iOS 8

好的,所以这个人 没有任何问题,build立和提交一个应用程序,针对iOS 7 +,使用embedded式框架。 他指出,在苹果开发者论坛中提到的一个苹果工程师绰号“SevenTenEleven” ,警告以下警告: ld:警告:embedded式dylibs /框架只能在iOS 8或更高版本上运行 …只是一个错误。 这个警告仍然存在于Xcode 6.3中,看起来应用程序商店提交是自己知道的唯一方法,如果这实际上是一个错误。 有没有人发现任何文件,这表明这只是一个错误,事实上,没有什么可担心的? build立一个应用程序只是为了看看这样的框架是否可以针对iOS 7,并通过App Store提交过程,是疯了。 不幸的是,我的客户只是想要一个SDK,所以目前没有可以做testing的应用程序。

ios UICollectionView检测滚动方向

我有一个collectionView。 我想检测滚动方向。 我有一个两个不同的animation风格,向下滚动和向上滚动。 所以我必须学习滚动方向。 CGPoint scrollVelocity = [self.collectionView.panGestureRecognizer velocityInView:self.collectionView.superview]; if (scrollVelocity.y > 0.0f) NSLog(@"scroll up"); else if(scrollVelocity.y < 0.0f) NSLog(@"scroll down"); 这只是在手指触摸工作。 不为我工作