文章目录

AndroidRookie

Gradle 使用技巧(一) 有更新!

Gradle是使用Groovy语言构建,所以既然是语言,那么就有他的语法,而不是简单的配置项。关于Gradle有时间会出一系列的文章。

Http响应码含义

做为一位开发者,工作中在所不免的会和网络打交道,了解响应码和对应所代表的意义,会给我们的开发带来极大的便利,也能减少自己闹的一些笑话。

App登陆首页适配 有更新!

实现APP登陆页面输入框居中。

Gradle之强制依赖某个第三方库 有更新!

#前言 在之前的一个项目中,compileSdkVersion和targetSdkVersion都是使用的24,都是使用最新的,紧跟潮流嘛,一直是相安无事。直到有一天接入一个第三方的SDK的时候,问题暴露了:第三方SDK仅仅只支持最大22的编译,23及以上他本身的SDK就会直接崩溃。没办法,只能降级项目中的编译版本来兼容他了。这一降,才知道不是那么好办的。 1.创建项目 如上图所示,创建了一个项目,compileSdkVersion、targetSdkVersion都是22,并且引用了一个appcompat-v7:22.2.1包。 2.提升引用appcompat-v7版本 看下图,将v7包提升到了23.2.1,就直接爆出了一个错误。 这个错误,如果单单只是在我们自己的项目中出现,还是很好解决的,要么降低v7的版本和sdk一致,要么就提升sdk版本和v7保持一致。但是,有得时候所引用的v7是在我们引用的开源库中引用的,我们自己的sdk不能提升,也不能修改开源库中的引用版本。 3.其他开源库appcompat-v7高版本 为了方便,我就自己创建了一个library并引用了,并且在lib….

Linux-JDK安装与配置环境搭建 有更新!

#JDK安装 首先,更新包: yum update 检查服务器上是否已安装旧版本的Java: java -version ##下载安装JDK 前往Oracle Java下载页面,根据你的系统架构找到合适的版本。比如我的系统是Centos 6 x86,找到jdk-8u102-linux-i586.rpm,复制其下载地址,在服务器中下载: wget –no-cookies –no-check-certificate –header “Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie” "http://download.oracle.com/o 在你下载的目录中执行rpm包安装命令: rpm -ivh jdk-8u102-linux-i586.rpm ##环境变量设置 在/etc/profile.d/路径下新建一个文件,名为java.sh: vim /etc/profile.d/java.sh 写入以下语句: #!/bin/bash JAVA_HOM….

Centos 6下MySQL安装与配置 有更新!

卸载掉原有mysql 查看是否安装mysql rpm -qa | grep mysql  // 是否已经安装了mysql数据库 卸载mysql yum remove mysql mysql-server mysql-libs mysql-server; find / -name mysql// 将找到的相关东西delete掉; rpm -qa|grep mysql//(查询出来的东东yum remove掉) 安装 获取可以安装的版本 yum list | grep mysql 自动安装 yum install -y mysql-server mysql mysql-deve 查看刚安装好的mysql-server的版本 rpm -qi mysql-server 配置 启动服务: service mysqld start 开机自启: chkconfig mysqld on chkconfig –list | grep mysql 设置密码: mysqladmin -u root password ‘root’  // 通过该命令….

Centos下 Nginx安装与配置 有更新!

