自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 资源 (11)
  • 收藏
  • 关注

原创 异常捕捉日志

第一步,重写UncaughtExceptionHandler类public class UnCatchException implements UncaughtExceptionHandler { private UncaughtExceptionHandler mDefaultHandler; public static final String TAG = "CatchExcep"...

2018-05-10 17:05:08 269

转载 String StringBuffer StringBuilder三者区别

最近在学习Java的时候,遇到了这样一个问题,就是String,StringBuilder以及StringBuffer这三个类之间有什么区别呢,自己从网上搜索了一些资料,有所了解了之后在这里整理一下,便于大家观看,也便于加深自己学习过程中对这些知识点的记忆,如果哪里有误,恳请指正。  这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面。首先说运行速度,或者说是执行速度,在这方面运行速...

2018-05-04 10:34:01 160

转载 handler机制源码解析

handler机制源码解析

2018-04-24 10:57:23 208

转载 Android数据加密之异或加密算法

前言:      这几天被公司临时拉到去做Android IM即时通信协议实现,大致看了下他们定的协议,由于之前没有参与,据说因服务器性能限制,只达成非明文传递,具体原因我不太清楚,不过这里用的加密方式是采用异或加密。这种加密方式在之前做Android加密记事本的时候采用过这种加密方式。今天已经把客户端心跳维持、数据包解析对接完了,总结一下这种加密方式。    其他几种加密方式:Android数据...

2018-04-11 09:40:13 212

转载 Android数据加密之Base64编码算法

前言:      前面学习总结了平时开发中遇见的各种数据加密方式,最终都会对加密后的二进制数据进行Base64编码,起到一种二次加密的效果,其实呢Base64从严格意义上来说的话不是一种加密算法,而是一种编码算法,为何要使用Base64编码呢?它解决了什么问题?这也是本文探讨的东西?     其他几种加密方式:Android数据加密之Rsa加密Android数据加密之Aes加密Android数据加...

2018-04-11 09:39:37 236

转载 Android数据加密之MD5加密

前言:      项目中无论是密码的存储或者说判断文件是否是同一文件,都会用到MD5算法,今天来总结一下MD5加密算法。什么是MD5加密?     MD5英文全称“Message-Digest Algorithm 5”,翻译过来是“消息摘要算法5”,由MD2、MD3、MD4演变过来的,是一种单向加密算法,是不可逆的一种的加密方式。     其他几种加密方式:Android数据加密之Rsa加密And...

2018-04-11 09:38:47 672

转载 Android数据加密之Des加密

前言:     端午节前有个同事咨询我有关Android DES加密的相关实现,简单的实现了一下,今天来总结一下。     其他几种加密方式:Android数据加密之Rsa加密Android数据加密之Aes加密Android数据加密之Des加密Android数据加密之MD5加密Android数据加密之Base64编码算法Android数据加密之异或加密算法DES加密介绍:     DES是一种对称...

2018-04-11 09:38:00 175

转载 Android数据加密之Aes加密

前言:    项目中除了登陆,支付等接口采用rsa非对称加密,之外的采用aes对称加密,今天我们来认识一下aes加密。     其他几种加密方式:Android数据加密之Rsa加密Android数据加密之Aes加密Android数据加密之Des加密Android数据加密之MD5加密Android数据加密之Base64编码算法Android数据加密之异或加密算法什么是aes加密?     高级加密标...

2018-04-11 09:37:21 390

转载 Android数据加密之Rsa加密

前言:     最近无意中和同事交流数据安全传输的问题,想起自己曾经使用过的Rsa非对称加密算法,闲下来总结一下。     其他几种加密方式:Android数据加密之Rsa加密Android数据加密之Aes加密Android数据加密之Des加密Android数据加密之MD5加密Android数据加密之Base64编码算法Android数据加密之异或加密算法什么是Rsa加密?RSA算法是最流行的公钥...

2018-04-11 09:35:10 177

原创 JAVA高级排序

高级排序-------希尔排序原理:将无序数组分割为若干个子序列,子序列不是逐段分割的,而是相隔特定的增量的子序列,对各个子序列进行插入排序;然后再选择一个更小的增量,再将数组分割为多个子序列进行排序......最后选择增量为1,即使用直接插入排序,使最终数组成为有序。 增量:希尔排序通过加大排序中元素之间的间隔,并在这些有间隔的元素中进行插入排序,从而使数据项能大跨度地移动。当这些数据项排过一趟...

2018-04-09 11:28:06 180

原创 MVP架构浅析

引言Android代码在没有应用MVP架构时,很多人认为符合MVC:·        View:对应于布局文件·        Model:业务逻辑和实体模型·        Controllor:对应于Activity 这个View对应于布局文件,其实能做的事情特别少,实际上关于该布局文件中的数据绑定的操作,事件处理的代码都在Activity中,造成了Activity既像View又像Contro...

2018-04-03 16:44:45 200

转载 AndroidStudio使用CMake编译jni的C/C++文件

Android开发主流工具已变成AndroidStudio,新版AS已经支持CMake编译工具,可以用于编译C/C++文件,增强了Android调用jni代码的便捷性。相比于之前繁杂的ndk配置方式,cmake较为简单方便。1、添加CMake支持首先使用的AndroidStudio必须是2.2以上版本,在settings–Appearance&Behavior–System Setting...

2018-04-02 15:44:48 252

原创 在服务中弹出dialog

此处介绍两种实现方法,仅供参考以及自己记录方式一:使用系统弹框实现1.在清单文件中配置权限<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />2.在service中实现AlertDialog dialog = new AlertDialog.Builder(getApplicationCont...

2018-03-27 16:20:04 351

原创 判断程序是否在后台运行工具

public class AppUtils {    /**     * 判断应用是否在后台     */    public static boolean isBackgroundRunning() {        try {            Context context = BaseApp.getInstance();            if(context == null) r...

2018-03-27 11:47:09 253

转载 仿小米日历功能,Android week view

前言最近由于项目需求,要做一个仿小米日历的功能,下面显示一天的日程,header以周为单位进行滑动,github上找了很久也没有找到合适的,但找到一相近的开源项目Android-week-view,它不是我们项目所需要的效果,但是它帮我们实现的Event的添加和事件的处理,这让我们省了不少工作,Android-week-view效果如下图      废话不多说,先看看我项目中的效果        ...

2018-03-15 11:09:39 1918

转载 热修复原理

一、简述热修复无疑是这2年较火的新技术,是作为安卓工程师必学的技能之一。在热修复出现之前,一个已经上线的app中如果出现了bug,即使是一个非常小的bug,不及时更新的话有可能存在风险,若要及时更新就得将app重新打包发布到应用市场后,让用户再一次下载,这样就大大降低了用户体验,当热修复出现之后,这样的问题就不再是问题了。目前较火的热修复方案大致分为两派,分别是:阿里系:DeXposed、andf...

2018-03-06 17:27:25 353

转载 使用ADB输出日志文件

有时候需要把运行日志保存下来,在IDE上直接看一不小心之前的日志就不见了。12配好环境变量后就可以在cmd中使用adb命令了。打印日志命令是adb logcat 如果连接有多个设备的话,先用adb devices找到要打印的设备的名字,然后在logcat钱加上 -s 名字 ,这样就会打印指定设备的日志,不然会报存在多个设备的错误。有多个设备下的adb命令都要这样指定设备名。 使用下面的命令输出日...

2018-03-06 09:47:55 9203

转载 通过apk安装包获取sha1的值

直接用打包出来的apk查看签名,具体如下:1) 将apk修改后缀为 .rar文件后解压;2) 进入解压后的META-INF目录,该目录下会存在文件CERT.RSA3) 在该目录下打开cmd,输入命令 :keytool -printcert -file CERT.R...

2018-02-28 09:52:51 2906

转载 productFlavors 用法(多包)

Android gradle的功能非常强大,用这篇文章简单介绍一下gradle中productFlavors的用法。productFlavors顾名而思义,就是用于定义产品的特性,这是每个产品不同的地方。有了它我们可以用同一套代码创建不同的产品。设置productFlavors的方法如下: 在build.gradle中加入productFlavor...

2018-02-27 16:44:25 458

原创 Error running app: Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled.

android studio 问题(详细错误如下)Error running app: Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled.adb没有打开,你要去菜单里设置

2018-02-27 10:24:06 96

转载 AppOpsManager权限检测适配

导语android碎片化相信是每一个android开发者的痛。机型适配也是难以绕过去的坎。这其中Android动态权限检测适配,相信对于很多开发者来说,都是被按在地上摩擦摩擦。本文就针对Android权限动态检测提出一种解决方案。一、Android权限介绍谈起Android权限机制,很多人都会想到Google在Android 6.0 提出运行时权限管理机制(Android Runtime P

2018-01-18 10:30:40 1122

转载 binder机制流程简介

而在Android中,并没有使用这些,取而代之的是Binder机制。Binder机制是采用OpenBinder演化而来,在Android中使用它的原因如下:采用C/S的通信模式。而在linux通信机制中,目前只有socket支持C/S的通信模式,但socket有其劣势,具体参看第二条。有更好的传输性能。对比于Linux的通信机制,socket:是一个通用接口,导致其传输

2018-01-12 14:52:04 674

原创 自定义圆形进度条

在此写一个自定义的圆形进度条来进一步巩固自定义控件的基本用法1、自定义属性2、获取自定义属性,并初始化画笔等相关控件3、通过onDraw方法进行绘制步骤一、在values中创建attrs.xml编写自定义的属性name="RoundProgressBar"> name="roundColor" format="color"/> name="roundProg

2018-01-11 15:43:25 135

原创 自定义控件之自定义属性(自定义控件一)

步骤一、编写自定义属性xml version="1.0" encoding="utf-8"?> name="titleText" format="string" /> name="titleTextColor" format="color" > name="titleTextSize" format="dimension" /> name="

2018-01-11 14:14:27 228

原创 Bugly使用官方文档

Bugly Android SDK 使用指南库文件导入自动集成(推荐)集成SDK同时集成SDK和NDK手动集成参数配置最简单的初始化MultiDex注意事项增加上报进程控制测试库文件导入Bugly支持自动集成和手动集成两种方式,如果您使用Gradle编译Apk,我们强烈推荐您使用自动接入方式配置库文件。自动集成(推荐)Bugly支

2018-01-10 14:10:51 2207

原创 Retrofit+Rxjava结合使用封装

前面已经单独介绍了Retrofit和Rxjava的使用,不懂的伙伴可以查看http://blog.csdn.net/qq_34211554/article/details/78981093 Retrofit使用介绍http://blog.csdn.net/qq_34211554/article/details/78982301 Rxjava使用介绍现在对两者结合进行封装一、

2018-01-08 11:38:10 263

原创 Rxjava的使用介绍

Rxjava核心思想就是运用了观察者模式他的核心类就是Observable(被观察者,事件的发起者)以及Subscribers(观察者,事件处理者)observable发起事件,subscribers通过方法onNext()来对事件进行处理,最后调用subscribers的complete方法或者onError方法结束Rxjava的使用一、创建一个被观察者Observabl

2018-01-05 16:44:18 171

原创 Retrofit的使用

现在很流行Retrofit+Rxjava进行网络相关请求,自己就进行了一下了解,在此记述首先了解Retrofit是什么:Retrofit网上看的是okhttp的封装,真正的网络请求其实还是okhttp进行的,Retrofit只是对他的相关接口进行了封装,使用起来更加方便快捷用法:一、在gradle中添加依赖compile 'com.squareup.retrofit2:re

2018-01-05 15:55:42 182

原创 viewpager+fragment的使用

布局xml version="1.0" encoding="utf-8"?>xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:clipT

2018-01-04 11:52:21 214

原创 使用MediaRecorder录制视频

布局 xml version="1.0" encoding="utf-8"?>xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/t

2018-01-02 16:09:10 1031

转载 DiskLruCache

点击打开链接

2018-01-02 11:22:39 106

原创 ListView加载图片错乱问题

常用方法,给显示图片控件添加Tag值(一般为图片url地址) 先看listview条目布局RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"     xmlns:tools="http://schemas.android.com/tools"     android:layou

2018-01-02 10:29:36 444

原创 图片压缩相关

一、质量压缩 private Bitmap compressImage(Bitmap image) {           ByteArrayOutputStream baos = new ByteArrayOutputStream();         image.compress(Bitmap.CompressFormat.JPEG, 100, baos);//质量压缩

2018-01-02 10:18:49 80

转载 使用aidl实现进程间通信

论坛问答活动码云商城ITeye极客头条该工具可以把一个aidl文件转换为一个Java类文件,在该Java类文件中,同时重载了transact()和onTransact()方法,统一了存入包裹和读取包裹参数,从而使设计者可以把注意力放到服务代码本身上。因为我现在使用android studio开发工具开发android应用程序,所以在编写aidl文件时,还是和用e

2017-11-27 09:53:11 237

转载 Android控件AutoCompleteTextView

在Android中提供了两种智能输入框,它们是AutoCompleteTextView、MultiAutoCompleteTextView。它们的功能大致一样。显示效果像Google搜索一样,当你在搜索框里输入一些字符时(至少两个字符),会自动弹出一个下拉框提示类似的结果。下面详细介绍一下。一、AutoCompleteTextView1、简介一个继承自EditView的可编辑的

2017-11-23 11:45:00 153

转载 android中流式布局

效果图实现效果图思维导图思维导图一、流式布局的实现实现原理:采用面向对象思想将整个布局分为很多行的对象,每个行对象管理自己行内的孩子,这里通过集合来管理。1. 内部类Line的实现1.1 定义行的基本属性List:管理行中的孩子maxWidth:行的最大宽度usedWidth:使用的宽度height:行的高度space:孩子之间的间距构造初

2017-11-23 10:47:42 315

转载 反编译apk

简单的说下反编译apk的流程:我们一般想要反编译一个apk,无非就是想获得三样东西图片资源 ,XML资源,和代码资源一.图片资源获取、这个最简单啦,  首先准备一个apk,嘿嘿就是你啦  这里是一个.apk后缀的文件,我们先把后缀改成,zip,然后就成了这样  化身压缩文件啦撒,然后打开后你就能看到如下图  

2017-11-08 17:15:28 199

转载 Android APK代码混淆和资源文件混淆

Android项目在完工发布时,需要对代码和资源文件进行混淆,目的有两个:1⃣️减小压缩包的体积 2⃣️防止代码被反编译后恶意利用Android Apk混淆分两步走: 1⃣️混淆代码 2⃣️混淆资源文件本人的开发环境为:Operation System:Mac OS 10.10.5 Android Studio:2.0 Preview 5 Gradl

2017-11-08 15:46:15 2009

原创 退出登录清楚以前的activity

Intent intent = new Intent(SettingActivity.this, LoginActivity.class);intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK); System.out.println("zzz退出登录了LOGIN_SU

2017-11-08 11:04:07 125

原创 cast使用技巧

例如想要强转一个textView在AS中输入[java] view plain copy print?findViewById(R.id.text).cast  findViewById(R.id.text).cast按下tab键,编辑器自动变成[javascript] view plain copy prin

2017-10-25 14:32:47 409

mvp架构浅析

mvp架构使用详细demo,理解相对难点,但是必须掌握的重点内容

2018-04-03

日志记录工具

日志的记录,定时删除功能现在不具备,但是够用了感觉

2018-03-30

WeekView 控件

自定义的日程表框架,包含点击,长按,滑动等一系列动作

2018-03-28

Zxing生成二维码扫描二维码

比较全面使用的Zxing二维码Demo,给力!!!!!!!!!!

2018-01-09

二维码生成扫描

二维码扫描生成现在非常普遍,该demo详细介绍了二维码的用法

2017-10-17

通知常用工具类

该工具类提供了通知中,常用的工具,仅供自己参考使用

2017-10-17

viewpager+fragment

常用android开发框架viewpager结合fragment的使用,相对稳定

2017-10-12

bitmapHelper

包含图片压缩,旋转,放大缩小,图片存储等比较齐全的工具类

2017-10-10

CircelView

圆形头像的使用,裁剪

2017-10-10

android与js交互

描述android与js交互,互相调用对方中的方法的使用简介

2017-10-10

Material Design相关demo

Material Design中部分控件相关使用(RecycleView TabLayout等)

2017-10-10

空空如也

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

TA关注的人

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