自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

w_xue的专栏

低调做人,踏实做事

原创 gradle plugin调试

假设我们这里是开发一个按照如下方式依赖的annotationProcessor // app模块build.gradle annotationProcessor project(":router-compiler") 调试该插件需要做两件事情 以debug方式启动gradl...

2020-06-19 15:20:04 60 0

原创 配置npm普通用户全局安装

在linux或者osx环境下,由于npm全局安装的默认目录普通用户不可写入,导致很多用户使用root安装,后期普通需要使用root用户操作,带来诸多不便。 以下描述如何将npm包存放在当前用户的主目录.npm-packages中 创建目录 cd mkdir .npm-packages 告诉...

2020-06-17 10:29:57 75 0

原创 Flutter中无限循环消息轮播效果

我这里要实现的效果是一个垂直滚动的消息轮播,子视图的显示很自然的想到使用PageView来包裹,我们要做的有两件事 控制自动轮播 消息无限循环 第一个问题我们只需要新建一个Timer对象,定时调用PageView的翻页即可。 第二个问题我们只需要在数据源末尾再添加上第一笔数据,当PageVie...

2019-10-08 11:31:25 1649 1

原创 android点击EditText外区域收起键盘

在日常开发中,Activity中可能有比较复杂的布局,比如嵌套很多Fragment,所以针对该需求,通常的做法为放到Activity中统一处理。 常规思路为在dispatchTouchEvent中不拦截MotionEvent,但是会根据event是否落在EditText中做相应的处理,具体做法为 ...

2019-07-24 10:19:50 273 0

原创 adb一直提示无法连接

在实际开发中,经常遇到手机显示usb调试已连接,但是android studio中提示找不到设备。在终端中执行adb shell同样提示找不到设备。 搜索排查发现,需要采用如下命令启动adb方可看到错误信息 adb nodaemon server 我这提示的错误信息类似如下 adb E 6...

2019-05-20 14:28:26 420 0

原创 Jetpack Room使用

