0

我已经在客户端和服务器上设置了 quincy。在我使用的客户端上:

[[BWQuincyManager sharedQuincyManager] setSubmissionURL:@"http://example.com/server/crash_v300.php"];
[[BWQuincyManager sharedQuincyManager] startManager];

在客户端上,我使用“test.php”(回显全部通过)和 crash_v300(回显“-3”来验证它是否正常工作。

但是,当应用程序崩溃并且有提示提示我是否要发送崩溃报告时,我会说“是”。它不会将崩溃报告保存在我的数据库中。有任何想法吗?

4

1 回答 1

0

有同样的问题。第一个问题是出于安全原因,某些 PHP 操作被提供商阻止。不得不联系他解除这种保护。

第二个问题是 common.inc 文件中的 mysql 查询不正确。

我必须为 $crashPatten 变量做一个 mysql_real_escape_string() 来修复它:

// create a new pattern for this bug and set amount of occurrances to 1
$query = "INSERT INTO ".$dbgrouptable." (bundleidentifier, affected, pattern, location, exception, reason, amount, latesttimestamp) 
                                 values ('".$bundleidentifier."', '".$version."', '".mysql_real_escape_string($crashPattern)."', '".mysql_real_escape_string($crashLocation)."', '".mysql_real_escape_string($crashException)."', '".mysql_real_escape_string($crashReason)."', 1, ".time().")";

要尝试找出您的问题,您应该实现 BWQuincyManger 的委托功能:

(void)quincyManager:(BWQuincyManager *)quincyManager 
   didFailWithError:(NSError *)error;

如果返回的错误码等于 510 则可能是您服务器的安全限制。如果没有返回错误,则可能是 common.inc 文件中的错误。

我希望这对你有帮助。

于 2014-04-15T16:32:31.350 回答