草庐IT

DataBinding 大坑总结(网上我暂时搜不到解决方法)

描述优缺点和简单使用http://www.jianshu.com/p/d4e384c98987用户指南http://www.jianshu.com/p/b1df61a4df77在使用多Module中使用DataBinding会引发一些奇怪的问题,最近好好的腾出时间来折腾这些奇怪的问题:1:如果当Module启动DataBinding重启AS启动报错的话,就启用允许多行代码android{defaultConfig{multiDexEnabledtrue}}dependencies{//解决超过65546代码的问题compile'com.android.support:multidex:1.0.

这么好的Android开发辅助工具App不白嫖可惜了

过年期间闲来没事,手撸了一个辅助Android开发调试的工具App,适合Android开发者和测试同学使用。点击直接下载APK或者去GooglePlay安装功能概览对我这样的懒人开发者来说,反复的做同样一件事简直太煎熬了,因此我把我平时开发中需要反复操作的命令和一些繁琐的操作整理成了一个工具。废话不多说,先上图了解下工具的大概功能有哪些(内容比截图丰富,欢迎下载体验)CodeCrafts的核心是一个可拖动的侧边栏的悬浮窗,悬浮窗可以折叠或展开,悬浮窗中包含5大块功能分别对应一个TAB,这5大块功能分别是应用控制、开发者选项、常用功能,常用系统设置和全局功能introduction-floati

mac中使用QuickTime Player看了移动硬盘里的视频,如何清除记录?

mac的QuickTimePlayer有一个bug,就是用它看完移动硬盘中的视频之后,播放记录(也就是右击QuickTimePlayer的最近使用项目)没有办法清除。我们先来复现一下问题:移动硬盘中的视频我们双击打开这个移动硬盘里的电影进行播放:播放当我们关掉电影后,右击看一下QuickTimePlayer的记录:记录这时候如果我们正常地去打开QuickTimePlayer进入文件→打开最近使用,发现里面什么都没有,而且里面的“清除菜单”按钮是不能点的。哦!为什么不能点?!其实这个问题解决起来也很简单,既然移动硬盘里的视频不能显示在“打开最近使用”这个菜单中,那我们播放一个电脑中的视频就可以了

android 设备无线调试(无线网台式机有线网不互通,闲置安卓手机变无线网卡)

由于手上android设备较多,接口不一,导致数据线连接电脑有些杂乱,想起以前试过的无线调试,只不过以前比较卡,想想经过这几年发展,无线调试应该成熟稳定故决定试试,本篇就记录下android设备无线调试设置流程。注意事项android设备关机需要重新连接数据线进行第三步设置第一步注意:android设备要与电脑设备能够通讯就可以,不需要非要在同一wifi下,即不同网段也可以,看过很多文字都说明是同一wifi,这里稍作提醒例如我电脑的环境ip为192.168.89.146而安卓设备ip为192.168.222.171第二步第一次设置需要连接数据线,并且在电脑端打开命令行,运行adbdevices

业务拆分原则介绍

1.常见的做法常见的错误做法:服务拆分粒度越小越好按照大公司的套路拆分以代码量为拆分标准拆分核心三原则:2.服务粒度匹配团队规模服务粒度过细的问题,可以先看下面的两个图可以看到,服务粒度过多时,虽然单个服务的内容可以减少,但是服务间调用关系的复杂度程指数级的增长,这同样也是很可怕的一件事如果项目的人员不多,那么划分过多的服务出来时,每个开发人员需要兼顾的单服务就会变得很多,而为了能够正常进行开发,那么就需要同时启动多个服务;对于测试人员来说,要做测试的时候,也需要部署多个环境,测试多个接口;运维人员每次上线都要操作多个接口,并且各个接口之间还存在依赖关系,每次上线都要写一个详细且复杂的上线计划

ios - 从图像数组中快速删除图像

我有一个图像数组varimages:NSArray!=[]我数组中的最大图像数是5张图像。我希望能够处理任意数量的图像,所以我提取了它们guardletimageOne=images[0]as?UIImageelse{return}guardletimageTwo=images[1]as?UIImageelse{return}guardletimageThree=images[2]as?UIImageelse{return}guardletimageFour=images[3]as?UIImageelse{return}guardletimageFive=images[4]as?UII

物联网(四)---搭建自己的TCP服务器[ESP8266]

物联网(一)---快速上手[STM32+OneNET+ESP8266]物联网(二)---原理分析[STM32+OneNET+ESP8266]物联网(三)---WEB下发命令控制单片机[STM32+OneNET+ESP8266]物联网(四)---搭建自己的TCP服务器[ESP8266]物联网(五)---搭建自己的云平台[ESP8266+Django]完成本节实验所需材料:硬件:    1.ESP8266*1    2.串口*1软件:    1.NetAssist    2.串口调试助手    3.python软件+编辑器    阅读本节所需知识:    1.对python语法有一定的了解    

组态王客户端通讯错误问题的解决

一、现象  客户反映组态服务器端有数据,客户端无数据。日志记录二、分析  可以看到"\kyioServer\....\io服务器"不存在。  客户端的变量声明部分所有的服务器端变量都打不开。  查看共享文件夹"\kyioServer\....\io服务器"位于D盘,且有权限。从客户端可以查看D盘内的共享文件。  询问客户,维护后第二天发生的通讯错误。  客户端程序无问题。错误显示三、检查服务器端  发现组态王当前工程的文件设定为e:了。原来单位维护给服务器端工程做了备份后,把当前工程的文件设定为E盘了,但共享文件夹"\kyioServer\....\io服务器"指在D盘,共享文件夹内当天无数据

MyBatis源码第一天

一、MyBatis解析全局配置文件1.MyBatis介绍MyBatis是一个持久层的ORM框架,使用简单,学习成本较低。可以执行自己手写的SQL语句,比较灵活。但是MyBatis的自动化程度不高,移植性也不高,有时从一个数据库迁移到另外一个数据库的时候需要自己修改配置,所以称只为半自动ORM框架。2.传统JDBC和Mybatis相比的弊病2.1传统JDC传统JDBC的问题如下:1.数据库连接创建,释放频繁造成资源的浪费,从而影响系统性能,使用数据库连接池可以解决问题。2.sql语句在代码中硬编码,造成代码的不易维护,实际应用中sql的变化可能较大,sql代码和java代码没有分离开来维护不方便

【算法】希尔排序算法的讲解和代码实践

思路希尔排序,与其他排序不同的是,别的排序都能通过名字关联上,而希尔排序的名字,怎么看也不太像中文。其实希尔排序就是插入排序的进化版,它会先声明一个间隙参数,然后按照间隙参数,把数组分成若干各子数组,对子数组进行插入排序。随着间隙越缩越小,整个数组的顺序也就慢慢排好了。看起来不太容易理解,下面就拆开说一下步骤:计算出一个间隙值;按照间隙值把数组分成若干个子数组;对子数组进行插入排序;将间隙缩小,重新分组并插入排序;直至整个数组排序完成。讲解有数组如下:image.png现在要对它进行希尔排序。首先计算出一个间隙值gap,我们用数组长度除以2,计算出第一个gap:8/2=4;那么间隔为4(比如下