Tag: 更新

在iPad上更新应用程序崩溃

这很有趣。 我有一个通用的应用程序。 iPhone和iPad版本都共享相同的类,只是有不同的xib文件。 我经常收到更新iPad版本的报告,它不会运行,只是崩溃。 不过,iPhone版本的更新工作得很好。 删除iPad应用程序,重新启动和重新安装将解决启动时的崩溃问题。 更新与受影响的代码: 好吧,所以在resymbolicating和查看受影响的代码行后,这里是我觉得所有的领域造成的问题。 我希望应用程序第一次提出问题,并且只在第一次运行应用程序时,所以在AppDelegate didFinishLaunchingWithOptions中我有: NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; if (! [defaults boolForKey:@"notFirstRun"]) { UIAlertView *firstrun = [[UIAlertView alloc] initWithTitle:@"Sermon Preference" message:@"Do you prefer audio only, or video sermons? (This setting can be changed at any time in the Settings Page.)" delegate:self cancelButtonTitle:nil otherButtonTitles:@"Audio", @"Video", nil]; [firstrun show]; [firstrun […]

iOS开发者企业计划成员资格在到期前更新

我收到苹果公司的电子邮件更新企业会员计划,以下是我的问题。 到期前更新程序是否对分发证书有影响? 如果在到期之前续订程序,是否继续运行分发证书申请,没有任何问题? 是否需要再次分发企业应用程序,在到期之前更新? 预先感谢您的回答!

更新MapKit注释字幕和图像

我在网上search了一下,发现了一些关于如何做我想做的事情的想法,但是我仍然想知道你应该怎么做。 这里是上下文: 我正在为iOS 5开发一个应用程序。我使用MapKit来显示地图,并且为它添加​​了大约5000个注释 – 好像很多,但是不用担心,我使用了一个聚类库:)。 为了在用户每次打开地图时不加载它们,我在我的appDelegate中创build它们(我创build了一个批注数组,并调用[_mapView addAnnotations:[appDelegate.annotationsToAdd allObjects]];当我打开地图时)。 创buildannotationsToAdd数组大约需要10秒左右的时间,所以我认为这个解决scheme工作的非常好(你必须等待10秒才能被授权打开地图,但是你只需等待一次,在应用程序启动的时候)。 在每个注释中,我都有一个“链接”到一个对象,其中包含一个值的数组(15浮点数)。 现在,当我创build注释时, subtitle方法返回其中的一个值。 在我的地图的ViewController中,我有2个分段控件。 第一个有3个段,第二个有5个,它给出了15个组合 – 又一次,这是我的注释中对象的数组具有相同数量的值:)。 所以你可能已经看到我的问题来了,我想更新我的地图上的每个注释的字幕(即使群集中的每个注释的字幕,因为群集基于它所持有的引脚给出平均值)。 我也想要的是更新annotationView的颜色/图像基于注释的副标题的值。 我可能是错的,但基于我的研究,我明白,你必须删除所有的注释,并重新创build所有这些。 你明白这不是我的select。 每次他改变其中一个控件的值时,我都不能让用户等待10秒钟。 我看到一篇关于KVO的文章:这可能是一个有效的解决scheme吗? 我不太了解NSNotification,但是我应该使用它们吗? 我真的很感谢你的帮助,我更希望得到一个详细的答案,告诉我在我显然不常见的情况下要遵循的步骤。 提前致谢。

更新/将内容插入iPhone应用程序更新中的现有Sqlite数据库

