- iOS使用SDWebview加载图片失败?
AnderQZ
今天调试遇到一个很无奈的问题,就是出现了image无法加载出来。最后才发现是图片使用了中文命名,真TM的坑!SDWebimage没办法识别中文,必须要encode才行!
- iOS开发 芒果TV面试
玉思盈蝶
哈哈,实话说被虐了,被虐的很惨,还是好好学习吧。但是反过来说我现在工作也挺好的,不怎么加班,压力也不大,岂不是爽歪歪吗?(实话说,我是不是有点不上进那种~~~)本着学习和分享的初心,还是分享总结下面试吧。1、首先是一个算法问题,SDWebImage框架里面有一个LRU淘汰算法,说说LRU算法设计和怎么实现的?2、开发中用到设计模式,自己从0开始写过观察者模式实现吧,不是通过系统用。知道KVC和KV
- SDWebImage前世今生之V2.4版本
_相信自己_
2.4版本2011年10月1日发布1.类结构新增了两个类UIButton+WebCache设置ButtonImage//------------------------------2.4版本更新-功能扩展-------------------------@interfaceUIButton(WebCache)-(void)setImageWithURL:(NSURL*)url;-(void)set
- iOS面试题:SDWebImage原理
IOS应用
SDWebImage一个为UIImageView提供一个分类来支持远程服务器图片加载的库。功能简介:1、一个添加了web图片加载和缓存管理的UIImageView分类2、一个异步图片下载器3、一个异步的内存加磁盘综合存储图片并且自动处理过期图片4、支持动态gif图5、支持webP格式的图片6、后台图片解压处理7、确保同样的图片url不会下载多次8、确保伪造的图片url不会重复尝试下载9、确保主线程
- SDWebImage 5.0 (一、变化)
纸飞机zhou
SDWebImage5.x相比4.x最大的变化之一是协议化了很多重要的对象,配合新引入的SDWebImageContext/SDWebImageMutableContext参数,保留快速使用特性的同时可以灵活的自定义高级功能。1、主要协议化了的对象:4.45.0SDWebImageCacheSerializerBlockidSDWebImageCacheKeyFilterBlockidSDWebI
- SDWebImage源码解读
流年易逝_李
最近更新私有库SDWebImage,又重读了一遍,所以分享一下1.核心方法在于SDWebImageManager的loadImageWithURL(无论UI系列,还是下载最终会走到此方法)内部,进行判断是否有缓存图片,先取缓存,再取硬盘;若无,则进行下载downloadImageWithURL;创建operation(可以使用自定义的,需要遵守协议),添加进downloadQueue;下载成功保存
- SDWebImage的实现过程
牛奶红茶
1.入口setImageWithURL:placeholderImage:options:会先把placeholderImage显示,然后SDWebImageManager根据URL开始处理图片。2.进入SDWebImageManagerdownloadWithURL:delegate:options:userInfo:,交给SDImageCache从缓存查找图片是否已经下载queryDiskCa
- Swift - 引入SDWebImage
Timidvb
在需要用到大量网络图片时,引入SDWebImage库比自己写缓存管理和请求图片要快。但是在引入的过程上与其他库有不同的地方,网上的说法是在bridging文件中加入#import"SDWebImage+header.h"实际上是OC的做法实际上需要在bridging文件中加入#import"UIImageView+WebCache.h"并在需要的类中importSDWebImage然后就可以在UI
- Cocoapods Spec仓库目录结构
高思阳
不知道大家有没有注意到CocoapodsSpec目录结构,如下图。Spec目录结构Specs目录下,并不是直接是以库的名称命名的文件夹,而是分了3层目录,分别以0-f来命名。比如SDWebImage的位置是1/1/7/SDWebImage/0.4.2/SDWebImage.podspec。其实之前就发现了这个问题,但是一直没去想为什么要这样,它是以哪种方式来确定库的podspec的位置。直到今天,
- iOS 手动创建及项目集成SDWebImage框架
BiBiMan
首先提供SDWebImage下载链接地址:SDWebImageGitHub1.构建框架文件下载完成master.zip包后,进行解压缩得到SDWebImage-master文件夹解压后打开SDWebImage-master文件夹,找到SDWebImage.xcodeproj项目文件,打开xcodeproj文件,注意打开项目文件后不要Build项目(按照SDWebImage官方构建指南说明来)打开x
- 关于SDWebImage加载webp格式图片异常问题
DaZenD
很久之前写的了,最近都统一发了。参考资料,解决问题,总结一下,作为学习问题webp格式图片加载失败方案方案1后端调整?。。。。方案2设置库加载图片的请求头1:进入SDWebImageDownloader.m可以看到库提供了请求头设置sd_webp.png所以,相应的配置一下即可sd_webp_setting.png2:另外一种方式是通过代码静态的设置库的请求头didFinishLaunchingW
- 集成百度导航的那些坑——iOS
QueenOfThePain
最近给一个旧的项目集成导航功能,在看过各个网站的集成指南和SDK文档之后,感觉非常简单。emmm........然后被坑得一脸血,下面就来讲讲可能碰到的那些主要坑点。1.在项目已经使用了百度地图SDK(据说AFN/SDWebImage的部分版本也有)之后,我开始使用pod进行导入SDK,没想到,这第一步就错了,因为BaiduMapKit的SDK内和BaiduNavi使用了同样的库,叫做libcry
- iOS开发简历要怎么写?
梁森的简书
个人资料姓名年龄性别学历工作经验联系电话联系邮箱应聘岗位个人技术博客CSDN掘金专业技能(个人认为比较重要的地方)擅长使用OC语言进行开发。善于使用MVC、MVVM架构搭建项目。接口数据请求使用AFNetworking,图片下载使用SDWebImage,页面布局使用Masonry。熟练使用代理、block、通知、单例进行数据的交互。数据的缓存一般使用NSUserDefaults、归档、r
- 在iOS中高效的加载图片
文博同学
在iOS开发中,图片(UIImage)是我们在开发中,占用手机内存比较大的对象,如果在运行过程中,内存占用过大,对电池寿命会造成影响,如果超过了内存占用的最大值,会造成App的crash。这篇文章从图片的加载原理和SDWebImage的源码实现的角度来介绍图片加载。图片的渲染流程在iOS中使用UIImage和UIImageView来记载图片,他俩遵守经典的MVC架构,UIImage相当于Model
- 2020年的第三场面试——电话面试
玉思盈蝶
1、说说runtime?2、SDWebImage实现原理是什么?它是如何解决tableView的复用时出现图片错乱问题的呢?3、描述下SDWebImage里面给UIImageView加载图片的逻辑?4、讲讲iOS事件响应链的原理?5、说说多线程?6、为什么刷新UI要在主线程操作?7、数据库操作FMDB有遇到什么问题吗?8、用定时器有遇到什么问题吗?9、说说用的架构?10、UIScrollView大
- SDWebImage初步学习以及缓存学习
锦鲤跃龙
SDWebImageUML图分析SDWebImageUml图SDWebImageManager是管理的核心类,他聚合了SDWebImageManagerdelegateSDWebImagePrefetcher是预下载的,SDWebImageManager作为一个变量manager聚合在SDWebImagePrefetcher,并且聚合了变量为delegate的SDWebImagePrefetche
- iOS各种架构设计图
王方帅
ios组件化架构漫谈ios组件化架构漫谈每个组件都是一个独立app,可以独立开发最后我们可以得到如下的架构图:这类还值得一提的话题是组件的颗粒度iOSapp开发项目搭建微博第四版架构美团整体业务架构微博架构图架构相关面试问题思维导图AFN、SDWebImage、RAC、ASDK支付宝客户端总体架构支付宝客户端总体架构一个workspace多个project实现组件化iOS开发之组件化架构漫谈iOS
- iOS-静态库、动态库
Imkata
库是共享代码的方式,根据源代码的公开情况,库可以分为两种类型:开源库公开源代码,能看到具体实现,比如SDWebImage、AFNetworking。闭源库不公开源代码,是经过编译后的二进制文件,看不到具体实现。主要分为:静态库、动态库。静态库:1、平时我们用的第三方SDK基本上都是静态库。2、静态库在项目编译时完整地拷贝至可执行文件中,被多次使用就有多份冗余拷贝。3、静态库很大的一个优点是减少耦合
- SDWebImage图片缓存原理解读
二猪哥
引言SDWebImage的最大并发数是多少?_downloadQueue.maxConcurrentOperationCount=6;SDWebImages是如何识别图片的?NSData+ImageContentType.m中,根据图片文件十六进制数据的第一个字节判断的imageType.pngSDWebImage缓存图片命名规则?为了防止名称重复,对其进行md5运算默认下载的超时时长是多少?15
- 如何成为更高级的iOS开发工程师?
Sunnyxi
如何成为更高级的iOS开发工程师?熟练掌握C/C++/Objective-C/Swift语言;熟悉CocoaTouch(Foundation,UIKit)、Objective-C中block,gcd,NSOperation等;熟悉Object消息传递等机制,Objective-CRuntime,阅读源码;熟练使用大部分iOS平台常用库,开源库(AFNetworking,SDWebImage,fmd
- 通过自定义Banner对SDCycleScrollView+SDWebImage相关理解
民谣里不是故事就是诗丶
现在的PM不论什么类型的app都喜欢加个Banner无限轮播视图用于推荐最新活动。而且基本上的数据类型为@{@"id":@(329),@:"BannerName":@"xxxx活动",@"ImageAddress":@"https://www.baidu.com/img/bd_logo1.png",@"JumpUrl":@"https://www.baidu.com/"}一张图,一个标题,一个跳转
- pod 'libwebp'失败的解决办法
osnail
pod'libwebp'失败的解决办法https://www.jianshu.com/p/eacd3cee51ac32018.02.0717:42:12字数670阅读5104image在使用SDWebImage加载webp格式图片时,需要引入库SDWebImage/WebP。Podfile文件需要导入:pod'SDWebImage'pod'SDWebImage/WebP'但是执行podinstal
- iOS-SDWebImage史上最详细介绍
你颠覆了我的世界
在iOS的图片加载框架中,SDWebImage使用频率非常高。它支持从网络中下载且缓存图片,并设置图片到对应的UIImageView控件或者UIButton控件。在项目中使用SDWebImage来管理图片加载相关操作可以极大地提高开发效率,让我们更加专注于业务逻辑实现。本文讲解的版本为4.4.2版本。文章目录结构一SDWebImage概论二SDWebImage组织架构三各个类详解一SDWebIma
- iOS CocoaPods专栏(二)—— 公有库的创建及使用
齐舞647
上一篇介绍了:CocoaPods简介及基本使用,本篇将介绍一下CocoaPods公有库的创建和使用。一、什么是公有库?在我们开发中,经常会用到一些第三方库(比如AFNetworking、SDWebImage等等),我们通过podinstall命令,把第三方库导入自己的项目中(具体操作见:上一篇)。而这些第三方库就是公有库。二、为什么用公有库?如果我们也想把自己创作的组件/框架开源出去,给更多的开发
- SDWebImage框架
weyan
一、SDWebImage框架结构SDWebImage框架结构1、收到内存警告时清除缓存-(void)applicationDidReceiveMemoryWarning:(UIApplication*)application{//接收到内存警告的时候调用该方法//01清除内存缓存[[SDWebImageManagersharedManager].imageCacheclearMemory];//0
- iOS著名公司的github开源地址
瞬csr
我们有时想学习一些比较高大上的代码,但是常见的afnetworking,sdwebimage又都看过了,网上代码各种各样,有些代码规范很差,看着很难受,这时你可以去看一下大公司里的代码,下面这些应该可以满足你。applehttps://github.com/applegooglehttps://github.com/googlefacebookhttps://github.com/facebook
- SDK问题解析(一) —— 简单的.framework SDK的封装和使用(一)
刀客传奇
版本记录版本号时间V1.02019.06.12星期三前言做了几年的项目,基本都是对接三方的SDK,这里就自己封装一下SDK,顺便做个记录,希望有技术大牛多给我批评指正,也希望可以给别人以帮助和借鉴。基本概念写作环境:xcode10.2.11.库什么是库库是程序代码的集合,是共享程序代码的一种方式。分类开源库公开源代码,可以看到具体实现,比如AFN和SDWebImage等。闭源库不公开源代码,是经过
- 跳槽涨新必备
iOS雯Ping
搜狗iOS面试题:1.iOS应用的文件目录都是什么?缓存文件存在哪个文件里?它的上一层是什么?2.SDWebImage图片处理原理?3.SDWebImage在iOS93dtouch下出现的问题?4.NSArray和NSMutableArray在Copy和MutableCopy下的内存是怎样的?5.用户下载一个图片,图片很大,需要分成很多份进行下载,使用GCD应该如何实现?使用什么队列?6.现有两个
- SDWebImage访问HTTPS站点获取图片资源失败解决办法
Nadeal
iOS
在使用SDWebImage第三方库是,访问http站点的图片不成问题,但当访问https站点时,会遇到一个提示:error:NSURLConnection/CFURLConnectionHTTPloadfailed(kCFStreamErrorDomainSSL,-9813)遇到这个提示时,首先说说怎么解决这个问题。在SDWebImageDownloaderOperation.m文件中增加以下方法
- iOS13卡顿问题分析(一)CPU on instruments
宋奕Ekis
在卡顿数据里,iOS13退到后台占了50%左右。这个特定场景让我们困扰了很久,使用instruments分析了工程在退到后台时CPU的变化情况。并得出以下结论:退到后台一瞬间CPU占用率升高,同时产生的操作太多主线程占用比例大过多的线程神策,SDWebimage,TD,ADJust等使用了backgroundTask,十分消耗资源并且在backgroundTask中进行了大量耗时操作JPush直接
- 怎么样才能成为专业的程序员?
cocos2d-x小菜
编程PHP
如何要想成为一名专业的程序员?仅仅会写代码是不够的。从团队合作去解决问题到版本控制,你还得具备其他关键技能的工具包。当我们询问相关的专业开发人员,那些必备的关键技能都是什么的时候,下面是我们了解到的情况。
关于如何学习代码,各种声音很多,然后很多人就被误导为成为专业开发人员懂得一门编程语言就够了?!呵呵,就像其他工作一样,光会一个技能那是远远不够的。如果你想要成为
- java web开发 高并发处理
BreakingBad
javaWeb并发开发处理高
java处理高并发高负载类网站中数据库的设计方法(java教程,java处理大量数据,java高负载数据) 一:高并发高负载类网站关注点之数据库 没错,首先是数据库,这是大多数应用所面临的首个SPOF。尤其是Web2.0的应用,数据库的响应是首先要解决的。 一般来说MySQL是最常用的,可能最初是一个mysql主机,当数据增加到100万以上,那么,MySQL的效能急剧下降。常用的优化措施是M-S(
- mysql批量更新
ekian
mysql
mysql更新优化:
一版的更新的话都是采用update set的方式,但是如果需要批量更新的话,只能for循环的执行更新。或者采用executeBatch的方式,执行更新。无论哪种方式,性能都不见得多好。
三千多条的更新,需要3分多钟。
查询了批量更新的优化,有说replace into的方式,即:
replace into tableName(id,status) values
- 微软BI(3)
18289753290
微软BI SSIS
1)
Q:该列违反了完整性约束错误;已获得 OLE DB 记录。源:“Microsoft SQL Server Native Client 11.0” Hresult: 0x80004005 说明:“不能将值 NULL 插入列 'FZCHID',表 'JRB_EnterpriseCredit.dbo.QYFZCH';列不允许有 Null 值。INSERT 失败。”。
A:一般这类问题的存在是
- Java中的List
g21121
java
List是一个有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
与 set 不同,列表通常允许重复
- 读书笔记
永夜-极光
读书笔记
1. K是一家加工厂,需要采购原材料,有A,B,C,D 4家供应商,其中A给出的价格最低,性价比最高,那么假如你是这家企业的采购经理,你会如何决策?
传统决策: A:100%订单 B,C,D:0%
&nbs
- centos 安装 Codeblocks
随便小屋
codeblocks
1.安装gcc,需要c和c++两部分,默认安装下,CentOS不安装编译器的,在终端输入以下命令即可yum install gccyum install gcc-c++
2.安装gtk2-devel,因为默认已经安装了正式产品需要的支持库,但是没有安装开发所需要的文档.yum install gtk2*
3. 安装wxGTK
yum search w
- 23种设计模式的形象比喻
aijuans
设计模式
1、ABSTRACT FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:
- 开发管理 CheckLists
aoyouzi
开发管理 CheckLists
开发管理 CheckLists(23) -使项目组度过完整的生命周期
开发管理 CheckLists(22) -组织项目资源
开发管理 CheckLists(21) -控制项目的范围开发管理 CheckLists(20) -项目利益相关者责任开发管理 CheckLists(19) -选择合适的团队成员开发管理 CheckLists(18) -敏捷开发 Scrum Master 工作开发管理 C
- js实现切换
百合不是茶
JavaScript栏目切换
js主要功能之一就是实现页面的特效,窗体的切换可以减少页面的大小,被门户网站大量应用思路:
1,先将要显示的设置为display:bisible 否则设为none
2,设置栏目的id ,js获取栏目的id,如果id为Null就设置为显示
3,判断js获取的id名字;再设置是否显示
代码实现:
html代码:
<di
- 周鸿祎在360新员工入职培训上的讲话
bijian1013
感悟项目管理人生职场
这篇文章也是最近偶尔看到的,考虑到原博客发布者可能将其删除等原因,也更方便个人查找,特将原文拷贝再发布的。“学东西是为自己的,不要整天以混的姿态来跟公司博弈,就算是混,我觉得你要是能在混的时间里,收获一些别的有利于人生发展的东西,也是不错的,看你怎么把握了”,看了之后,对这句话记忆犹新。 &
- 前端Web开发的页面效果
Bill_chen
htmlWebMicrosoft
1.IE6下png图片的透明显示:
<img src="图片地址" border="0" style="Filter.Alpha(Opacity)=数值(100),style=数值(3)"/>
或在<head></head>间加一段JS代码让透明png图片正常显示。
2.<li>标
- 【JVM五】老年代垃圾回收:并发标记清理GC(CMS GC)
bit1129
垃圾回收
CMS概述
并发标记清理垃圾回收(Concurrent Mark and Sweep GC)算法的主要目标是在GC过程中,减少暂停用户线程的次数以及在不得不暂停用户线程的请夸功能,尽可能短的暂停用户线程的时间。这对于交互式应用,比如web应用来说,是非常重要的。
CMS垃圾回收针对新生代和老年代采用不同的策略。相比同吞吐量垃圾回收,它要复杂的多。吞吐量垃圾回收在执
- Struts2技术总结
白糖_
struts2
必备jar文件
早在struts2.0.*的时候,struts2的必备jar包需要如下几个:
commons-logging-*.jar Apache旗下commons项目的log日志包
freemarker-*.jar  
- Jquery easyui layout应用注意事项
bozch
jquery浏览器easyuilayout
在jquery easyui中提供了easyui-layout布局,他的布局比较局限,类似java中GUI的border布局。下面对其使用注意事项作简要介绍:
如果在现有的工程中前台界面均应用了jquery easyui,那么在布局的时候最好应用jquery eaysui的layout布局,否则在表单页面(编辑、查看、添加等等)在不同的浏览器会出
- java-拷贝特殊链表:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
bylijinnan
java
public class CopySpecialLinkedList {
/**
* 题目:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
拷贝pNext指针非常容易,所以题目的难点是如何拷贝pRand指针。
假设原来链表为A1 -> A2 ->... -> An,新拷贝
- color
Chen.H
JavaScripthtmlcss
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML> <HEAD>&nbs
- [信息与战争]移动通讯与网络
comsci
网络
两个坚持:手机的电池必须可以取下来
光纤不能够入户,只能够到楼宇
建议大家找这本书看看:<&
- oracle flashback query(闪回查询)
daizj
oracleflashback queryflashback table
在Oracle 10g中,Flash back家族分为以下成员:
Flashback Database
Flashback Drop
Flashback Table
Flashback Query(分Flashback Query,Flashback Version Query,Flashback Transaction Query)
下面介绍一下Flashback Drop 和Flas
- zeus持久层DAO单元测试
deng520159
单元测试
zeus代码测试正紧张进行中,但由于工作比较忙,但速度比较慢.现在已经完成读写分离单元测试了,现在把几种情况单元测试的例子发出来,希望有人能进出意见,让它走下去.
本文是zeus的dao单元测试:
1.单元测试直接上代码
package com.dengliang.zeus.webdemo.test;
import org.junit.Test;
import o
- C语言学习三printf函数和scanf函数学习
dcj3sjt126com
cprintfscanflanguage
printf函数
/*
2013年3月10日20:42:32
地点:北京潘家园
功能:
目的:
测试%x %X %#x %#X的用法
*/
# include <stdio.h>
int main(void)
{
printf("哈哈!\n"); // \n表示换行
int i = 10;
printf
- 那你为什么小时候不好好读书?
dcj3sjt126com
life
dady, 我今天捡到了十块钱, 不过我还给那个人了
good girl! 那个人有没有和你讲thank you啊
没有啦....他拉我的耳朵我才把钱还给他的, 他哪里会和我讲thank you
爸爸, 如果地上有一张5块一张10块你拿哪一张呢....
当然是拿十块的咯...
爸爸你很笨的, 你不会两张都拿
爸爸为什么上个月那个人来跟你讨钱, 你告诉他没
- iptables开放端口
Fanyucai
linuxiptables端口
1,找到配置文件
vi /etc/sysconfig/iptables
2,添加端口开放,增加一行,开放18081端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 18081 -j ACCEPT
3,保存
ESC
:wq!
4,重启服务
service iptables
- Ehcache(05)——缓存的查询
234390216
排序ehcache统计query
缓存的查询
目录
1. 使Cache可查询
1.1 基于Xml配置
1.2 基于代码的配置
2 指定可搜索的属性
2.1 可查询属性类型
2.2 &
- 通过hashset找到数组中重复的元素
jackyrong
hashset
如何在hashset中快速找到重复的元素呢?方法很多,下面是其中一个办法:
int[] array = {1,1,2,3,4,5,6,7,8,8};
Set<Integer> set = new HashSet<Integer>();
for(int i = 0
- 使用ajax和window.history.pushState无刷新改变页面内容和地址栏URL
lanrikey
history
后退时关闭当前页面
<script type="text/javascript">
jQuery(document).ready(function ($) {
if (window.history && window.history.pushState) {
- 应用程序的通信成本
netkiller.github.com
虚拟机应用服务器陈景峰netkillerneo
应用程序的通信成本
什么是通信
一个程序中两个以上功能相互传递信号或数据叫做通信。
什么是成本
这是是指时间成本与空间成本。 时间就是传递数据所花费的时间。空间是指传递过程耗费容量大小。
都有哪些通信方式
全局变量
线程间通信
共享内存
共享文件
管道
Socket
硬件(串口,USB) 等等
全局变量
全局变量是成本最低通信方法,通过设置
- 一维数组与二维数组的声明与定义
恋洁e生
二维数组一维数组定义声明初始化
/** * */ package test20111005; /** * @author FlyingFire * @date:2011-11-18 上午04:33:36 * @author :代码整理 * @introduce :一维数组与二维数组的初始化 *summary: */ public c
- Spring Mybatis独立事务配置
toknowme
mybatis
在项目中有很多地方会使用到独立事务,下面以获取主键为例
(1)修改配置文件spring-mybatis.xml <!-- 开启事务支持 --> <tx:annotation-driven transaction-manager="transactionManager" /> &n
- 更新Anadroid SDK Tooks之后,Eclipse提示No update were found
xp9802
eclipse
使用Android SDK Manager 更新了Anadroid SDK Tooks 之后,
打开eclipse提示 This Android SDK requires Android Developer Toolkit version 23.0.0 or above, 点击Check for Updates
检测一会后提示 No update were found