bug汇总

作者: 守护地中海的花 | 来源:发表于2019-11-21 10:34 被阅读0次

Hide status bar

  • 如果旋转隐藏statasBar 那么在程序启动的开始 获取到的statubar高度是0
  • 如果首页布局有statusbar 则会有问题
 [[UIApplication sharedApplication] statusBarFrame].size.height

获取APPTabBarVC

  • 在程序刚刚启动的时候禁止使用获取APPTabBarVC可能还没有创建完毕


    取APPTabBar时机小记.png

网络不稳定 脚步刷新

网络不稳定-脚步刷新.png

现象:网络不稳定,当前界面状态是加载数据完毕处于MJRefreshStateNoMoreData 或者mj_footer被删除掉 则都默认会请求
修改

dispatch_async(dispatch_get_main_queue(), ^{
   //如果没有数据 加载第一页的数据 如果有数据加载下一页
   if (weakSelf.dataSource.count == 0)
   {
       [weakSelf loadNewData];
   }
   else
   {
       if (weakSelf.mainView.mj_footer.state != MJRefreshStateNoMoreData && weakSelf.mainView.mj_footer) {
           [weakSelf loadMoreData];
       }
   }
});

如果脚步removeFromSuperview 对象还在 还可以判断的
但是脚步置空 则不行了

验证码清空问题 textfield请求多次

验证码.png

头部刷新速度过快 导致占位图异常

  • 头部高度是不确定的 所以需要回调 回调好刷新refreshNOdatabitmapview 导致问题


    这是一个bug.png

KVO 观察者 与分享的bug

获取界面有音乐播放器 创建音乐播放器的时候加入观察者模式 如果刷新会次添加观察者 ,退出到后台 回来 多次执行 正好 KVO 我这边移除对播放器status的监听 多次重复就崩溃了

#pragma mark - 创建音乐播放
- (void)createMusicPlayer
{
   xxxxxxxxxxxx
   xxxxxxxxxxxxxx
    xxxxxx等创建音乐播放器代码 
    //KVO+监听
    NSKeyValueObservingOptions options = NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld;
    [item addObserver:self forKeyPath:@"status" options:options context:nil];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(appwillResignActive:) name:UIApplicationWillResignActiveNotification object:nil];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(appBecomeActive:) name:UIApplicationDidBecomeActiveNotification object:nil];
    [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(existVideo:) name:@"existVideo" object:nil];
}
- (void)appwillResignActive:(NSNotification *)note
{
   if (_player)
   {
       [[_player currentItem]removeObserver:self forKeyPath:@"status"];
   }
}

ActivityPageDetailManagerVC.m--434--->:appwillResignActive
ActivityPageDetailManagerVC.m--434--->:appwillResignActive
ActivityPageDetailManagerVC.m--434--->:appwillResignActive

解决方案

  • 方法1:判断是否存在音乐播放器 如果存在createMusicPlayer 不需要进行下去了
if (_player) {
        return;
    }
  • 方法2: 讲addObserver操作只做一次
  • 方法3:@try
- (void)appwillResignActive:(NSNotification *)note
{
    NSLog(@"appwillResignActive");
    if (_player)
    {
        @try {
            [[_player currentItem]removeObserver:self forKeyPath:@"status"];
        } @catch (NSException *exception) {
            NSLog(@"%@",exception);
        } @finally {
            
        }
    }
}

我建议以后多些@try 在移除观察者的时候 数组取值的时候 防止越界

关于继承重写问题 倒是YY解析问题

又是一个惊天的bug+失误点.png

刷新导致dealloc不走

dealloc不走.png

改成weakSelf 就OK了

悬停滑动bug+标签控制器数组越界

如果主控制器需要网络请求才可以布局 那么必须在添加managerVC在cell上 判断是否有值


崩溃闪退-滑动问题.png

这个时候cell高度重新来一遍 因为懒加载中 不行了 早已经执行了 rowHeihgt 肯定是0 因为网络加载之后才可以执行createProperty设置初始值 而mainView提前加载 rowHeight 就是0了


WX20200612-095026@2x.png
  • cell操作点赞有bug


    bug-cell&&controller&&net.png

没有解析取值崩溃

-[__NSDictionaryI url]: unrecognized selector sent to instance 0x281be9c80


image.png image.png

不知不觉的崩溃

启动失败.png

在婚前婚后项目遇到 之前从来没有遇到过 然后我感觉是mob代码搞的 因为mobdemo运行也会出错。
查一下


image.png image.png

相关文章

  • bug汇总

    1111

  • bug汇总

    Hide status bar 如果旋转隐藏statasBar 那么在程序启动的开始 获取到的statubar高度...

  • BUG汇总

    echarts:div 默认 display:none,改为 display:block 时,echarts 无法...

  • Bug汇总

    autoResize 1 .只支持横线的felx布局,纵向的不行.2 .需要加个这个操作.container-in...

  • ios 10.3

    Xcode8 及iOS10适配问题汇总 上点干货,目前得知的一些bug解决汇总: iOS10相册相机闪退bug h...

  • Eat-Vue:日常记录1

    日常记录Vue中遇见的Bug和一些用法汇总:BUG:1、[Vue warn]: You are using the...

  • BUG汇总记录

    1、Could not successfully update network info during initi...

  • BUG汇总 1

    1.Unsupported Modules Detected: Compilation is not suppor...

  • 前端bug汇总

    div整体ahove不变色原因 设置div的背景色不变色是因为设置高度太小导致.应该去除height属性设置.

  • flutter bug汇总

    1:卡启动页的另外一个情况就是版本运行出错,用xcode运行真机会报错,卡启动页 具体情况如下 解决办法是http...

网友评论

      本文标题:bug汇总

      本文链接:https://www.haomeiwen.com/subject/gjmzictx.html