我已经经历了类似的性质的其他问题,但他们都与更新应用程序更新之前的SQLite数据库有关。 我一直在为以前的所有应用程序做这件事,因为它们本质上是指代性的,而且一个简单的replace就足够了。 我正在使用的这个特定的应用程序是一个测验游戏,分数需要保持。 目前共有四个级别,共有十五个问题,稍后更新可能会增加。 由于我从来没有这样做过,所以我很好奇,打算第一次以正确的方式做到这一点。 所以这里是我的查询: 更新SO的大师推荐的内容的首选方法是什么? 是否有一个版本号(可能在数据库本身),并在第一次运行的新应用程序,新的内容插入表中? 什么是存储插入查询的首选方法? 他们应该在一个实现文件中硬编码吗? PS。 我将数据库复制到Documents目录,所以它保持应用程序更新。 编辑:我应该补充说,测验应用程序是一种“标识测验”复制品,其中所有问题的得分(或将回答/未答复的问题的状态)需要保持。 所以在第一个版本中有60个问题,并且随着用户回答他们的状态被改变。 编辑2:这是我最关心的表结构,问题表: _id(Integer,PRIMARY键),levelId(Integer),QuestionImage(Varchar),CorrectAnswer(Varchar),boolAnsweredCorrectly(Integer)。 测验就像Logos Quiz。 有一个图像,用户必须键入答案。 如果input的答案与DB中的correctanswer匹配,则boolAnsweredCorrectly设置为true。 我主要关心的是boolAnsweredCorrectly(根据结果可能是0或1)。 编辑3:当我说插入数据更新的应用程序,我的意思是这个。 假设第一个版本有60个问题。 在第二个版本中增加了40个新的问题。 所以,当用户将应用程序更新到第二个版本时,需要将新的40个问题插入到问题表中。 这是为了使以前的60个问题不会混淆并保持不变。

我是否应该避免更改我的iOS应用程序的新版本的CFBundleName?

我有一个已经发布的iOS应用程序,在其Info.plist中有一个特定的CFBundleName 。 对于更新,我更改了CFBundleName (因此,生成的.app产品的名称),出于一致性的原因。 这对于只看到CFBundleDisplayName的用户是不可见的。 但是,似乎客户端设备上的更新无法正常工作 – 更新进度条到达最后,跳回到开始处并停止。 唯一的解决办法是删除并重新安装应用程序。 所以: 是禁止更改已经存在的应用程序的CFBundleName ? 这是否是打破我的更新? 如果是这样,为什么不通过苹果的validation过程检查?

使用UIAppearance更新后更新导航栏

