Cocoa 构建代码所需的建议
背景 我正在编写应用程序中没有UI的部分。它坐在后台看你做什么和你的工作时间 时间数据中不应有重叠时间,也不应有中断。如果存在上述任何一种情况,那么应用程序的某个地方就有一个bug,需要通知我 我想要什么 一个名为JGDataIntegrityController的类,它执行以下操作:Cocoa 构建代码所需的建议,cocoa,delegates,notifications,nsurlconnection,Cocoa,Delegates,Notifications,Nsurlconnection,背景 我正在编写应用程序中没有UI的部分。它坐在后台看你做什么和你的工作时间 时间数据中不应有重叠时间,也不应有中断。如果存在上述任何一种情况,那么应用程序的某个地方就有一个bug,需要通知我 我想要什么 一个名为JGDataIntegrityController的类,它执行以下操作: 检查数据存储是否存在重复时间。自存储在NSUserDefaults中的上次重复报告日期起扫描 如果发现重复的时间,则生成报告 发送报告 如果发送不成功,则退出。否则继续 删除重复项 在NSUserDefaults
-(void)postReport:(NSString *)report {
NSMutableDictionary *form = // Dictionary Holding Report;
NSURLRequest *request = [NSURLRequest requestWithURL:@"http://postURL" postForm:form];
[NSURLConnection connectionWithRequest:request delegate:self];
}
我被困在哪里
报告发送后,我该怎么办
委托方法包括:
-(无效)连接IDFinishLoading:(NSURLConnection*)连接
-(void)连接:(NSURLConnection*)连接失败错误:(NSError*)错误
在发送报告时调用。但是我应该如何与JGDataIntegrityController通信呢
我的烂主意
我的想法是在JGReportSender中有一个reportStatus
NSNumber属性。然后,当委托方法被调用时,它会被更新
reportStatus=1表示“已发送报告正常”
reportStatus=2表示“发送报告时出现问题”
然后我可以为JGDataDuplicateReportSender和JGDataBreakReportSender添加一个reportStatus观察员。然后,这将处理报告发送错误或继续
有什么好主意吗?
我觉得这是一种非常混乱的方式。我也觉得我忽略了一些非常明显的事情
有没有什么好办法可以干净利落地做到这一点
更新
我完全忘了提及-这将是一个100%的选择加入功能。默认情况下,它将被禁用。它还将有3个级别的隐私-从“发生数据中断”到“此应用程序使用此文档路径激活后发生数据中断”。这些报告也将是匿名的
我意识到所有的隐私问题——这是为了让我的软件更好,而不是为了我可以监视别人 至少使用两种方法为报表发送者指定一个
委托
属性和协议:ReportSenderdSucceed:
和reportSender:failedWithError:
。报表发送方将通过其连接:didFailWithError:
方法发送后一条消息,并传递它得到的错误对象
我真的希望你可以选择这个功能。如果不这样做,用户可能会发出大量愤怒/好奇的电子邮件(更不用说在网页上发出“不要使用此应用程序,因为它会打电话回家”的公开警告了)。给报告发送者一个
委托
属性和协议,至少有两种方法:reportSenderDidSucceed:
和reportSender:failedWithError:
。报表发送方将通过其连接:didFailWithError:
方法发送后一条消息,并传递它得到的错误对象
我真的希望你可以选择这个功能。如果你不这样做,用户可能会发很多愤怒/好奇的电子邮件(更不用说网页上的“不要使用此应用程序,因为它会打电话回家”的公开警告)。如果有人想像Peter建议的那样获得一个关于实现自己的代理的好教程,我发现了一个:
看看吧。太棒了 如果有人像Peter建议的那样想要一个关于实现自己的代理的好教程,我发现了这个:
看看吧。太棒了 回答得好,彼得。我完全忘了在我的帖子中提到——这将是一个完全选择加入的反馈过程。默认情况下,它将处于关闭状态。此外,我将有一个选择的3个隐私设置的例子将发送给我。也都是匿名的。我会更新我的问题。谢谢你的回答。回答得好,彼得。我完全忘了在我的帖子中提到——这将是一个完全选择加入的反馈过程。默认情况下,它将处于关闭状态。此外,我将有一个选择的3个隐私设置的例子将发送给我。也都是匿名的。我会更新我的问题。谢谢你的catch.Off主题,但不知道该怎么问:你用了什么软件来制作UML图?看起来很圆滑。离题,但不确定如何提问:您使用了什么软件来制作UML图?看起来很圆滑。