自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 资源 (12)
  • 问答 (1)
  • 收藏
  • 关注

原创 Android 获取物理MAC地址和序列号

获取物理MAC地址: public String getMacAddress() { List<NetworkInterface> interfaces = null; try { interfaces = Collections.list(NetworkInterface.getNetworkInterfaces());...

2019-12-06 14:30:19 487

原创 Gradle的理解

根Gradle中闭包的解释:buildscript {//构建脚本引用 repositories {//插件仓库的配置 //jcenter和google本质上是一个maven仓库 google() jcenter() } dependencies {//依赖插件 //Google的Andro...

2019-11-26 17:35:48 230

原创 添加编译依赖项(远程代码库)

远程代码库当您的依赖项不是本地库或文件树时,Gradle 会在build.gradle文件的repositories代码块中指定的所有在线代码库中查找相关文件。您列出各个代码库的顺序决定了 Gradle 在这些代码库中搜索各个项目依赖项的顺序。例如,如果从代码库 A 和 B 均可获得某个依赖项,而您先列出了代码库 A,则 Gradle 会从代码库 A 下载该依赖项。默认情况下,新的...

2019-11-18 10:45:45 248

原创 添加编译依赖项(依赖项类型)

依赖项类型 要向您的项目添加依赖项,请在build.gradle文件的dependencies代码块中指定依赖项配置,如implementation。例如,应用模块的以下build.gradle文件包含三种不同类型的依赖项:apply plugin: 'com.android.application' android { ... } d...

2019-11-18 10:38:09 981

原创 AndroidX的迁移注意的地方

1,如果要在新项目中使用 AndroidX,则需要将编译 SDK 设置为 Android 9.0(API 级别 28)或更高版本 2,在gradle.properties文件中将以下两个 Android Gradle 插件标记设置为true。android.useAndroidX:如果设置为true,Android 插件会使用相应的 And...

2019-09-06 10:40:26 290

原创 Android 四种渠道更新其版本

File-->setting-->System Settings-->Updates​​​​​​​​​​​​​​​​​​​​​​​​​​​​可以看到版本有4种渠道更新,他们的特点如下:CanaryChannel :金丝雀版,能获取最新的功能(Bug较多 并且都还没有验证)Develop Channel: 开发者版,到了这个版本大Bu...

2019-09-06 09:56:50 480

原创 Android 代码混淆配置总结

Android 代码混淆配置总结一、前言为何需要混淆呢?简单的说,就是将原本正常的项目文件,对其类,方法,字段,重新命名,a,b,c,d,e,f…之类的字母,达到混淆代码的目的,这样反编译出来,结构乱糟糟的,看了也头大。另外说明一下,本文的混淆总结基于AndroidStudio的IDE开发环境。二、官方默认的混淆配置其实在androidStudio中做混淆,基本就是对Pro...

2019-09-03 11:37:08 1857

原创 常见的异常

学习自https://github.com/yangchong211/YCBlogs/blob/master/bug/00.%E5%B8%B8%E8%A7%81%E7%9A%84%E5%BC%82%E5%B8%B8.md1.异常Exception算术条件异常(譬如:整数除零等):java.lang.ArithmeticException 数组索引越界异常。当对数组的索引值为负数或大于等于...

2019-07-17 09:22:57 158

原创 枚举的学习

枚举一,枚举的定义 从技术上讲,枚举是一个类,可以有构造方法和方法。如果有构造方法,那必须是私有的。如果一个enum定义了枚举值之外的其他内容,枚举值必须在其他内容之前定义,并且最后的枚举值用一个分号结束。二,枚举的使用1,定义常量:我们一般定义常量通过(private static final …)或者接口(interface),而枚举也可以定义常量。 ...

2019-06-28 11:57:24 146

原创 反射的学习(三)

反射实际使用1,反射生成类实例对象 a,生成类的实例对象有零种方式使用Class对象的newInstance()方法来创建该对象对应类的实例。(前提是这种方式要求该Class对象一定有默认的构造器,而执行newInstance()方法时实际上是利用默认构造器来创建该类的实例) 先使用Class对象获取指定的Constructor对象,再调用Constructor对象的...

2019-06-21 11:38:54 106

原创 反射之学习(二)

反射查看类的信息1,获取Class对象 a,每个类被加载后。系统都会为该类生成一个class类,进而生成一个对应的class的对象,最终获取该类的信息。 b,获取class对象的三种方式: 使用Class类的forName(String clazzName)静态方法。该方法需要传入字符串参数, 该字符...

2019-06-20 15:20:33 126

原创 反射的学习(一)

反射(一)1,反射的机制原理1.1,反射是为了能够动态加载一个类,动态的调用一个方法,动态的访问一个属性等动态要求而设计的。由于JVM会为每个类创建一个java.lang.Class类的实例,进而通过该对象获取此类的信息,然后通过使用java.lang.reflect包下的达到各种动态需求。1.2,反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对...

2019-06-19 16:16:37 92

转载 泛型的理解

转载:https://www.cnblogs.com/coprince/p/8603492.html1. 概述泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用。什么是泛型?为什么要使用泛型?泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的...

2019-06-19 11:27:32 102

转载 final关键字

转载:https://github.com/yangchong211/YCBlogs01.final关键字概述A:为什么会有final 由于继承中有一个方法重写的现象,而有时候我们不想让子类去重写父类的方法.这对这种情况java就给我们提供了一个关键字: final B:final概述 final关键字是最终的意思,可以修饰类,变量,成员方法。 C:final修饰特...

2019-06-18 15:30:29 86

转载 static关键字

转载:https://github.com/yangchong211/YCBlogs01.static的作用和特点可以用来修饰:成员变量,成员方法,代码块,内部类等。具体如下所示 修饰成员变量和成员方法 被 static 修饰的成员属于类,不属于单个这个类的某个对象,被类中所有对象共享,可以并且建议通过类名调用。 被static 声明的成员变量属于静态成员变量,静态变量存放在...

2019-06-18 15:16:29 68

原创 Java -- 访问权限控制

访问权限控制访问控制符有哪些: Java有四种访问控制级别:public、protected、private和default(即不加修饰符,默认访问级别)类访问控制修饰符包括:public或默认访问级别public其使得类变为共有的,而公共类在任何地方都是可见的 default 使得类具有默认的访问级别,, 默认访问级别的类只能由属于同一个包中的类使用类成员访问控制...

2019-06-18 14:34:10 116

原创 Java运算符之位运算

Java运算符之位运算实例/*** @author : yhl* @desc : 位运算( &(“与”)、|(“或”)、^(“异或”)、~(“非”)这些运算符只能作用于整型操作数。有符号的或无符号的。)* @date :2019/6/17 10:47**/public class weiTest { public static void main(...

2019-06-17 17:31:55 90

原创 正则表达式匹配类

public class RegularUtils { private RegularUtils() { throw new UnsupportedOperationException("u can't fuck me..."); } // 验证手机号(现在手机号码水太深,来个短小粗暴点了只能) private static final Stri...

2019-06-13 15:06:18 314

原创 Java排序

Java排序冒泡排序 冒泡排序原理:相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处 冒泡排序代码: private static void bubbleSort() { int[] arr = {27, 5, 33, 44, 11, 6, 78, 65}; //相邻元素两两比较...

2019-06-13 15:00:46 54

原创 Arrays类常用方法详解

Arrays类常用方法详解Arrays类的常用方法:1,Arrays.asList(T…data):注意:该方法返回的是Arrays内部静态类ArrayList,而不是我们平常使用的ArrayList,该静态类ArrayList没有覆盖父...

2019-06-11 17:43:38 387

原创 String、StringBuffer和StringBuilder的总结

String、StringBuffer和StringBuilder三者之间的主要区别有两点:运行速度:执行速度的快慢:StringBuilder—>StringBuffer-->StringString最慢的原因:String为字符常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不可...

2019-06-11 15:54:16 91

原创 String常用的方法总结

String常用的方法总结和长度有关的方法 返回类型 方法名 用途 Int length () 得到一个字符串的字符个数(一个中文是一个字符,一个英文是一个字符,一个转义字符是一个字符) 和数组有关的方法 返回类型 方法名 ...

2019-06-10 11:16:01 91

原创 常见的API方法之String

常见的API方法之String看源码: public final class String implements java.io.Serializable, Comparable<String>, CharSequence { /** The value is used for character storage. */...

2019-06-06 15:18:39 351

原创 Java 编译时和运行时有啥区别

编译期:检查是否有语法错误,如果没有就将其翻译成字节码文件。即.class文件。运行期:java虚拟机分配内存,解释执行字节码文件。例如:public class test1 { //被final修饰的变量是不可变的是个定值 public static final int a = 10; public static final int b = 10; ...

2019-06-05 16:12:30 2457 1

原创 常见的API方法之Object(一)

常见的API方法之Object(一)clone():此方法的用途是用来另存一个当前存在的对象。 public class CloneTest { public static void main(String[] args) throws CloneNotSupportedException { People s1 = new People("yhl...

2019-06-04 17:17:09 535 1

原创 Java--基本数据类型

基本数据类型基本数据类型有哪些:byte、short、int、long、float、double、boolean、char整型:byte、short、int、long用于表示有符号的整数 浮点型:float、double用于表示带小数位的数字 字符型:char用于表示字符集中的符号 布尔型:boolean用于表示true/false值 基本数据类型 ...

2019-06-04 11:32:30 111

原创 Java基础

Java基础命名规范【必须见名知意】下划线式命名:my_name 驼峰式命名:myName 类,接口命名:必须是大写字母开头,比如PersonActivity 方法,变量【字符串】命名:getData(),otherName 常量命名:一般全是大写,比如MAX_VUE常量和变量 什么是常量和变量 其值不可以改变的称之为常量 其值会发生变化的称之为变量 常量有哪些 字...

2019-06-04 11:31:15 65

原创 Java关键字

Java关键字①、常见关键字用于定义数据类型的关键字class interface byte short int long float double char boolean void 用于定义数据类型值的关键字true false null 用于定义流程控制的关键字if else switch case default w...

2019-06-04 11:29:55 62

原创 安卓将数据存储到文件的操作

package gpatmobile.tunion.com.mytest;import android.content.Context;import android.text.TextUtils;import android.util.Log;import java.io.ByteArrayOutputStream;import java.io.File;import java....

2019-01-08 10:17:22 994 5

原创 安卓布局优化

                                                        布局优化 1,AndroidUI渲染机制:正如玩PC游戏,fps大概在60fps左右,就表示显卡性能较高,游戏不会卡顿。而在安卓中系统通过VSYNC信号触发对UI的渲染、重绘,其间隔时间是16ms。(16ms就是1000ms中显示60帧画面的单位时间)。 2,避免Overdraw...

2018-08-13 15:10:03 343

原创 activity的理解

                                                              Activity简介activity形态: activity一个最大的特点就是拥有多种形态,以形态之间的切换来控制自己的生命周期。1,Active/Running 这时候,Activity处于任务栈的栈顶,可见,并可与用户进行交互。2,Paused 当...

2018-08-07 15:07:20 213

原创 安卓动画之视图动画

视图动画的整体框架是:

2018-07-10 09:31:41 122

原创 安卓绘图之layer

layer:layer-list可以作为根节点,也可以作为selector中item的子节点。layer-list可以添加多个item子节点,每个item子节点对应一个drawable资源,按照item从上到下的顺序叠加在一起,再通过设置每个item的偏移量就可以看到阴影等效果了。layer-list的item可以通过下面四个属性设置偏移量:android:top 顶部的偏移量 android:b...

2018-06-29 17:00:55 831

原创 安卓XML绘图之selector

selectorselector标签,可以添加一个或多个item子标签,而相应的状态是在item标签中定义的。定义的xml文件可以作为两种资源使用:drawable和color。作为drawable资源使用时,一般和shape一样放于drawable目录下,item必须指定android:drawable属性; 作为color资源使用时,则放于color目录下,item必须指定android:co...

2018-06-29 16:38:45 620

原创 Android-Xml绘图shape

                                                shape一般用shape定义的xml文件存放在drawable目录下,若项目没有该目录则新建一个,而不要将它放到drawable-hdpi等目录中。使用shape可以自定义形状,可以定义下面四种类型的形状,通过android:shape属性指定:rectangle: 矩形,默认的形状,可以画出直角矩形...

2018-06-28 17:32:22 134

原创 安卓xml绘图之bitmap

Bitmapbitmap.xml&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@mipmap/img" /&gt;&lt;?xml version="1.0&quo

2018-06-26 16:04:15 304

原创 安卓屏幕的尺寸以及换算的工具类

屏幕的大小:指屏幕对角线的长度,通常用寸来度量。分辨率:是指手机屏幕的像素点个数,eg:720*1280就是指屏幕的分辨率,指宽有720个像素点,而高有1280个像素点PPI:每英寸像素,又被称为DPI。它是由对角线的像素点除以屏幕的大小得到的。系统屏幕密度:密度                     ldpi            mdpi            hdpi           ...

2018-06-20 14:51:21 647

原创 listView常用的优化技巧

   listView设置项目间分割线    android:divider="@android:color/darker_gray"    android:dividerHeight="10dp"  设置透明:  android:divider="@null"    隐藏listView的滚动条  android:scrollbars="none"  取消ListView的Item点击效果  a...

2018-06-20 09:30:07 132

原创 Android——事件拦截机制分析

我们设计的场景实例是(你所在的公司):一个总经理——MyViewGroupA,最外层的ViewGroup一个部长——MyViewGroupA,中间的ViewGroup一个干活的你——MyView,在最底层本实例的整个布局结构图:对于Viewgroup来说,需要重写如下所示的三个方法 @Override public boolean dispatchTouchEvent(MotionE...

2018-06-14 17:41:58 148

原创 安卓四大组件如何协同工作

    Activity作为与用户交互的界面,负责向用户展示信息和处理结果,而这些信息的来源,可以通过网络、文件、ContentProvider来获取,可以用Service从后台获取、处理、计算而得到,也可以用BroadCaseReciever获取到的广播,也可以用Activity的信使------Intent来传递数据。组件与组件之间由此来传递信息、数据,因此,一个APP才能够实现各种复杂的情景...

2018-06-11 15:21:46 251

MyGreenDao.zip

集成 GreenDAO、GreenDao的配置依赖、配置数据库相关信息、快速入门运用以及增删改查demo的展示

2019-11-18

My_Arouter.zip

此代码是模块化开发Arouter和butterknife等第三方类库的集合。可以快速地理解Arouter的实现与运用、以及模块间的数据传递等

2019-11-14

安卓灵动菜单,计时器动画,下拉展开动画demo展示

安卓灵动菜单,计时器动画,下拉展开动画demo展示.........

2018-07-18

关于XML绘图(bitmap ,shape ,layer-list ,selector ,animation)的demo

关于XML绘图(bitmap ,shape ,layer-list ,selector ,animation)的demo

2018-06-29

自定义ViewGroup

一个关于自定义的ViewGroup案例,让你快速了解自定义ViewGroup和view的区别

2018-06-14

安卓自定义View

安卓自定义View的三种方式 1,对现有控件进行拓展(在TextView基础上丰富其展示背景的案例) 2,自定义组合控件(简单的TopBar实现) 3,重写View实现全新的控件(一个是弧形图展示的案例,一个是音频条形图的实现案例)

2018-06-13

安卓集拍照,相册选择,裁剪,权限等的个人头像实现

安卓集拍照,相册选择,裁剪,权限等的个人头像实现demo

2018-06-06

安卓下载网络图片并展示图片

安卓下载网络图片保存在本地,在显示在指定位置上

2017-01-05

广告轮播图自动循环滚动和点击事件

简单便捷的让你掌握顶部轮播图的实现

2016-10-18

fragment的运用

fragment的运用

2016-08-16

安卓fragment的运用

安卓fragment的运用

2016-08-16

dialog的7种方式

dialog的7中方式(源代码的说明).

2015-10-28

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

TA关注的人

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