Room是安卓官方orm框架,用于简化Sqlite数据库的相关操作。使用Room通常步骤如下 声明依赖 定义数据库表,DAO,数据库类及升级策略 操作数据库 引入依赖 引入google官方maven仓库 allprojects { repositories { goog...

2019-04-09 16:17:16 1015 0

原创 Jetpack navigation组件使用

类似于ios开发中的storyboard,android studio 3.2中引入了可视化导航。之前Activity和Fragment的跳转代码样式化且易出错,通过使用Jetpack中navigation组件,开发人员可以更直观的维护界面跳转。 使用时需要引入依赖 implementat...

2019-04-08 19:49:25 556 0

原创 Android Device Monitor官方替代工具

随着android ide的升级,之前的一些调试工具逐渐废弃并被新的工具替代。之前大部分的调试工具都位于Android Device Monitor中,该工具集在android studio 3.1中被废弃并在android studio 3.2中被移除。如下表格列出以前Android Devic...

2019-03-18 20:22:21 3510 0

原创 flutter布局的基本概念

本文记录开发过程中看到的零散细节 Constraints 在flutter视图布局中,parent widget中会给child设置布局约束,包含 isTight: 是否是固定尺寸,比如BoxConstraints的min max均一致时isTight返回true isNormalized: 约束...

2019-01-29 16:44:07 226 0

原创 添加flutter模块到现有android项目

参考https://github.com/flutter/flutter/wiki/Add-Flutter-to-existing-apps 创建flutter module项目 比如现有android项目的目录为~/myDemo/,则直接在原有项目同级目录~下执行如下命令创建flutter mo...

2019-01-15 16:30:40 2226 0

原创 迁移到androidx

官方早就推荐将support库迁移到androidx,因为后续support库不会再做更新。 参考官方文档https://developer.android.com/jetpack/androidx/migrate 其实只需要3.2版本的android studio,在菜单refactor中点击m...

2019-01-14 16:25:59 733 0

原创 react native 两周学习笔记

搭建demo环境 预期时间:1天 参照https://reactnative.cn/搭建编译环境,在真机上跑demo 2018-09-05 电脑有现成的android编译环境,已经安装node 8,已配置npm镜像,已 安装react-native模块。 ide使用webstorm,同时...

2018-09-06 19:53:27 286 0

原创 RecyclerView 问题记录

1.调用更新数据后发现界面不展示,从layout inspector看到recyclerview中无子控件,检查发现没有设置LayoutManager。更离谱的是检查代码时还比对https://github.com/drakeet/MultiType 的sample code来对比,估计drake...

2018-09-04 10:43:41 55 0

原创 docker的安装与镜像仓库

收藏网易docker镜像地址 https://www.163yun.com/help/documents/56918246390157312 下载image使用网易公共仓库 docker pull hub.c.163.com/nce2/ubuntu:16.04 仓库地址 https://...

2018-08-16 16:19:45 640 0

原创 RxPermission源码笔记

只需要写如下代码,即可使用rxPermission实现动态获取权限,不需要activity重写任何代码 RxPermission rxPermission = new RxPermission(this); rxPermission.requestPermission(Permission.Ca...

2018-08-05 10:48:59 349 0

原创 install tomcat on linux

ubunt16.04,comcat 9 core package tailed with tar.gz unzip package sudo su // switch to root cp apache-tomcat-9.0.10 /opt/ cd /opt/ tar vzxf apac...

2018-07-29 18:16:56 74 0

原创 安卓渠道包

packer-ng-plugin walle 其中walle是支持最新的SchemaV2签名的。 渠道包不推荐通过flavor来配置,在进行热更新的时候需要多个基线包。

2018-06-27 18:50:50 160 0

原创 mac下常见软件源镜像

macos下brew更新软件时使用默认源很麻烦,替换清华源直接参考https://mirrors.tuna.tsinghua.edu.cn/help/homebrew/ 摘抄如下 该镜像是 Homebrew 的 formula 索引的镜像(即 brew update 时所更新内容)。本镜像站同...

2018-06-26 14:30:54 1770 0

原创 配置gitbook自动发布

目标 代码托管在gitlab,提交后本地电脑jenkins编译生成静态网页并上传网站到阿里云服务器。 阿里云服务器配置 1.安装nginx apt install nginx 控制台开放80 443端口,此时可以直接在其它电脑访问hello nginx 2.安装ftpd 参考ht...

2018-06-15 11:36:33 1418 0

原创 flutter配置国内镜像

flutter工程首次运行时需要获取依赖包,此时需要使用全局vpn,或者使用国内镜像。 linux下配置全局环境变量 export PUB_HOSTED_URL=https://pub.flutter-io.cn export FLUTTER_STORAGE_BASE_URL=https://...

2018-06-02 15:52:06 14820 0

原创 gitbook搭建

参照https://github.com/GitbookIO/gitbook/blob/master/docs/setup.md 常见配置: 代码高亮,在md文件中代码块指定语言类型即可 二级目录,在SUMMARY中采用缩进语法即可,如 * [关于](README.md) * [组件]...

2018-05-12 10:44:28 1919 0

原创 kotlin学习笔记-2-基础语法

kotlin学习笔记,基础语法

2017-10-07 16:26:01 306 0

原创 kotlin学习笔记-1-初步了解

记录kotlin的学习

2017-10-07 15:27:21 209 0

原创 RxJava 2 (二) 基本原理

在上一篇文章中,我基于Obervable类介绍了RxJava的基本用法,这里讲一下基本原理

2017-09-06 19:19:42 329 0

原创 RxJava 2(一)基本使用

RxJava是ReactiveX在java平台上的实现。ReactiveX: An API for asynchronous programming with observable streams。本文基于RxJava 2.1.2描述基本使用,熟悉基本概念。

2017-09-06 14:33:53 442 0

原创 ScrollView嵌套可滚动View

在实际项目需求中,经常会遇到ScrollView嵌套纵向可滚动的View,比如ListView,TextView。在默认情况下,ScrollView检测到纵向有滚动就会intercept touch事件然后滚动自身,导致子View根本无法滚动。网友的大部分做法是在子View检测到Down事件时马上...

2017-08-30 20:39:55 363 0

原创 为nexus 5x编译android n固件

作为安卓从业人员,我们经常希望可以单步调试framework代码,可以方便的调试第三方应用。模拟器一般来说太慢,而且模拟器和官方sdk代码一样对应不上。最好的办法就是自己为nexus手机编译userdebug固件,本文以nexus 5x为例记录编译实践。

2017-08-19 22:59:47 1466 0

原创 开启应用调试属性

安卓应用是否可以被调试,取决于两个地方,一个是系统的ro.debuggable属性,另外一个是应用的debuggable属性。通常我们要调试第三方app,需要打开系统的可调试属性。

2017-08-17 14:47:45 268 0

原创 android l 中AppWidgetService的启动

在android l中,系统服务的启动分为6个启动阶段,定义在SystemServer类中,大部分服务继承自SystemService类,通过重写onStart方法实现自身的初始化,同时可以重写onBootPhase方法来监听启动流程,以便在合适的时候执行相应动作,这些方法会由SystemServ...

2015-03-05 17:41:44 1867 0

原创 app widget 显示流程

在前面提到app widget的添加流程,最后一步为实例化一个AppWidgetHostView然后添加到Launcher中,我们重点看一下AppWidgetHost.createView方法,代码大致如下: /** * Create the AppWidgetHostView ...

2015-02-02 15:16:16 1006 0

原创 app widget添加流程

先看一下app widget的添加代码,此处直接引用http://www.cnblogs.com/wanqieddy/archive/2012/05/05/2484533.html的代码 package com.qin.addappwidget; import android.ap...

2015-01-30 18:12:19 1671 0

转载 详解eclipse断点

http://blog.csdn.net/chengc017/article/details/7182147 大家肯定都用过Eclipse的调试的功能,在调试的过程中自然也无法避免要使用断点(breakpoint),但不知是否对Eclipse中各类断点都有所了解。本篇图文并茂地介绍了Ecli...

2015-01-29 11:45:27 486 0

转载 如何在android下使用binder

转载原地址:http://blog.csdn.net/yueliangniao1/article/details/7188549 1概述 Binder是基于OpenBinder,在Android系统上使用的进程间通信机制。 Binder基于Client-Serve...

2015-01-20 20:39:58 817 0

原创 android Parcelable类

android Parcelable类表示该类可以用来序列化,打包为数据流对象Parcel,通常用于进程间通信传递自定义数据类型。 Parcel也相应的提供了一系列write/get方法方便打包和解包Parcel类。 需要实现的方法主要是如何打包和解包Parcel类,具体如下: /**...

2015-01-20 17:42:17 510 0

原创 android appwidget service的初始化

开机之后在system server启动AppWidgetService 会创建AppWidgetService的实例,并调用AppWidgetService的SystemReady方法 在此方法中完成了Widget的初始化和载入工作,主要是做了三件事情 1.遍历所有安装包,找到符合条件的(ACT...

2014-09-11 17:20:02 1458 0

原创 ubuntu安装多版本JDK

我目前的环境是ubuntu 13.10 64bits,系统默认安装openJDK 1.7,但是编译android source code要求JDK版本为1.6 1. 下载JDK 到java官网http://www.oracle.com/technetwork/java/javase/downloa...

2014-09-04 10:36:36 2830 1

原创 图片加载

1.加载图片到ImageView中 通常我们并不知道图片有多大,所以

2014-08-15 15:26:51 580 0

原创 android开发环境网络代理设置

针对android开发环境的更新经常会出现连接问题,所以

2014-06-05 11:23:02 1545 0

原创 git 命令常见用法

1. git的配置 git config --global

2014-05-31 12:35:37 798 0

原创 apk反编译

针对没有混淆的android应用,我们可以很

2014-05-27 11:07:27 806 0

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