自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xiaohuanqi的博客

知识怕的是被忘记

  • 博客(52)
  • 资源 (5)
  • 收藏
  • 关注

原创 记录remove掉WRITE_SMS权限后,写入短信操作

随着Android系统的升级,Google对安全这一块是越发的看重,所以对于开发惹人员来说权限这一块就是一个不得不注意的内容,开发中会遇到很多关于动态权限管理的bug。####记录remove掉WRITE_SMS权限后,写入短信现在很多手机助手都会对短信进行备份和恢复,无奈再Android4.4以后就移除掉WRITE_SMS的权限了,那么要继续写入短信怎么办呢??我发现QQ手机助手会弹窗让你...

2019-01-08 17:33:30 1812 1

原创 PostMan--APi测试的最好工具

作为一个客户端开发者,也时常需要对API进行测试以及抓取自己需要的数据并查看resonpse,postman是很好用的工具,对于api测试比较强大,返回数据也是可以自动格式化后的数据,对于测试来说,可以对已经测试过的api建立collections存储request,一个request相当于一个testcase,再次测试的时候只需要去collections里面run一下,不需要重新去输入。简单介绍...

2018-05-11 13:56:12 3481 1

原创 Kotlin学习之路--可添加header/footer的刷新列表

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/Kotlin/欢迎来吐槽BaseRefresh-KotlinKotlin编写刷新列表首先导入库(使写起来更方便)compile ‘org.jetbrains.anko:anko-sdk15:0.9.1’可以直接下面方式写://mTvContent直接是xml中的id

2017-12-28 15:32:37 809

原创 Kotlin中let,with,apply,run,also的区别

//let apply withsenoirManager.let { it.drive()// println(this) this表示 该类的this指针 it表示该对象 println(it)}val applyResult = senoirManager.apply { this.drive() //apply返回的 是该对象}...

2019-06-24 16:58:13 418

原创 你所不知道的冒泡排序

说到排序,耳熟能详,手写代码都可以很顺溜的冒泡排序。但是追究冒泡排序的优化的时候,那么估计就有很多人懵逼了。下面介绍几种冒泡的几个优化点吧。有这么一个数列: int[] number1 = {1, 6, 0, 2, 4, 3, 9, 7, 8};常规的写法: 这种冒泡写法,一直要到每一轮的每一次对比完成后,循环才会结束,显然这样的写法效率比较低,而且某些时候数列有一部分是有序的,也...

2018-08-01 18:13:55 373

原创 多线程同步之LockSupport

多线程同步的方式有很多种,synchronized,wait/notify,lock/condition等,这里介绍一下 LockSupport。对于传统的wait/notify这种比较low的做法,1,要自己维护一套锁对象;2,必须在同步代码块中使用,3,无法控制两者之间执行顺序导致有时候会形成阻塞情况,4,开销比较大。先来一个LockSupport的Demo吧:相比于wait/...

2018-07-31 16:53:47 366

原创 关于App与H5交互-获取不同浏览器以及版本号

开发中可能有这样的情况:项目中详情页(H5页面)针对前后两个版本做了很大的改变,为了兼容以前的版本,前端会根据版本号对不同版本输出不同的H5页面,这个时候客户端会设置Webview的userAgentString,前段拿到这个UA,就可以根据不同版本做不同的事情了。settings.userAgentString = (自己协商规则)...

2018-07-18 14:49:08 1807

原创 RecyclerView 焦点问题(各种情况,默认不从顶部显示)

主要是利用这个descendantFocusability属性的三个值,来调整beforeDescendants:viewgroup会优先其子类控件而获取到焦点 afterDescendants:viewgroup只有当其子类控件不需要获取焦点时才获取焦点 blocksDescendants:viewgroup会覆盖子类控件而直接获得焦点面对情况不同建议三个value试一下。...

2018-07-17 16:26:36 4477 1

原创 网页优化-缓存并加载本地js,css等资源文件(有坑,内容中道出)

现在很多项目中多变化的页面更希望使用H5来实现,方便快捷,且不需要时刻的去升级版本。但在体验上H5还是没有原生的好,在native和H5之间的交互,已经webview加载的速度上都有一定的弊端,优化的方案很多,今天尝试了一下将js css等资源文件缓存到本地,这样后续加载网页的时候速度上就会快一些。 当然,真正影响加载速度的有大概几个点: 1.网页中的诸多请求 2.js的执行已经css样式的...

2018-06-02 18:35:26 4446

原创 Webview在RecyclerView中开启硬件加速闪屏问题解决

