自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

木木baby的博客

我将与你们共同成长

  • 博客(104)
  • 资源 (18)
  • 收藏
  • 关注

原创 LiveData源码分析

LiveData源码分析LiveData是Android提供的监听数据更新的框架,它能够感应Activity/Fragment的生命周期,接下来的内容我们来通过简单的用法去探索LiveData源码的核心知识点。LiveData感应生命周期的核心Android涉及到生命周期的时候,基本都是和Lifecycle类有关,我们先来看一下**LiveData.observe(LifecycleOwn...

2020-03-17 14:49:18 424

原创 ViewModel源码分析

ViewModel源码分析学习过ViewModel的都知道,ViewModel主要对数据进行存储维护,当在异常情况下(横竖屏)Activity被销毁的时候恢复数据。Android异常情况下维护数据的方法Activity.onSaveInstanceState和Activity.onRestoreInstanceStateFragmentActivity.onRetainNonConfig...

2020-03-14 17:04:05 230

原创 Mutidex源码分析和优化

Mutidex源码分析和优化因为单个DEX文件被限制在65535之内,在Android5.0以上的时候,Android系统开始支持多Dex,所以我们可以直接在build.gradle配置multiDexEnabled true就可以了,然后Android5.0以下仅仅支持单Dex,所以Google提供了相关的兼容库对Android5.0以下的系统进行兼容,这个兼容库就是Mutidex,接下我们将...

2019-10-19 10:15:47 359

原创 Android动画-Property Animation

Android动画-Property AnimationAndroid动画-Property Animation前言Property Animation 常见特性Property Animation是如何工作的Property Animation 和 View Animation的不同点ValueAnimatorObjectAnimatorAnimatorSet动画监听状态自定义TypeEva...

2019-07-18 19:26:17 289

原创 Android动画-Fling Animation

Android动画-Fling AnimationFling Animation也是一种基于物流的动画之一。它提供了一种物体运动减速的效果,受速度和摩擦力所影响,比如:[外链图片转存失败(img-VKgQGdZ4-1563080333644)(https://developer.android.com/images/guide/topics/graphics/fling-animation.g...

2019-07-14 12:59:30 1814

原创 Android 动画-View Animation

Android 动画-View AnimationAndroid 动画-View AnimationTween Animation通过xml配置文件创建动画通过Java对象创建动画Tween Animation 的监听事件重复模式解析Tween Animation 属性小结插值器小结Frame Animation使用Xml创建Frame Animation使用Java创建Frame Animati...

2019-07-05 14:45:55 235

原创 JsBridge框架原理全解析

JsBridge框架原理全解析前言JsBridge的整体框架JsBridge那些是值得我们学习的方面JsBridge是如何调用JavaScrpit方法的开源库是如何调用JavaScript的方法的呢?将参数封装为Message分发处理JsBridge是如何定义方法开放API给JavaScript调用的JsBridge接收到JavaScript的消息后如何处理总结前言GitHub源代码JsBr...

2019-06-19 09:37:22 2696 2

原创 WebView-JsBridge框架使用Demo

JsBridge框架使用前言JsBridge解决了那些问题JsBridge 搭建JsBridgeAPI使用Native调用JS的方法Native注册方法让JS调用设置默认的处理Handler给JS发送无需响应的数据前言GitHub源代码随着市面上WebApp应用的逐渐普及,Android中的WebView应用越来越广泛,使用WebView中比较经典的问题就是如何让Navtive和Js进行通信...

2019-06-13 20:52:34 1284

原创 Android-摄像头全解析之-Video应用

Android-摄像头全解析之-启用系统Video应用前言启动系统录制应用前言随着市面上越来越多的复杂应用出现,录制视频也是一个常用的社交功能点,这篇文章就来探讨一下,如何启用Android系统的应用,以及关于Android方面录制的相关信息。启动系统录制应用系统录制应用的注意事项和步骤几乎和拍照的一模一样,详细的步骤我就不详细说明了,有兴趣的伙伴可以先移步拍照系统应用进行详细了解。启动...

2019-06-04 16:32:54 767

原创 Android-摄像头全解析之-自定义拍照界面

Android-摄像头整理前言Android拍照功能实现的方式摄像头前言Android拍照功能实现的方式摄像头

2019-06-02 13:12:11 2975

原创 Android-摄像头全解析之-启用系统拍照应用

Android-摄像头全解析之-启用系统拍照应用前言调用Android的原生相机APP流程判断是否具备拍照功能拍照应用所需权限兼容6.0Android设备的运行时权限启动系统拍照应用更新图库前言原生Android 手机或平板有一个拍照APP,当我需要更少的步骤启用一个拍照功能的时候可以使用隐性跳转和系统的Android 拍照APP进行交互。调用Android的原生相机APP流程在注册清单...

2019-05-15 17:59:42 919

原创 Android-BroadcastReceiver(广播接收器)专题

Android 广播接收器专题前言BroadcastReceiver在Android中的应用场景BroadcastReceiver的注册分类通过清单文件注册广播(静态注册)通过上下文注册广播(动态注册)Broadcast如何发送发送Broadcast的分类如何发送Broadcast从安全性考虑如何防止别人侵入自己的广播代码为广播接收器添加权限使用LocalBroadcastManager代替Bro...

2019-04-03 20:50:45 890 1

原创 WebView套壳实战

WebView套壳实战经验分享前言WebView的初级使用WebView对象的创建WebSettings我们需要设置些什么WebSettings是什么WebSettings有那些需要关注的项目基础WebViewClient我们需要关注那些问题基础WebChromeClient我们需要关注那些问题加载远程Url加载本地的Url使用WebView关注的一些问题如何避免WebView内存泄漏我们应当如何...

2019-03-23 17:04:34 2173

原创 JNI开发专题

Android JNI开发(以Android Studio2.2以上为例)#Android 开发JNI的基础概念和工具JNI:Java Native Interface的java本地接口语言,在Android虚拟机提供若干API以实现JAVA和其他语言的通信(主要为C\C++).NDK:Android开发JNI的工具包。ndk-build:Android Studio2.2之前使用的打包...

2018-11-19 15:29:00 385

原创 Recyclerview专题-Recyclerview初体验

Recyclerview简述和兼容包Recyclerview是Android官方5.0以后提出的一个新Widgets,以解决ListView、GridView在复用优化时需要编写大量冗余代码的问题。使用前需使用版本兼容包:com.android.support:recyclerview-v7:${supportVersion} 为什么Recyclerview比ListView、GridV...

2018-11-14 09:02:45 228

原创 从头写一个项目之Android库的配置

从头写一个项目之Android库的配置###Android所需类库的脑图###从图中我们可以看出,Android必须依赖以下类型的库:Android依赖的原生UI扩展库和兼容库HTTP访问库本地数据库路由库JSON处理库图片库多Ddex支持库Kotlin支持库测试库RXJAVA相关类库多Module统一版本号解决方案真正开发环境中,我们不可能仅仅只支持一个Modu...

2018-11-02 16:01:53 244

原创 前端开发之原生Ajax的封装

因项目需要 封装一波Ajax的使用:ajaxUtils.js获取Ajax的对象:// ajax 对象function ajaxObject() { var xmlHttp; try { // Firefox, Opera 8.0+, Safari xmlHttp = new XMLHttpRequest(); } ...

2018-08-29 19:33:02 627

原创 GreenDao3.0 源码分析-Dao层

    Dao 是GreenDao进行数据查询的一层,起到非常重要的作用,今晚我们就来聊聊GreenDao是如何做增删改查的吧。    Order实体        我们从稍微复杂的Order进行分析,去除自动生成的代码,源实体是:        @Entity(active = true, nameInDb = "ORDERS")public class Order { @Id ...

2018-05-13 11:08:59 623

原创 GreenDao3 常见问题汇总

1.UNIQUE constraint failed: DEVICE_FIND_CONFIG_HELPER._id (code 1555)class android.database.sqlite.SQLiteConstraintException:code:  runtime解决办法:  首先entity中需要存在一个Long类型的主键(@Id(autoincrement = true) pri...

2018-05-08 23:01:07 679

原创 Arouter入门篇

    Aouter的一款由Ali团队开发的Android路由框架,本文旨在讲解Arouter官方网站的Demo,而不是自己的Demo,因为我觉得官方的Demo已经足够满足开发的业务需求,就不必自己再轮一篇,本文是对文档的一些补充。官方地址git clone https://github.com/alibaba/ARouter.git 神传送下载源码我们先来闲聊下我们项目中可能用到的跳转业务功能:...

2018-05-06 22:08:18 5417

原创 Android Studio 常见问题汇总

1.Error:com.android.dx.cf.code.SimException: invalid opcode ba (invokedynamic requires --min-sdk-version >= 26)解决方法:在build中加入implementation "com.google.guava:guava:23.0-android"2.  com.android.buil...

2018-05-06 21:37:37 7998 4

原创 Java代码生成框架-JavaPoet

介绍      JavaPoet是用于生成.Java源文件的Java API。         当处理诸如注释处理或与元数据文件交互(例如,数据库模式、协议格式)时,源文件生成可能非常有用。通过生成代码,您消除了编写样板文件的需要,同时也保留了元数据的单一来源。集成到项目中    <!-- https://mvnrepository.com/artifact/com.squareup/jav...

2018-05-06 17:14:49 3129

原创 GreenDao3.0 源码分析-DaoMaster和DaoSeesion

AbstractDaoMaster从图中我们知道,DaoMaster和AbstractDaoMaster是父子类的关系,我们先看AbstractDaoMaster:从上面类图中,我们知道daoMaster维护一个daoConfigMap以Dao.class为key维护一个映射关系,而且通过调用我们可以知道 AbstractDaoMaster的功能主要职责之一是创建注册DaoConfig,并且维护他...

2018-05-01 23:43:38 1944

原创 从头写一个项目---ToolBar的封装处理

    最近有感而发,突然想着建立一个项目的基础库,收集一些项目中常见的问题,并且作为一个独立的基础Lib。今天我们封装ToolBar来进行开发,ToolBar是一个高度可独立定制的标题栏,每个项目都必不可少。源码地址使用前的准备首先、我们需要用到ToolBar,高版本Activity必须继承AppCompatActivity,以前还有一个ActionBarActivity.其次、app要继承无A...

2018-05-01 12:13:07 581 2

原创 Vue开发-底部导航栏组件

不多说直接上代码 BottomNav.vue:<template> <div class="footer"> <div v-for='(item,index) of items' :class='[item.cls,{on:index === idx}]' @click="$router.push(item.push)"> <img :src=...

2018-04-29 17:42:05 10987 8

原创 Weex 实践常见错误

1.guide module build instace failed.java.lang.IllegalAccessException:因为Module的构造方法设置了私有。

2018-04-26 17:54:52 585

原创 GreenDao3.0源码分析-Helper

图片原图可以从github 源码地址 ->GreenDao 文件中 亿图 打开。GreenDao3.0源码架构图    上面是我画的GreenDao分层,我们将根据分层逐步分析原理。GreenDao3.0原理    从图中我们可以看到,其实GreenDao3.0是以Android Sqlite为底层,然后做一些缓存使得大数据的时候能更有效的增删改查。GreenDao最吸引我的:一是对缓存的处...

2018-04-22 22:16:50 1314

原创 如何使用AndroidStudio3.0生成一个Jar文件

build目录生成的关键文件    我们打包.Jar文件的编译文件 build.gradle 是通过 apply plugin: 'com.android.library' 修饰的library包,直接编译build就能在目录文件中找到.class文件 .class文件就是我们需要的.jar包。    Android Studio3.0的目录在build/intermediates/bundles...

2018-04-19 20:53:01 908 2

原创 Jnekins配置Android自动构建常见问题

1.'gradle.bat' 不是内部或外部命令,也不是可运行的程序 或批处理文件。gradle没有配置并且选择了默认的default.2.. AAPT err... ERROR: Unable to open PNG file这是由于AndroidStudio3.0引起的 ,网上多说在gradle.properties配置android.enableAapt2=false可以解决,然后亲测后发现...

2018-04-14 15:18:33 320

原创 Dagger2进阶-简说SubComponent和Qualifier

前言Dagger2的介绍和配置Dagger2基础的使用Dagger2进阶-编译生成源码解读Dagger2进阶-范围的控制(Scope和Singleton)Dagger2进阶-Scope的源码探究 Dagger2进阶-简说SubComponent和Qualifier...

2018-04-07 12:54:45 772

原创 Dagger2进阶-Scope的源码探究

前言 Dagger2的介绍和配置Dagger2基础的使用Dagger2进阶-编译生成源码解读Dagger2进阶-范围的控制(Scope和Singleton)Dagger2进阶-Scope的源码探究项目源码传送门学习了Scope,我们一定很疑惑为什么Scope注解只能做到对Component...

2018-04-07 11:26:19 563

原创 Dagger2进阶-范围的控制(Scope和Singleton)

前言 Dagger2的介绍和配置Dagger2基础的使用Dagger2进阶-编译生成源码解读Dagger2进阶-范围的控制(Scope和Singleton)Dagger2进阶-Scope的源码探究 项目源码传送门​​​​​​​注解解释 @Singleton:确定生成的类...

2018-04-07 00:12:02 1404

原创 Dagger2进阶-编译生成源码解读

前言Dagger2的介绍和配置Dagger2基础的使用Dagger2进阶-编译生成源码解读Dagger2进阶-范围的控制(Scope和Singleton)Dagger2进阶-Scope的源码探究 项目源码传送门​​​​​​​ 根据前面两...

2018-04-06 14:36:30 672 1

原创 Dagger2基础的使用

前言Dagger2的介绍和配置Dagger2基础的使用Dagger2进阶-编译生成源码解读Dagger2进阶-范围的控制(Scope和Singleton)Dagger2进阶-Scope的源码探究 项目源码传送门​​​​​​​ 这篇文章主要说关...

2018-04-06 10:59:24 952

原创 Dagger2的介绍和配置

前言Dagger2的介绍和配置Dagger2基础的使用Dagger2进阶-编译生成源码解读Dagger2进阶-范围的控制(Scope和Singleton)Dagger2进阶-Scope的源码探究 项目源码传送门​​​​​​​ Dagge...

2018-04-05 12:35:58 943

原创 如何实现反编译一个APP

前言:    开始反编译之前,我们要知道有三个工具,分别是apktool,dex2jar,jd-gui,其中apktool是用来反编译资源文件和注册清单这些资源的,dex2jar和jd-gui用来做java代码的反编译。反编译之前提醒大家以上工具尽量去官网下载新的版本,因为安全问题就是大家的攻防战,各大互联网公司也存在安全顾问,会做一些处理导致低版本无法反编译成功。    以下列出三个官网:   ...

2018-03-31 10:02:53 29528 6

原创 ImageLoader使用的DiskLruCache硬盘缓存算法

转载自:简书的排版 最近在研究ImageLoader的源码,发现一个硬盘缓存比较通用的类,这个类不属于谷歌官方却受官方亲睐,基本硬盘缓存都可以利用这个类来实现。 我们先来说一下缓存记录文件journal文件:journal文件作用:记录缓存的文件的行为:删除、读取、正在编辑等状态。 “` libcore.io.DiskLruCache 1 1 1DIRTY c3...

2017-09-20 14:14:17 583 2

原创 ImageLoader源码解析-----ImageLoader的结构

最近在研究ImageLoader的源码,希望能分享出自己的思路。具体源码移步Github下载:https://github.com/nostra13/Android-Universal-Image-Loader 我们先不急着对源码进行讲解,如果有什么失误请大家留言探讨,我们先来了解一下ImageLoader的相关类依赖简略结构图:从图中我们可以分为三层: 1:UI层。 2:加载展示逻...

2017-06-23 09:12:33 320

原创 使用Springmvc和commons-fileupload-1.2.2.jar实现上传文件时,中文文件名乱码

当我们使用其进行上传文件的编写时,我们会出现一个问题,就是中文文件名字的时候会出现乱码,这里需要我们设置一个encoding编码,但是我们操作后会发现,我们把web页面,编译器的都改为utf-8还是不能解决问题,其实问题出现在配置MultipartResolver处理器的时候 我们需要添加 红色标记文字:  class="org.springframework.web.multipar

2016-11-09 10:30:04 656

原创 使用SringMvc完成文件和图片上传功能

使用SringMvc完成文件和图片上传功能完成功能:文件上传图片上传多张图片上传

2016-11-08 23:14:26 958

保存反编译工具

保存反编译工具

2017-03-04

资源代码jar包

springmvc

2016-11-08

SpringMVC与Hibernate

SpringMVC与Hibernate整合所需jar

2016-11-07

springmvcs注释依赖包

springmvcs注释依赖包

2016-11-07

lucene课件

lucene课件

2016-10-31

Dbvisualizer破解补丁

Dbvisualizer破解补丁

2016-10-14

Redis win7 64位下载

redis的64位安装包下载

2016-10-13

RecyclerViewDemo

RecyclerViewDemo 里面保存有liary

2016-09-28

Otto实战例子

Otto的实战使用源码 希望能给你带来帮助

2016-08-26

ScrollView置顶

随着APP数据量的增大,电商APP的兴起,大家会经常使用到ScrollView,但是有时候我们滑下数据的时候会出现一个问题,那就当我们数据量太多时,我们无法快速的定位回ScrollView的顶部,以至于操作相同的数据导致我们兴致缺缺,所以诞生了一系列的辅助操作,今天我就带大家来探索淘宝的商品详情下的置顶按钮的开发流程

2016-08-02

强大的顶部导航栏

一个非常强大和简单操作的导航栏

2016-07-04

Struts框架基础包

Struts框架基础包 必须包括这些包才能开发

2016-04-18

滤镜CSS3效果

滤镜特效HML5+CSS3

2016-03-28

CSS3滤镜解决兼容性问题的文件包

解决CSS3网页兼容性问题

2016-03-28

自定义圆形进度条中间加图

智能家居常见圆形进度条

2016-03-16

安卓灵动菜单展开效果

一个非常美观的菜单联动特效 对于初级想了解的人来说非常不多

2016-02-29

Otto Jar包

otto jar可以实现组件之间轻型的通信

2015-11-06

图书管理系统java+mysql

很不错的源代码 毕业设计 参考 最新的源代码余图书管理系统

2015-05-18

空空如也

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

TA关注的人

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