我目前正在使用UIAppearance代理自定义iOS应用的导航栏背景图片。 有一个button可以在两种不同的模式之间切换,从而触发通知。 此通知将使用代理再次将背景更改为不同的图像。 我的问题是,只有当我去一个不同的控制器,我才能回到这个变化。 我无法强制更新控制器内的导航栏。 我已经在我的MainTabBarController中尝试了这个: – (void) onAppChangedMode: (NSNotification*)notif { APP_MODE mode = (APP_MODE) [[notif object] integerValue]; // change navigation bar appearance [[UILabel appearance] setHighlightedTextColor:[UIColor redColor]]; [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:(mode == 0 ? @"navbar.png" : @"navbar2.png")] forBarMetrics:UIBarMetricsDefault]; // trying to update for (UIViewController* vc in self.viewControllers) { [vc.navigationController.navigationBar setNeedsDisplay]; } } 但没有什么…它不工作。 任何想法如何实现它? 谢谢!

在xCode 8.0更新之后,架构arm64的重复符号

更新我的xCode后,我得到重复的符号错误。 (find代码)有人也得到这个吗? 怎么能解决? 我试图从“其他链接器标志”部分删除-ObjC链接器标志,导入.m而不是.h后,检查“无共同块”编译器设置为否,我去了Targets -> Build Phases -> Compile来源和没有重复,尝试所有没有结果。 任何其他的想法? 重复的符号_space在:/Users/a/Library/Developer/Xcode/DerivedData/SMAP-bshetjpaaresiudzvoubtutnfvuq/Build/Intermediates/SMAP.build/Debug-iphoneos/SMAP.build/Objects-normal/arm64/SearchView.o/ Users / a / Library / Developer / Xcode / DerivedData / SMAP-bshetjpaaresiudzvoubtutnfvuq / Build / Intermediates / SMAP.build / Debug-iphoneos / SMAP.build / Objects-normal / arm64 / FollowingUserViewController.o重复的符号_space位于:/ Users / a / Library /Developer/Xcode/DerivedData/SMAP-bshetjpaaresiudzvoubtutnfvuq/Build/Intermediates/SMAP.build/Debug-iphoneos/SMAP.build/Objects-normal/arm64/SearchView.o/ Users / a / Library / Developer / Xcode […]

应用程序提交:无效的二进制文件 – 无效的签名

我正在尝试向iOSapp store提交更新。 我正在从Buzztouch应用程序转到Sprite Kit应用程序。 我能够存档Xcode项目并提交。 该应用程序获取上传状态,但大约一分钟后,它变为无效的二进制文件,我收到一封电子邮件说: 无效的签名 – 确保您使用分发证书签署了您的应用程序,而不是临时证书或开发证书。 validationXcode中的代码签名设置在目标级别是否正确(它覆盖项目级别的任何值)。 此外,请确保您正在上传的软件包是使用Xcode中的发布目标构build的,而不是Simulator目标。 如果您确定您的代码签名设置是正确的,请在Xcode中select“全部清除”,删除Finder中的“build”目录,然后重新构build您的发布目标。 一旦这些问题得到纠正,请转至“版本详细信息”页面,然后单击“准备好上传二进制文件”。 继续完成提交过程,直到应用状态为“等待上传”。 然后您可以交付更正的二进制文件。 我清理了构build目录,重build了我的发布目标,并多次创build了新的configurationconfiguration文件。 所有的代码签名身份都设置为iOS开发者。 代码签名和configuration文件对我来说总是有点混乱,我可能会犯一些明显的错误。 我已经尝试提交超过50次! 我发现这非常令人沮丧,因为我已经给苹果发邮件了,他们回到我身边,但这只是一个链接到开发中心的代码签名信息。 我也花费了大量的时间在互联网上寻找解决办法,而且还没有一个很好的解决scheme来解决这个问题。 我唯一能想到的是因为我从Buzztouch应用程序更改,或者它是Sprite Kit。 以下是我的代码签名的截图:

增加AWS DynamoDB中的Number属性Objective C

我正在努力增加已经保存在我的DynamoDB表中的项目的数字属性值我的代码目前是: AWSDynamoDBUpdateItemInput *updateItemInput = [AWSDynamoDBUpdateItemInput new]; updateItemInput.tableName = @"Table"; updateItemInput.key= @{ @"KeyPropertyName":@"KeyValue" }; updateItemInput.updateExpression = @"SET(counter = counter + :val)"; updateItemInput.expressionAttributeValues =@{ @":val":@1 }; AWSDynamoDB *dynamoDB = [AWSDynamoDB defaultDynamoDB]; [[dynamoDB updateItem:updateItemInput] continueWithBlock:^id(AWSTask *task) { if (task.error) { NSLog(@"The request failed. Error: [%@]", task.error); } if (task.exception) { NSLog(@"The request failed. Exception: [%@]", task.exception); } if […]

如何通过无线方式更新ios6企业应用程序

你好,我们最近开发了第一个企业应用程序。 我们正在使用“内部”选项来创build分发证书。 客户端尚未使用该应用程序。 但他很快就会使用它。 同时我有一个问题。 他会使用这个应用程序,如果将来有更新的应用程序,我们希望客户端也更新。 就像现在我有我的iPhone上安装的应用程序。 我从AppStore获得更新说XYZ应用程序已被更新。 所以我安装更新。 现在,如果我们的客户端正在使用应用程序并保存了一些数据(我们的应用程序使用核心数据,而且我们以一种客户端可以在设备上存储一些数据的方式构build它),我们想要发送一个更新给他,更新,但不能删除任何现有的客户端数据。这是可能的吗? 我该怎么做?我现在正在使用无线安装来安装应用程序。 我们有一个安全的服务器,里面有.ipa和.plist文件,我们有一个下载html页面。 客户端点击链接并安装应用程序。 请让我知道,如果你需要更多的信息。 谢谢。