在项目中遇到一个问题:把Webview作为header加在Recyclerview中,开启硬件加速后,锤子手机闪屏严重,其他手机有闪屏,不算严重。但是关闭硬件加速网页会很卡,一直对于硬件加速闪屏问题不知怎么解决,尝试直接关闭Webview的硬件加速,但出现白屏现象,尝试了一下如果webview不加在Recyclerview中,不会出现闪屏,现就对于加在Recyclerview闪屏情况有个妙招解决,...

2018-05-25 17:55:59 2361 4

原创 RecyclerView抢夺item焦点,导致item自动向上滑动

使用了RecyclerView的布局文件代码:<android.support.v4.widget.SwipeRefreshLayout android:id="@+id/refreshLayout" android:layout_width="match_parent" android:layout_height="match_parent"

2018-05-04 16:21:02 4760

原创 Mac配置adb环境变量

1.打开terminal终端。 2.进入当前用户的home目录。 3.创建.bash_profile文件,输入命令:touch .bash_profile 4.打开.bash_profile文件,命令行输入open -e .bash_profile 此命令行输入完毕后,会自动弹出 .bash_profile 文件的编辑窗口 5.编辑.bash_profile文件,内容如下: ...

2018-04-02 16:47:57 385

原创 Cookie和Session

HTTP是一种无状态的协议,为了分辨链接是谁发起的,就需要我们自己去解决这个问题。不然有些情况下即使是同一个网站我们每打开一个页面也都要登录一下。而Session和Cookie就是为解决这个问题而提出来的两个机制。应用场景日常登录一个网站,今天输入用户名密码登录了,第二天再打开很多情况下就直接打开了。这个时候用到的一个机制就是cookie。session的一个场景是购物车,添加了商品...

2018-02-08 10:34:40 214

转载 音频的录制方式-AudioRecord,MediaRecorder的使用及播放

博客转移到个人站点:http://www.wangchengmeng.club欢迎来吐槽AudioRecord和MediaRecorder两种都可以录制音频,MediaRecorder已实现大量的封装,操作起来更加简单,而AudioRecord使用起来更加灵活,能实现更多的功能。1.AudioRecord(基于字节流录音) 优点:可以实现语音的实时处理,进行边录边播,对音频的实时处

2018-02-01 10:06:17 2184

原创 了解内存泄漏的根源

博客转移至个人站点:http://www.wangchengmeng.club/欢迎来吐槽优化是老生常谈的一个问题,也是一个广泛的概念,谈优化必不可少的就是内存优化,从而牵涉到内存泄漏和内存溢出等问题,关于内存泄漏的文章很多,再次复习一下,怎么去看代码是否会有内存泄漏,以及要怎么去解决。1.什么是内存泄漏?简单来说就是内存不在GC的掌控之内了,比如某个页面被销毁但是其中对象还持有该

2018-01-29 11:49:08 291

