Martinmu2013
码龄12年
关注
提问 私信
  • 博客:209,057
    社区:115
    209,172
    总访问量
  • 57
    原创
  • 369,836
    排名
  • 85
    粉丝
  • 0
    铁粉

个人简介:Simple is beautiful.---Martin

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2013-06-24
博客简介:

Martin.Mu `s Special Column

博客描述:
If you doubt yourself , then indeed you stand on shaky ground .
查看详细资料
个人成就
  • 获得73次点赞
  • 内容获得39次评论
  • 获得365次收藏
  • 代码片获得170次分享
  • 博客总排名369,836名
创作历程
  • 7篇
    2020年
  • 35篇
    2019年
  • 8篇
    2018年
  • 7篇
    2016年
  • 8篇
    2015年
  • 1篇
    2013年
成就勋章
TA的专栏
  • 定制ROM采坑之路
    6篇
  • Jetpack
    2篇
  • 网络协议
  • Android基础知识
    16篇
  • Android进阶知识
    22篇
  • 安全与逆向
    6篇
  • 搭建研发环境
    15篇
  • 大数据
    6篇
  • Java
    2篇
  • 数据结构与算法
    1篇
  • bug
    3篇
兴趣领域 设置
  • 软件工程
    性能优化
创作活动更多

王者杯·14天创作挑战营·第2期

这是一个以写作博客为目的的创作活动,旨在鼓励码龄大于4年的博主们挖掘自己的创作潜能,展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴,那么,快来参加吧!我们一起发掘写作的魅力,书写出属于我们的故事。 注: 1、参赛者可以进入活动群进行交流、分享创作心得,互相鼓励与支持(开卷),答疑及活动群请见https://bbs.csdn.net/topics/619735097 2、文章质量分查询:https://www.csdn.net/qc 我们诚挚邀请你们参加为期14天的创作挑战赛!

66人参与 去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

RxCache使用场景记录

场景一个需求,构建UI数据时,需要组装数据,我们将数据分为两类,一类为配置数据、一类为UI框架数据。框架数据依赖配置数据进行数据组装,配置数据特性为长期保持不变。针对这个特性,我们可以将配置数据json保存到本地,设置超期时间,不用频繁的进行网络访问。对此,我们进行RxCache库的使用,该库通过注解的设置可以网络数据保存到制定文件目录下。具体的使用方法可以参考《Android RxCache使用详解》。踩坑在配置过程中,我没有直接按照上面的方式进行访问,得到了类型转换错误,查看原因是保存的json
原创
发布博客 2020.08.10 ·
377 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JetPack之DataBinding的使用

前言这篇文章主要讲解JetPack中的DataBinding组件的使用。Data Binding解决问题:当界面被改写的时候,Activity中的控件代码也必须被改写。为了避免这个问题的发生,使用了databinding。Build.gradle配置项目使用dataBinding功能defaultConfig{ ... dataBinding{ enabled tr...
原创
发布博客 2020.03.31 ·
596 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

性能优化系列——内存泄漏

前言之前写了一篇《性能优化系列-内存抖动》简单实用Memory Profiler工具解决内存抖动的情况,这边文章写实用工具配合MAT解决内存泄漏。内存泄漏介绍定义:内存中存在已经没有用的对象表现:内存泄漏引起,内存泄漏,可用内存逐渐减少,系统为了增加可用内存就会一直GC,导致内存抖动。危害: 内存不足、GC频繁、OOMMemory AnalyzerDownload转换HR...
原创
发布博客 2020.02.05 ·
498 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

性能优化系列——内存抖动

前言通常在我们编写程序的时候,如果对象频繁的创建或者销毁就会出现内存抖动的现象,如果我们熟悉Java虚拟机的内存回收机制的话,会造成下面两种现象。频繁创建对象,导致内存不足以碎片(不连续)不连续的内存片无法被分配,导致OOM今天我们就针对这种情况,来使用模拟解决此类问题。用例代码此用例通过不停的创建字符串数组来造成内存抖动。MemoryShakeActivityclass Me...
原创
发布博客 2020.02.05 ·
666 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

JetPack系列之ViewModel进行数据共享

前言目前Fragment的传值可以使用Bundle,JetPack使用数据分离的思想,利用ViewModel来达到Fragment之间传值的写法,下面我来讲解下。开始需求项目的需求是我们在Fragment1中使用SeekBar对数据进行修改,点击跳转下一页,将Fragment1的值带入到Fragment2中,同时Fragment2修改值后返回到Fragment1,并同步修改的值。Glo...
原创
发布博客 2020.01.20 ·
1682 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

JetPack系列之lifecycle的简单实践

前言lifecycle 通过注解的方式,轻松监听Activity的声明周期。开始集成类库build.gradleimplementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'编写注解类@OnLifecycleEvent注解可以监听声明周期class MyChronmeter(context: Context?,...
原创
发布博客 2020.01.20 ·
223 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

AIDL服务调用简单实践

前言开启跨进程服务创建两个AppServiceAppClientAppServiceApp创建RemoteAppService服务public class RemoteAppService extends Service { @Nullable @Override public IBinder onBind(Intent intent) { ...
原创
发布博客 2020.01.19 ·
201 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

RadioButton的简单实践

前言今天来实现一个设计图中的tab切换按钮,只需要点击切换不需要滑动,所以我直接锁定了RadioButton来实现。样式背景图上面的tab切换可以看见外观是矩形圆角,但是我用RadioButton是左右两个按钮,所以需要两个背景图。manual_tab_radio_select<?xml version="1.0" encoding="utf-8"?><selec...
原创
发布博客 2019.12.13 ·
179 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

QMUI中Theme的抽象、继承、多态

前言CheckedTextView <CheckedTextView android:id="@+id/select" android:layout_width="match_parent" android:layout_height="wrap_content" tools:text="textview" ...
原创
发布博客 2019.12.02 ·
618 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

最简单实用的的Click防抖代码

public abstract class OnSingleClickListener implements View.OnClickListener { /** * 最短Click的时间间隔 */ private static final long MIN_CLICK_INTERVAL = 1000; /** * 最近一次点击事件 ...
原创
发布博客 2019.11.28 ·
903 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android开发速查手册

前言这里会对所有通用UI的相关的知识点进行一个速查手册字符串字符和样式
原创
发布博客 2019.11.26 ·
677 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

使用图片混合模式改变点亮图标

前言今天使用ImageView.setColorFilter()方法的时候,在A界面改变一个drawable状态,其他B,C,D…若引用了这个drawable则会同样的进行状态改变,我想这应该是android的内存优化的机制,下面我先来简单整理梳理下知识。点亮图标如果常做应用App开发,通常会有一个图标点亮的功能需求。改变当前图标的颜色,用于表示该操作处于某个状态。一般的操作,可能直接准...
原创
发布博客 2019.11.26 ·
191 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Java技巧-简单状态机编写

前言最近项目中需要对上传的接口进行顺序上传和步骤记录,所以这里编写一个状态机用例。实战public class StatusMachine { //重点1:状态值是固定的写法 @Retention(RetentionPolicy.SOURCE) public @interface Satus{ int STEP1 = 0x000001; ...
原创
发布博客 2019.11.22 ·
816 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android常见异常记录和排查技巧手册

前言记录下在工作中常见异常的出现和排查手段。异常数据库篇RoomIllegalStateExceptionW/System.err: java.lang.IllegalStateException: Room cannot verify the data integrity. Looks like you've changed schema but forgot to update t...
原创
发布博客 2019.11.20 ·
720 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

sqlcipher.zip

发布资源 2019.09.02 ·
zip

RxJava的应用场景记录

这篇文章主要编写的是我在工作中使用Rxjava后遇见的异常处理的解决思路,方便以后在工作中进行查询。
原创
发布博客 2019.06.12 ·
890 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

安卓build.gradle的配置应用场景

前言最近项目需要进行签名打包的时候比较多,简单记录下打包需要编写的文件,方便以后拷贝和查询。打包流程编写app模块下的build.gradle文件首先,gradle是线性翻译的语音,这里需要注意下闭包的编写顺序。整个打包入口在android.applicationVariants.all触发的,打包的时候可以获取到配置当前清单文件的版本号,文件等。apply plugin: 'com.a...
原创
发布博客 2019.05.30 ·
430 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

android中使用sqlite命令编辑数据库

参考链接Android数据库高手秘籍(一)——SQLite命令查询语法SELECT column_name,column_nameFROM table_name;模糊查询语法SELECT column_name(s)FROM table_nameWHERE column_name LIKE pattern;查询以.amr结尾的数据select * fro...
原创
发布博客 2019.05.22 ·
500 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

adb常用命令

前言最近在开发当中会经常使用adb命令去进行日志排查,这里列举一下常用的命令。方便后期使用,这里实时更新。常用命令卸载应用:adb uninstall 包名例:卸载微信adb uninstall com.tencent.mm安装应用:adb install 安装包路径.apk例:安装当前目录下的test.apkaddb install test.apk启动...
原创
发布博客 2019.05.06 ·
280 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

定制化ROM采坑之路:git的常用命令

这篇文章分为三个部分:第一部分讲解Git的历史和基本概念第二部分讲解常用命令。第三部分为工作中的一些实际操作问题。
原创
发布博客 2019.04.01 ·
637 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏
加载更多