iOS技术分享

iOS开发-问题总结

2019-07-29  本文已影响2人  it_hao528
20190729.jpg

前言:工作中可能会遇到各种各样的问题,有时解决完了再次遇到时,如果没有做笔记且相隔时间较长时,会容易忘记。故在此记录工作中遇到的一些比较不常见的问题,将持续更新...

1、Xcode运行报错: App installation failed This application’s application-identifier entitlement does not match that of the installed application. These values must match for an upgrade to be allowed. 如下图:

AppInstallationFailed.jpeg

原因分析
application-identifier冲突。(我出现该问题情况是由于APP转让之后使用新开发者账号真机测试,真机上还装有原账号安装的包)

解决方法
将手机上的相应软件删除卸载就OK了。

2、Xcode打包上传iTunes完成后报警告:
WARNING ITMS-90076: "Potential Loss of Keychain Access. The previous version of software has an application-identifier value of ['BAGPUY4P4E.com.zxww.folk'] and the new version of software being submitted has an application-identifier of ['SH2X52JLPW.com.zxww.folk']. This will result in a loss of keychain access."

原因分析
该APP是从一个开发者账号转让到新的开发者账号,使用新开发者账号上传时报的警告。该警告意思是会影响到keychain里存的信息。

解决方法
如果keychain里边的信息无所谓的话,该警告可以无视,不影响上传及审核,下次上传不会再提示。
如果keychain里边的信息有用的话,解决办法是:百度一下。

3、UIButtonUIControlEventTouchDown点击延迟原因及解决
(1)button添加到UIScrollView
解决:设置UIScrollViewdelaysContentTouchescanCancelContentTouchesNo
(2)与导航栏右滑返回手势冲突
解决:设置
self.navigationController.interactivePopGestureRecognizer.delaysTouchesBegan = NO;
(3)项目中含有UIButton的分类中实现了防止重复点击的相关内容
解决:在需要用到UIControlEventTouchDown的类中重写防止重复点击的相关方法,去除防止重复点击相关代码
(4)与window手势冲突
解决:在button所在UIViewController中重写viewDidAppear如下

- (void)viewDidAppear:(BOOL)animated {
    
    [super viewDidAppear:animated];
    for (UIGestureRecognizer * gesture in self.view.window.gestureRecognizers) {
        
        gesture.delaysTouchesBegan = NO;
    }
}

4、UIView- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event不响应
原因分析
UIView的父视图添加的有UITapGestureRecognizer手势
解决方法
父视图中的UITapGestureRecognizer手势设置代理并实现如下代理方法

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
    
    if ([touch.view isKindOfClass:[CustomView class]]) {
        
        return NO;
    }
    return YES;
}

CustomView为自定制的需要获取- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event事件的view。

上一篇 下一篇

猜你喜欢

热点阅读