原创 入门Rx-Observable的创建方式

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/%E5%85%A5%E9%97%A8Rx-Observable%E7%9A%84%E5%88%9B%E5%BB%BA%E6%96%B9%E5%BC%8F/欢迎来吐槽/** * @author wangchengm * @desc 介绍最基础的rx使用方法,从rx1.0使用过度到rx

2018-01-24 17:52:44 3824

转载 lambda表达式---小知识

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/lambda%E8%A1%A8%E8%BE%BE%E5%BC%8F—%E5%B0%8F%E7%9F%A5%E8%AF%86/欢迎来吐槽lambda表达式:默认方法 lambda表达式 多次注解 今天我们就简要学习lambda表达式。配置开发环境 首先需要下载安装JDK1.8

2018-01-19 16:16:02 322

转载 全面屏手机的适配方案

博客转移到:http://www.wangchengmeng.club/2018/02/01/%E5%85%A8%E9%9D%A2%E5%B1%8F%E6%89%8B%E6%9C%BA%E7%9A%84%E9%80%82%E9%85%8D%E6%96%B9%E6%A1%88/欢迎来吐槽什么是全面屏 概念 很多人可能把全面屏跟曲面屏混淆,其实这是两个不同的概念。一般手机的屏幕纵横比为

2018-01-18 17:04:12 2104

原创 ButterKnife 从7.x升级到8.x带来的NullPointException

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/ButterKnife%E4%BB%8E7.x%E5%8D%87%E7%BA%A7%E5%88%B08.x%E5%B8%A6%E6%9D%A5%E7%9A%84NullPointException/欢迎来吐槽今天把自己的一套框架翻了一遍,该升级的升级,升级过程中除了一下改变小的开源框架,R

2018-01-09 11:18:17 695

原创 拖拽移动RecyclerView

博客移动到个人站点:http://www.wangchengmeng.club/2018/02/01/%E6%8B%96%E6%8B%BD%E7%A7%BB%E5%8A%A8RecyclerView/欢迎来吐槽自由拖拽的List和Grid(ps:样子有点丑,但是功能很需要)。ItemTouchHelper,对,就是它。1.定一个callback类,并实现ItemTouchH

2017-08-23 21:43:57 1138 2

原创 RecyclerView优雅的添加Header和Footer

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/04/RecyclerView%E4%BC%98%E9%9B%85%E7%9A%84%E6%B7%BB%E5%8A%A0Header%E5%92%8CFooter/欢迎来吐槽装饰模式:再现有类的基础上,对它进行包装从而对功能对增强。这里简单实现对RecyclerView的Adapter进行装

2017-08-16 14:38:21 563

原创 集成QQ钱包---踩坑

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/%E9%9B%86%E6%88%90QQ%E9%92%B1%E5%8C%85—%E8%B8%A9%E5%9D%91/欢迎来吐槽很多在在做支付宝支付,微信支付的时候都会踩到各种坑,但,踩的人多了后面的人就越发的顺利,现在做支付宝和微信支付很顺利的就完成,但是,QQ钱包我相信很多人很多项目都不

2017-08-15 10:32:02 4132 19

原创 NodeJs--事件驱动(EventEmitter)

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/NodeJs–%E4%BA%8B%E4%BB%B6%E9%A9%B1%E5%8A%A8%EF%BC%88EventEmitter%EF%BC%89/欢迎来吐槽EventEmitter:on: 绑定函数var connected = function connected(){con

2017-08-11 21:34:02 651

原创 到来的Rxjava2.0<一>

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/%E5%88%B0%E6%9D%A5%E7%9A%84Rxjava2.0/欢迎来吐槽背景一开始的使用Rxjava1.0,感觉到了很多好处,于是就自己研究并运用到项目中去,结合当今最流行的Retrofit2.0和MVP一起封装一套写起来就跟模板一样的框架,项目地址,但,就在两个多月前,R

2017-06-19 17:46:20 693

原创 关于EditText自动获取焦点的处理

EditText默认会自动获取到焦点,本次遇到到需求,就是在当前输入框修改资料,失去焦点或者点击软键盘的确认按钮就提交发布,为了体验,在获取焦点和失去焦点都对EditText背景颜色做了处理,此时就有个问题了,EditText默认就自动获取到焦点,没有点击去修改文本到时候就出现修改的状态。处理办法:EditText默认自动获取到焦点,可以在它到父布局中加入: android:

2017-06-14 16:38:18 1216

原创 关于微信支付的那些事

博客已经转移到个人站点: http://www.wangchengmeng.club/2018/02/01/%E5%85%B3%E4%BA%8E%E5%BE%AE%E4%BF%A1%E6%94%AF%E4%BB%98%E7%9A%84%E9%82%A3%E4%BA%9B%E4%BA%8B/欢迎来吐槽自己总结一下微信支付吧。微信app开发文档区: https://pay.weixin

2017-05-11 16:52:19 1390

原创 android WebView 加载重定向页面无法后退解决方案

博客转移到个人站点: http://www.wangchengmeng.club/2018/02/01/WebView%E5%8A%A0%E8%BD%BD%E9%87%8D%E5%AE%9A%E5%90%91%E9%A1%B5%E9%9D%A2%E6%97%A0%E6%B3%95%E5%90%8E%E9%80%80%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88/欢迎

2017-04-18 19:38:09 1406

原创 Mac下 Android studio常用快捷键的整理

博客转移到个人站点: http://www.wangchengmeng.club/2018/02/01/Mac%E4%B8%8BAndroidstudio%E5%B8%B8%E7%94%A8%E5%BF%AB%E6%8D%B7%E9%94%AE%E7%9A%84%E6%95%B4%E7%90%86/欢迎来吐槽刚进到一家公司,配备mac开发,一直熟悉于windows系统的小白,熟悉了一整天

2017-03-10 14:05:00 654

转载 关于重构,也许路还长

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/%E5%85%B3%E4%BA%8E%E9%87%8D%E6%9E%84%EF%BC%8C%E4%B9%9F%E8%AE%B8%E8%B7%AF%E8%BF%98%E9%95%BF/欢迎来吐槽如果你接手过中大型项目,做个很多个迭代,关于重构,你值得拥有。要跟上产品的节奏,迭代的步伐,重构是

2017-02-05 20:33:07 923

原创 回顾一下基础的细节

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/%E5%9B%9E%E9%A1%BE%E4%B8%80%E4%B8%8B%E5%9F%BA%E7%A1%80%E7%9A%84%E7%BB%86%E8%8A%82/欢迎来吐槽也许在逐渐的工作中,个人的技术知识在不断的成长,但往往会忽略掉一些基础细节知识,偶尔回顾一下,其实基础反而会更加突出

2017-01-08 17:09:05 700

原创 带你快速进入--Jquery的世界

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/%E5%BF%AB%E9%80%9F%E4%B8%8A%E6%89%8BJquery/欢迎来吐槽Jquery的使用1、引用的两种方式1、直接下载库,导入到你的工程中2、使用cdnJquery的语法jQuery 语法是通过选取 HTML 元素,并对选取的元素

2016-12-26 09:50:42 872

原创 应用接入微信登录-步步为赢

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/%E5%BA%94%E7%94%A8%E6%8E%A5%E5%85%A5%E5%BE%AE%E4%BF%A1%E7%99%BB%E5%BD%95-%E6%AD%A5%E6%AD%A5%E4%B8%BA%E8%B5%A2/欢迎来吐槽接入微信登录:1、准备工作1.在微信开放平台http

2016-12-23 09:47:35 3635 2

原创 JavaScrip--学习3

DOM://location对象 可以定位到指定地方 history可以back gofunction locationFuc() { var body = document.getElementsByTagName("body")[0]; for (var prop in location) { var elem = document.createEl

2016-12-16 10:15:51 337

原创 JavaScript--学习2

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/JavaScript–%E5%AD%A6%E4%B9%A02/欢迎来吐槽/============对象的创建================== ========/ //建立一个空对象var mObj = { };//添加属性 对象访问属性 两种方式mObj.name =

2016-12-16 10:06:06 415

原创 Android实现多点触控,自由缩放图片

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/Android%E5%AE%9E%E7%8E%B0%E5%A4%9A%E7%82%B9%E8%A7%A6%E6%8E%A7%EF%BC%8C%E8%87%AA%E7%94%B1%E7%BC%A9%E6%94%BE%E5%9B%BE%E7%89%87/欢迎来吐槽Android多点触控涉及到的

2016-12-11 16:37:43 2607

原创 掌握SurfaceView,实现抽奖大转盘

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/%E6%8E%8C%E6%8F%A1SurfaceView%EF%BC%8C%E5%AE%9E%E7%8E%B0%E6%8A%BD%E5%A5%96%E5%A4%A7%E8%BD%AC%E7%9B%98/欢迎吐槽使用surfaceView自定义抽奖大转盘话不多说,先上效果图

2016-12-03 16:02:08 1355

原创 Rxjava+MVP+Retrofit强强联合

博客转移到个人站点:http://www.wangchengmeng.club/2018/02/01/Rxjava+MVP+Retrofit%E5%BC%BA%E5%BC%BA%E8%81%94%E5%90%88/欢迎来吐槽作为一个已经在IT行业混搭了快三年的Android开发人员,一直熟悉与被所有人认同的MVC模式,并且通过学习也搭建有自己的网络框架,数据库ORM框架,所以在项目中一直也

2016-09-11 16:35:28 1500

原创 工作中快速混淆

博客转移到个人站点: http://www.wangchengmeng.club/2018/02/01/%E5%B7%A5%E4%BD%9C%E4%B8%AD%E5%BF%AB%E9%80%9F%E6%B7%B7%E6%B7%86/欢迎来吐槽其实混淆不需要很大的技术,只是一种规则,这种规则你在项目中遇到得越多,在你后期开发中做混淆就越快,只是一个积累的过程,在这里我就分享一下我项目中大概

2016-08-04 14:54:55 1323

原创 JavaScript---学习一

博客转移到个人站点: http://www.wangchengmeng.club/2018/02/01/JavaScript—%E5%AD%A6%E4%B9%A0%E4%B8%80/欢迎来吐槽JS书写的位置:1、直接在HTML标签中书写 //javascript代码2、在单独的文件中书写,链接到中3、直接使用 javascript:function()

2016-08-04 10:54:56 368

原创 Go语言的风雨历程-----基本的语法

最基本语法:package mainimport “fmt”func main(){ fmt.Printf(“Hello world”); }/********************变量的声明********************/package mainimport “fmt”func main(){ //声明变量 <1 先声明 再赋值 var a int;

2016-07-30 14:33:35 465

AndFix热修复方案

该文档是针对与安卓热修复介绍的已经Andfix的使用

2016-07-30

Git管理的策略-git flow

关于git 管理的的策略,在大型项目中一定要学会git flow这种思想,对开发有很大帮助

2016-07-12

开发工具包

实际开发中积累的工具类

2016-07-12

apkpatch工具

该工具是用来打补丁包,在热修复中会用到

2016-07-05

自定义Toast-电话归属地显示

自定义显示归属地样式的Toast,可自由拖动,可更改样式

2015-10-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除