gpt4 book ai didi

iPhone应用程序分发构建包含一个错误

转载 作者:行者123 更新时间:2023-12-03 19:12:56 27 4
gpt4 key购买 nike

解决方案:经过很多人的帮助才解决了这个问题。我现在写下这篇文章,希望有类似问题的人能够从中受益。为了让我重现这个错误,我必须在我的设备上运行发行版本。这是根据 MrMage 的建议完成的,他告诉我将证书更改为开发人员,而不是发行版。这使我能够重新创建错误并进行调试。问题原来是编译器忽略了所有设置 CGSize 值的调用。我可以通过将目标首选项中的“优化级别”设置为“无”而不是“最快、最小”来防止这种情况。

<小时/>

你好,

我的申请有一个非常奇特的地方。几天前,我的应用程序被批准进入应用程序商店,但令我恐惧的是,我很快发现它存在一个重大错误。我去了我的电脑,但是当运行代码(在模拟器和设备上)时,一切都运行得很好。我已经尝试了一切:重新编译并提交更新、清理所有目标、重新安装 SDK 等。

这是问题的更详细描述。我的应用程序中有一个详细 TableView ,它从在线源加载一些数据。它在下载时显示加载 View ,然后在设置数据源后重新加载表格 View 。表格的单元格包含 UITextView,它会更改大小以适合文本。当我在计算机上运行该应用程序,或在设备上调试时,文本被下载并完美显示,但当我从App Store下载并启动它时,它只会第一次显示文本,然后留空休息。我知道数据被下载,因为 texview 会调整自身大小以适应文本,但它们只是不显示它。

有谁知道可能导致此错误的原因是什么?我如何知道我的发行版本是否包含错误,而该错误在调试版本中没有显示?

你的,本。

PS:我比较了调试和分发版本的目标设置。我看到的唯一区别是“代码生成”下的“优化级别”。我尝试为调试版本更改此设置,但它没有揭示问题。

<小时/>

编辑:我按照 MrMage 的建议解决了这个问题。事实证明,这段代码确实是错误的原因。在调试器中运行时,“s”的宽度和高度属性始终为零,无论如何我都无法更改它。我正在调查为什么会发生这种情况。

- (void) setText:(NSString *)string 
{

CGSize s = [string sizeWithFont:textView.font constrainedToSize:CGSizeMake(290, FLT_MAX)];
s.height += kStaticSize;

//SizeWithFont is very unreliable so have to do some dirty tweaking
if (s.height > 100 && s.height <= 250)
s.height += 20;
else if (s.height > 250 && s.height <= 500)
s.height += 40;
else if (s.height > 500 && s.height <= 800 )
s.height += 50;
else if (s.height > 800 && s.height <= 1200)
s.height += 60;
else if (s.height > 1200 && s.height <= 1700)
s.height += 100;
else if (s.height > 1700)
s.height += 200;

s.width = 290;
CGRect r = textView.frame;
r.size = s;
[textView setFrame:r];

[self.textView setText: string];
[self.textView setNeedsDisplay];

}

最佳答案

您是否尝试仅采用发行版构建配置并将其代码签名选项更改为 iPhone 开发人员,然后在您的设备上测试该构建?

据我所知,您现在还可以上传使用开发者证书签名的二进制文件。因此,您可以获取一个可用的开发人员版本并将其提交给 Apple。

关于iPhone应用程序分发构建包含一个错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2211486/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com