任何人都可以告诉我这次崩溃的原因.
特别是我担心这个 -
**Application Specific Information:
iMixtapes[1185] has active assertions beyond permitted time:
{(
<SBProcessAssertion: 0x66bc490> identifier: UIKitBackgroundCompletionTask process: iMixtapes[1185] permittedBackgroundDuration: 600.000000 reason: finishTask owner pid:1185 preventSuspend preventIdleSleep ,
<SBProcessAssertion: 0x66ade50> identifier: UIKitBackgroundCompletionTask process: iMixtapes[1185] permittedBackgroundDuration: 600.000000 reason: finishTask owner pid:1185 preventSuspend preventIdleSleep
)}
Elapsed total CPU time (seconds): 106.580 (user 62.160, system 44.420), -3% CPU
Elapsed application CPU time (seconds): 1.700, 0% CPU**
Run Code Online (Sandbox Code Playgroud)
这是崩溃日志:
Incident Identifier: C5DFDDE4-2AE0-461A-937A-C422353102CE
CrashReporter Key: 3a88f20a9e18f468445bddc212b7aa673c6dc89b
Hardware Model: iPod4,1
Process: iMixtapes [1185]
Path: /var/mobile/Applications/104BD0F8-BC33-43A9-AB9F-FC609750C4B6/iMixtapes.app/iMixtapes
Identifier: …Run Code Online (Sandbox Code Playgroud) 我在不同的类中使用App Delegate对象.我希望在整个项目中访问它.我在Prefix.pch文件中定义此对象为
#define Appdelegate (AppDelegate *)[[UIApplication sharedApplication] delegate]
Run Code Online (Sandbox Code Playgroud)
但问题是Appdelegate变量不能访问App委托变量.它显示错误.
但如果使用此代码工作正常
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
appDelegate.variablename;
Run Code Online (Sandbox Code Playgroud)
我这样做是对还是有办法做我做的事情?
提前致谢.
在我正在编写的应用程序中,我有一些代码如下:
NSWorkspace* ws = [NSWorkspace sharedWorkspace];
NSString* myurl = @"http://www.somewebsite.com/method?a=%d";
NSURL* url = [NSURL URLWithString:myurl];
[ws openURL:url];
Run Code Online (Sandbox Code Playgroud)
主要区别在于myurl来自我无法控制的某个地方.注意URL中的%d不完全正确,意味着URLWithString失败,返回nil.
处理这个问题的"正确"方法是什么?我是否需要解析字符串并正确编码参数?或者在Cocoa中有一些聪明的方法可以为我做所有艰苦的工作吗?
我在iPhone应用程序中遇到的一些最难追查的问题只是暴露在越狱手机上.有没有办法检测这些手机只看崩溃日志?
这有点像这个问题,但事件发生后而不是......
我的应用程序中有一些代码如下所示:
char *hash = (char*) sqlite3_column_text(get_bookmark, 0);
NSString* postHash = [NSString stringWithUTF8String:hash];
Run Code Online (Sandbox Code Playgroud)
这对我来说每次都适用; 我从来没有见过它不能正常工作.我的大多数用户都没有遇到问题(据我所知).但是我发现某些用户在某些时候postHash是一个空字符串(@"").
有谁能解释为什么?
更多背景/推测:
这似乎只发生在越狱手机上.他们有什么不同吗?我认为通常可用的内存较少.还有什么可以贡献的吗?
postHash用于表格单元格,偶尔看到正确填充,所以我有理由相信数据库调用应该工作.事实上,如果数据库也有一个空字符串,那是因为代码非常相似,所以问题仍然存在.
hash肯定是以非NULL值返回.如果我在这里强制NULL,应用程序崩溃.同样地,postHash不会nil因为崩溃应用程序而崩溃(出于同样的原因).
我在想这可能与记忆有关.如果该方法在-didReceiveMemoryWarning调用之前尝试分配太多内存会发生什么?我知道,在某些时候,Springboard会弹出应用程序.但是Cocoa有可能在这里返回一个空字符串而不是预期的值吗?我听说过一些报告,据我所知,只能由一个空字符串出现,而这个字符串应该存在更长的时间.
欢迎任何其他猜测,理论或想法.
简而言之,[NSURL URLWithString:]似乎提出了一个例外。根据文档“如果字符串格式错误,则返回nil。” 没有提到在任何情况下都引发例外情况。除此之外,nil在将字符串转换为URL之前,我都对URL进行了编码和检查。
在转换URL之前,任何人都可以提供有关它可能是哪个异常或我应该做的其他错误检查的任何建议吗?
如果您对详细信息感兴趣,则调用代码如下所示:
NSString* tmpText = [newUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
if (tmpText == nil) {
// error handling
}
else {
NSURL* tmpURL = [NSURL URLWithString:tmpText];
Run Code Online (Sandbox Code Playgroud)
这是从iTunes Connect下载的崩溃报告中的一部分:
8 libobjc.A.dylib 0x300c1f84 objc_exception_throw
9 CoreFoundation 0x3029a598 +[NSException raise:format:arguments:]
10 CoreFoundation 0x3029a538 +[NSException raise:format:]
11 Foundation 0x30696dde -[NSURL initWithString:relativeToURL:]
12 Foundation 0x30696cd8 +[NSURL URLWithString:relativeToURL:]
13 Foundation 0x30696cae +[NSURL URLWithString:]
14 Yummy 0x000146ca -[DeliciousPostCell setUrl:] + 46
Run Code Online (Sandbox Code Playgroud)
该URL似乎是某种“错误”格式,但实际上应该返回一个nil异常。
我从未见过自己引发异常,因此无法使用XCode捕获代码并查看正在发生的情况。并且遇到问题的用户从未直接与我联系,因此我无法要求更多详细信息。任何建议,不胜感激。
更新(14/7/2009):看起来像这样的hack,但是我在可疑行周围添加了一个异常块。我还提出了Radar错误报告(#7031551),建议代码应与文档匹配。
我是iphone开发的新手.我从任何地方获取代码,但我无法理解这个符号(=)的用途,如下图所示.
这让我在一天中的大部分时间都疯了.
我有一个UITmageView的UITableView.这些图像视图在tableview的cellForRow函数中加载了一个本地保存的PNG文件,这种工作正常,但是当一个带有图像的单元格滚动到视线中时,tableview将停止滚动几分之一秒.我已经搜索了StackOverflow并谷歌寻求答案,但我已经做得很短 - 所以任何帮助都将非常感激.
这是我的CellForRow函数代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MyIdentifier"];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"MyIdentifier"] autorelease];
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
}
if([currSection isEqualToString:@"composer"]){
MySlide *s = [slidesArray objectAtIndex:indexPath.row];
cell.textLabel.hidden = YES;
UIImageView *whiteView = [[UIImageView alloc] initWithFrame:CGRectMake((projectsTable.frame.size.width/2)-150, 4, 204.8, 153.6)];
if([s.slideImage isEqualToString:@""] || s.slideImage == nil){
//no custom image in this cell - go with default background image
whiteView.image = [UIImage imageNamed:@"cellback2.png"];
whiteView.backgroundColor = [UIColor whiteColor];
}else{
cell.layer.shouldRasterize …Run Code Online (Sandbox Code Playgroud) 我正在使用新的文档提供程序功能来尝试将文件导出到第三方云服务:
UIDocumentMenuViewController* activity = [[UIDocumentMenuViewController alloc] initWithURL:writer.file
inMode:UIDocumentPickerModeExportToService];
Run Code Online (Sandbox Code Playgroud)
当我运行这个时,我会看到iCloud,Google Drive和Dropbox作为一个选项(它们似乎可以工作).即使我安装了应用程序,我看不到的是Box.
更重要的是奇怪的是,当我使用UIDocumentPickerModeOpen,箱体没有出现,随着iCloud的一起,但Dropbox和谷歌Drive都不见了.但是,我不能从任何一个提供商打开文件; 它不会让我选择我的自定义文档类型.在我刚刚导出CSV文件的另一个应用程序似乎没有问题到所有提供商.
该文件使用自定义文件类型,我猜这是问题的一部分.此处还有其他问题,我相信我已按照说明正确操作.

添加自定义文件类型时是否错过了一个步骤?创建文档菜单时还有其他选项吗?文档提供程序中是否存在错误?(我注意到它适用于iCloud Drive的所有情况.)
我怎样才能找到UITextFieldSwift 的位置?
我想知道我UITextField和底部位置之间的距离.
谢谢!
iphone ×7
objective-c ×4
ios ×3
cocoa ×2
uitableview ×2
jailbreak ×1
macos ×1
performance ×1
swift ×1
uiimageview ×1
uiview ×1