CFBundleVersion必须是由三个非负整数组成的句点分隔列表(WARNING ITMS-9000)

我试图提交我的应用程序时收到此警告: 警告ITMS-9000:“这个包是无效的,在info.plist文件中,CFBundleVersion [3.3.9.2014.08.20]键的值必须是一个由三个非负整数组成的句点分隔列表。 这是我第一次以这种版本格式提交了很多意见之后。 CFBundleVersion有什么改变吗? 我猜这三个并不总是在那里? 或者苹果刚刚开始警告我们呢? 从苹果文档 : CFBundleVersion CFBundleVersion(String – iOS,OS X)指定包的版本号,它标识包的迭代(释放或未发布)。 构build版本号应该是一个由三个非负的,句点分隔的整数组成的string,第一个整数大于零。 该string应该只包含数字(0-9)和句点(。)字符。 前导零从每个整数中截断,将被忽略(即1.02.3相当于1.2.3)。 此密钥不可本地化。 编辑: 显然CFBundleVersion被改变了,你可以在这里看到。 我很遗憾,我需要在WayBackMachine上search类似的东西,而苹果的“文档修订历史”没有提到这件事。

我如何重写UIDatePicker组件?

我注意到UIDatePicker不能在iOS 5.0或5.1中使用NSHebrewCalendar 。 我决定尝试写我自己的。 我很困惑如何填充数据,以及如何保持date的标签以一种健全和高效的方式。 每个组件实际上有多less行? 什么时候用新标签“重新加载”行? 我打算给这个镜头,我会发现,但我发现,但请发帖,如果你知道什么。

dynamic调整UITableViewCell到UILabel的高度

我想根据标签的高度和标签的高度来调整单元格的高度。 或者有什么办法可以根据在UITextViewinput的文本来调整单元格的高度?

架构armv7的未定义符号:“_OBJC_CLASS _ $ _ GGLContext”,引用自:AppDelegate.o中的objc-class-ref

我正在尝试在我的iSO应用中添加Google Analytics,并使用Google Analytics(分析)最新的SDK https://developers.google.com/analytics/devguides/collection/ios/v3/ 。 我的项目成功添加了所有必需的标题和框架。 但是,当运行我的应用程序,我得到以下错误 (null):“_OBJC_CLASS _ $ _ GGLContext”,引用自:AppDelegate.o中的objc-class-ref (null):链接器命令失败,退出代码1(使用-v查看调用) 下面是我在AppDelegate.m文件中写的代码 // Configure tracker from GoogleService-Info.plist. NSError *configureError; [[GGLContext sharedInstance] configureWithError:&configureError]; NSAssert(!configureError, @"Error configuring Google services: %@", configureError); // Optional: configure GAI options. GAI *gai = [GAI sharedInstance]; gai.trackUncaughtExceptions = YES; // report uncaught exceptions gai.logger.logLevel = kGAILogLevelVerbose; // remove before app […]

我如何自动滚动表格视图? (迅速)

我添加了一个search栏到我的表格视图,当用户search,我希望表视图滚动到您键入的文本。 如何使滚动视图自动滚动? 这是我尝试,但我得到一个错误,说一个整数不能转换为索引path。 我该怎么办? self.tableview.scrollToRowAtIndexPath(1, atScrollPosition: UITableViewScrollPosition.Middle, animated: true) 要么 self.tableview.scrollToNearestSelectedRowAtScrollPosition(scrollPosition: UITableViewScrollPosition.Middle, animated: true)

适用于iOS 5的Geofence API

我想build立一个应用程序,可以设置一定数量的地理围栏的方形区域,我知道我可以通过在后台启用位置来实现这一点,并检查这些坐标以确定它们是否在我感兴趣的区域。 但是这意味着接收来自系统的许多通知,并会影响电池性能。 相反,我想知道是否有一个新的API或即将到来的一个,可以让你设置一个地理栅栏,只有在系统内部或附近时才通知系统,而不是不断地监视你的位置。 那可能吗 ? 我发现了下面的问题,但是我找不到其他的东西: http : //www.quora.com/Is-the-geo-fence-functionality-built-into-iOS5s-Reminders-application-available-as-a -public相向API 在我看来,还有更多的东西是围栏,然后跟踪GPS,并与一系列兴趣点进行比较。 如果我设置提醒应用程序来提醒我,当我进去时,我必须走过我的室友狗,那么我可以看到屏幕顶部的位置图标。 如果我打开多任务栏并删除提醒,位置图标仍然存在,表明电话正在跟踪我,但这是提醒应用程序的独立任务。 如果我设置了一个具有后台位置跟踪的应用程序,并从多任务栏中删除,位置图标随应用程序一起消失。 这使得我相信iOS 5.x将会有或将会有一个用于地理围栏的API,这将允许应用程序向系统发布一系列坐标,并根据这些点的接近程度接收本地通知。 有没有类似的东西存在还是不存在? 谢谢 更新未来的用户 每个应用程序似乎有10个区域的限制,可以随时监控(我的个人testing),因为这是一个共享资源。 Apple文档摘录: 指定要监视的区域集合时,应始终保持审慎。 区域是一个共享的系统资源,全系统可用的区域总数是有限的。

