同样的情况,第二次被拒绝,因为使用了MBProgressHUD :(
拒绝原因:活动指示器旋转不准,用户无法访问内容
同样的情况,第二次因为使用MBProgressHUD而被拒绝。
谁能告诉我已上传到appstore应用程序会有什么不同? 我做了各种各样的testing,这样的问题没有出现在本地。
—————————–在我的控制器里—————————– —————–
- (void)downloadList { if (isLoading) { return; } isLoading = YES; //do something...... //show the progressbar based on MBProgressHUD [[MyDelegate getAppDelegate] showProgressBarForTarget:self whileExecuting:@selector(showProgressBarForLoading)]; } } - (void)showProgressBarForLoading { while (isLoading) { //i++; continue; } } - (void)downloadListDidReceive:(XGooConnection*)sender obj:(NSObject*)obj { //do something...... isLoading = NO; }
—————————–在我的AppDelegate中—————— ————-
- (void)showProgressBarForTarget:(id)target whileExecuting:(SEL)theSelector { UIViewController *controller = [splitViewController.viewControllers objectAtIndex:0]; HUD = [[MBProgressHUD alloc] initWithView:controller.view]; [controller.view addSubview:HUD]; HUD.delegate = self; // Show the HUD while the provided method executes in a new thread [HUD showWhileExecuting:theSelector onTarget:target withObject:nil animated:YES]; }
—————————–拒绝原因细节—————– ——————–
您的应用程序的最新版本已被拒绝……..
拒绝理由:
重现的步骤是:
- 启动应用程序
- select左上angular的菜单button
- select一个菜单项
- 活动指标旋转不定,用户无法访问内容
首先,这种拒绝的原因可能是MBProgressHUD的使用不当,而不是MBprogressHUD本身。
如果这仅在app storetesting期间发生,请尝试在发布configuration中运行应用程序。 那里也可能有networking条件,你没有预料到。 也许这只发生在有networking错误(飞行模式?)时。 当networking错误发生时,您是否设置isLoading = NO?
FWIW,显示/隐藏asynchronous请求的HUD有更好的方法。 像这样在一个while循环中汇集一个标志是非常低效的。 查看MBProgressHUD演示应用程序中的NSURLConnection示例。