扒虫篇-Bug日志Ⅴ


1.The app references non--public selectors in Payload/xxxx/xxxxx : xxxxx

You can't remove this warning. You may get this warning just for using a selector in your own code or third party code(may be because of facebook sdk) that has the same name as some selector that is marked as non-public. Happens to me all the time. Never got rejected for it. So you won't worry about this warning. And also see this stack questionto avoid rejection, find and remove unwanted framework.

解决方法:首先这个警告不会造成上传失败,也不会造成审核被拒。其次可以通过移除代码中警告的那些代码,并移除多余不使用的系统类库(framework),使警告消失。

2.模拟器运行失败,并提示“Failed to chmod /user/.........”

解决办法:可通过退出模拟器再次运行项目,会重新调用出模拟器。不用重置模拟器。

3. Archive 后点击 validation按钮后出现如下报错。

解决办法:出现这个问题是因为,这个 Buidle identifter 没有在 iTunes Connect中心注册过,所以才会出现这个问题。

顺便说一下,有一次打包发到 蒲公英上,扫码安装的时候特别的慢,等了30分钟才安上,一度感觉安装不上,耐心等待才好,又从新打包上传了一次,扫描新的码安装就很快速正常了。

4.在iOS9系统的手机上使用SDWebImage不显示图片,在iOS10、iOS11手机上、模拟器上都是显示的

因为网络请求链接使用的是 https 所以info.plist中就没有设置App Transport Security Settings 结果使用SDWebImage加载图片 在iOS10、iOS11手机上、模拟器上都是显示的,可是在 iOS9的手机上就是不显示,无奈再次在info.plist中就没有设置App Transport Security Settings 设置为 ture 就行了。而且不会影响 https的访问。

PS: iOS10.3.2 系统下 UITabbar 的点击效果添加了选中背景,这在iOS11和iOS9中是没有的,没注意,当时吓一跳以为是Bug,结果是系统特色。

5. iOS11上 MBProgressHUD 不显示

事情是这样的,iOS11之前的手机上点击提交按钮都会提示“XXXX不能为空”,可是在刚刚更新的iOS11的手机上,点击按钮的时候并没有提示,当时以为是按钮没有触发点击事件,最后验证是 MBProgressHUD 不在iOS11上显示。最后找出问题所在。

原代码

新代码

可以看到,iOS11中应该是添加了新的一层 UIInterrectiveHightEffectWindow ,而且是隐藏起来的,所以加载上也是看不见的,误以为按钮没有响应。

6.谷歌浏览器(其他浏览器)打不开简书网址一直显示 Still unable to dial persisent://www:jianshu.com:80 after 3 attempts

这个问题困扰了我好几天,一直没在意,以为是简书服务器那边的问题,最后我ping了一下发现,这台电脑是可以访问到简书服务器的,问了简书客房,他们说是少部分网络是会出现这个问题的,简直是扯淡。 下面说一下Mac下如何使用ping,打开终端 输入 ping xxxxx 注意中间有空格。Mac下会一直ping下去,可以使用 control+C 来取消 ping操作。

可以访问

既然能访问那就是浏览器的问题了

翻译一下

unable go get a connection:Still unable to dial tcp://xx:80 after 3 attempts 无法获得连接:3次尝试后仍然无法拨打TCP/IP:80

问题原因

下面说说问题原因,就是因为一些代理软件设置影响了,或者他们已经失效了。但是谷歌代理设置还在,所以导致的。

解决方法

把浏览器的代理设置关闭使用代理,在ie 右上角 设置》internet选项》连接》局域网设置 把使用自动代理去掉就行了。(windows下的谷歌浏览器)

简书就速度的打开啦。

7.崩溃到.main文件时

造成崩溃的原因: [tncString addAttribute:NSFontAttributeName value:@15 range:(NSRange){0,[tncString length]}];

正确的代码:   [tncString addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:15] range:(NSRange){0,[tncString length]}];

崩溃到这个页面你慌不慌

我们仔细观察会发现,一般的工程崩溃时都会默认的把底部控制试图的第一个选中,这就造成了我们无法看到具体崩溃时的堆栈信息,把第一个取消选中就可以看到崩溃时详细的位置了。

8. Reveal 无法正常使用

不知道什么时候,按照以前的步骤: lbz库、 ObjC、 Reveal.framework 还是无法使用Reveal

按照图中所展示的那样,把Reveal.framework 拖进工程链接中就可以解决这个问题啦

9.拖进工程中的图片就是不显示

这个问题是在Xcode9中经常出现的问题

解决办法:把图片拖到 Images.xcassets 中即可加载显示啦。

10. block 中极易造成的崩溃问题。

我们有时候传值喜欢使用 block,block确实很方便,不过要注意以下场景。 类A有一个block属性用来传值,一旦我们在 A中有对这个属性进行赋值,那么所有类A的对象都需要实现这个 block属性方法,如果某个类A的对象没有实现这个block属性方法(不需要传值),就会造成崩溃,

block不用于delegate ,使用delegate,我们可以进行这样的判断,这样实不实现 代理都不会崩溃。

   if ([self.mydelegate respondsToSelector:@selector(backindexMethod:)]) {
        [self.mydelegate backindexMethod:[dataDic[@"popIndex"] integerValue]];
    }

可是block确无法这样判断,一旦类A中对属性block赋值,所有的类A对象都必须在使用的时候实现这个block属性方法,否则就会出现崩溃

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏macOS 开发学习

Mac开发之 Cocoa 绑定 入门

从iOS开发转为Mac OSX应用开发的过程中,cocoa 绑定算是比较大的一个差异,也是OSX上比较实用的技术,cocoa 绑定让开发者节省了大量的代码,可以...

952
来自专栏破晓之歌

Sublime的插件介绍 转

使用 Ctrl+`调出console面板输入sublime.log_commands(True),可以得到当前使用的命令面板进行设置的值。方便进行快捷键的绑定。

973
来自专栏移动开发面面观

React Native的state

893
来自专栏有趣的Python和你

人生若只如初见,何必找包爬数据SeleniumPhantomJS豆瓣登陆

1154
来自专栏向治洪

Vue.js简介

Vue.js简介 Vue.js(读音 /vjuː/, 类似于view)是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设...

2867
来自专栏Google Dart

AngularDart4.0 指南-体系结构概述 顶

AngularDart(我们通常在这个文档中简单地称为Angular)是一个框架,用于在HTML和Dart中构建客户端应用程序。它是作为Angular包发布的,...

813
来自专栏更流畅、简洁的软件开发方式

【开源】QuickPager ASP.NET2.0分页控件——使用示例、基本应用和查询功能

    myPage分页控件发出来之后,虽然开源了,但是没有给一个简单一点的 demo,真是漏掉了一个很重要的部分。     先说明一下使用myPage分页...

23010
来自专栏编程之旅

PHP开发——yii2多图上传组件的使用

最近在使用yii2开发一个表单页面的时候,有多图上传的需求,稍微找了找这方面的组件,基本都安利fileInput这个组件,于是就尝试着使用这个库来完成后端表单页...

2561
来自专栏葡萄城控件技术团队

一个Web页面的问题分析

几个月之前我接到一个新的开发任务,要在一个旧的Web页面上面增添一些新的功能。在开发的过程中发现旧的代码中有很多常见的不合适的写法,结合这些问题,如何写出更好的...

1989
来自专栏java思维导图

一文告诉你,Intellij IDEA神器隐藏的11种实用小技巧!

我们可以使用【Presentation Mode】,将IDEA弄到最大,可以让你只关注一个类里面的代码,进行毫无干扰的coding。

1382

扫码关注云+社区