创build自定义形状的图层蒙版

我花了太多的时间来解决这个问题,根本找不到一个可行的解决scheme。 情况: 1.手机上显示“东西”的图片。 2.将半透明(如蓝色)图层放置在图像的顶部,完全覆盖图像。 3.该层中的“孔”存在于该层的该部分完全透明且可移动的地方。 一个例子可能是一个缩放效果,在图像周围移动这个“洞”。 在洞内部,您可以正常看到图像,而在半透明层之外则可以看到图像。 注意:我在一个cocos2d图层中实现了这一点,图像由CCSprite表示。 如果没有使用椰子,这应该不重要。 问题:我尝试使用CAShapeLayer和位图作为掩码,但没有任何工作(请参阅下面的代码片段)。 随着CAShapeLayer,我创build了一个UIBezierPath的“洞”,并将其应用于彩色层。 但是,只有孔显示颜色,其余是透明的。 有了图像,面具根本不能工作(我不知道为什么)。 我甚至试图掩盖口罩,看看是否会工作。 我也尝试交换颜色…从白色到黑色清除填充和背景。 一个简单的解决scheme,如果存在的话,将颠倒UIBezierPath的区域。 我也尝试过裁剪,使用path…但没有运气。 我希望这简直是愚蠢的,我只是俯瞰。 也许你们中的一个会看到这个。 我还没有关心的移动部分。 我需要先让实际的面具工作 示例代码忽略了iPhone SDK和OpenGL之间的y轴差异。 CAShapeLayer例子: CGSize winSize = [[CCDirector sharedDirector] winSize]; UIImage* img = [UIImage imageNamed:@"zebra.png"]; CCSprite* spr = [CCSprite spriteWithCGImage:img.CGImage key:@"img"]; spr.position = ccp( winSize.width / 2, winSize.width / 2 ); [self addSprite:spr]; UIBezierPath* path […]

删除sqlite的WAL文件是否安全?

在iOS应用程序中,Core Data有一个奇怪的问题,WAL文件有时会变得很大 (〜1GB)。 看来还有其他人有这个问题(例如, 当插入〜5000行时,Core Data的sqlite-wal文件会获得MASSIVE(> 7GB) )。 我最初的想法是在应用程序启动时删除WAL文件。 从阅读关于此事的sqlite文档看来,这将是好的。 但是,有没有人知道这样做的缺点? 我当然想深入了解WAL文件为什么会变得如此之大,但是我现在还不能深究,并且想深入研究这个问题。 值得指出的是我的Core Data数据库更像是一个caching。 因此,如果我丢失了WAL中的数据,这并不重要。 我真正需要知道的是,如果我删除WAL,数据库是否会完全损坏? 我的怀疑是否定的,否则WAL不符合其目的之一。

通过ffmpegwrapper剪切MPEG-TS文件?

我在设备上有MPEG-TS文件。 我想在设备上的文件的开始削减一个相当​​准确的时间。 使用FFmpegWrapper作为基础,我希望实现这一点。 然而,我在ffmpeg的C API上有些遗憾。 我从哪说起呢? 我试图在我开始寻找PTS之前丢弃所有数据包,但这打破了videostream。 packet->pts = av_rescale_q(packet->pts, inputStream.stream->time_base, outputStream.stream->time_base); packet->dts = av_rescale_q(packet->dts, inputStream.stream->time_base, outputStream.stream->time_base); if(startPts == 0){ startPts = packet->pts; } if(packet->pts < cutTimeStartPts + startPts){ av_free_packet(packet); continue; } 如何在不破坏videostream的情况下切断部分input文件的开始? 当回放时,我想要2个切分段一起无缝运行。 ffmpeg -i time.ts -c:v libx264 -c:a copy -ss $CUT_POINT -map 0 -y after.ts ffmpeg -i time.ts -c:v libx264 -c:a copy -to […]

Objective-C中的“类别”是什么?

可能重复: Objective-C如何工作? 我刚开始使用Objective-C,并想知道我应该在何时何地使用目标C中的类别。它是一个类还是一个协议? 一个解释性的例子会有很大的帮助。 谢谢