第一步,在/etc/yum.repos.d/目录下创建一个源配置文件nginx.repo: cd /etc/yum.repos.d/ vim nginx.repo 填写如下内容: [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=0 enabled=1 保存,则会产生一个/etc/yum.repos.d/nginx.repo文件。 下面直接执行如下指令即可自动安装好Nginx: yum install nginx -y 安装完成,下面直接就可以启动Nginx了: /etc/init.d/nginx start 现在Nginx已经启动了,直接访问服务器就能看到Nginx欢迎页面了的。 如果还无法访问,则需配置一下Linux防火墙。 iptables -I INPUT 5 -i eth0 -p tcp –dport 80 -m state –state NEW,ESTABLISHED -j ACCEPT service iptables….

Android初级进阶之自定义果冻视图(BouncingJellyView)(二) 有更新!

啰嗦废话 本篇为Android初级进阶之自定义果冻视图(BouncingJellyView)(一)的后续篇章。没有看过的赶紧去看看,顺便点个喜欢。 BouncingJellyView 果冻视图,就像果冻一样伸缩弹跳,也叫阻尼效果。这个效果在MIUI上面到处都可以看到。 上一篇文章到现在的间隔已经是足足的三个月时间了,因为期间在待业中,所以没什么心情来写文章,所以拖到了现在,找着了工作,解决了其中的一些小问题,才开始写文章。 我现在的公司是做自己的产品,而且是从零到有得一个过程,所以我会把我在做项目的过程中遇到的问题解决方案及一些自定义的UI控件写成文章和demo,希望大家多多star,多多关注,也为能为我将来增加一些砝码。 效果图 废话不多说 先整两张效果图 区别 上个版本所留下的BUG,应该没有人发现。我这里描述一下:在5.0以上使用ToolBar的时候,不管是上拉还是下拉都是没有问题的,但是在5.0以下的时候就很糟糕了,下拉没有问题,但是上拉却是会遮挡ToolBar,如下图所示: 上个版本中,要使用对应的BouncingJelly才能够达到效果,但是在这个版本中,只需….

Android开发小技巧之不再使用原生的WebView了 有更新!

前言 先来说说Android官方的WebView的版本差异,在Android 4.4以下(不包含4.4)系统WebView底层实现是采用WebKit作为内核,而在Android 4.4及其以上Google 采用了chromium作为内核,虽然是API上面没有什么变化,但是却非常的坑开发者。虽然说更换了chromium之后,是增加了对H5等的一些友好支持,但是还不够啊,各种各样的内存泄露。我也是醉了。而且这种内存泄露还是没办法解决的。 刚开始的时候啥都不懂,认为WebView这那点东西,简单。慢慢的发现:哦,原来webView也是要清除和销毁的啊。哦,原来是WebView内部内存泄露了啊,没办法只能将WebView放进一个单独的进程了。我以为这样就能解决我的问题。 诱因 当时的问题是这样的,我们项目需要用WebView来展示一个url,里面呢,是web版的百度地图。结果就是IOS正常显示,我这边就是不行,于是我各种重写,各种注入JS。最终还是失败了。最后是在微信和UC中查看这个URL,发现真神奇,竟然可以。不知道大家有没有仔细观察,不管是QQ还是微信,打开URL的时候往下拉,都可以看到这….

Android开发小技巧之商品属性筛选与商品筛选 有更新!

#前言 一周一篇文章,果真是不太容易。顺便吐槽一下上周也就是9月5号的文章,几天之内就耗完了我1.4G的空间流量,吓得我都抽搐了。 这个次为大家带来的是一个完整的商品属性筛选与商品筛选。什么意思?都见过淘宝、京东等爱啪啪吧,里面有个商品详情,可以选择商品的属性,然后筛选出这个商品的具体型号,这样应该知道了吧?不知道也没关系,下面会有展示图。 关于商品筛选是有两种方式(至少我只见到两种): 第一种: 将所有的商品的所有属性及详情返回给客户端,由客户端进行筛选。 淘宝用的就是这种。 第二种: 将所有的属性返回给客户端,客户选择完成属性后将属性发送给后台 ,再由后台根据属性筛选出具体商品返回给客户端。 京东就是这样搞的。。 两种方式各有各的好处: 第一种:体验性特别好,用户感觉不到延迟,立即选中立即就筛选出了详情。就是客户端比较费劲。。。 第二种:客户端比较省时间,但是体验性太差了,你想想,在网络不是很通畅的时候,你选择一个商品还得等老半天。 因为当时我没有参加到这个接口的设计,导致一直在变化。。我才不会告诉不是后台不给力,筛选不出来才一股脑的将所有锅甩给客户端。 技术点 流式布局 商….