- 博客(68)
- 资源 (1)
- 收藏
- 关注
原创 [置顶]Android进阶
在此文件夹下记录关于Android进阶的知识点,我把文件放在GitHub上了,点击文件GitHub链接访问,目前文章有:1,Android项目库(一)2,Android项目库(二)3,Retrofit的使用4,Gradle5,Android网络基础6,Android架构模式7,Android Proguard混淆8,Android四种异步操作机制9,OkHttp解析10,And
2017-09-12 10:17:41
238
原创 Activity过渡动画
Activity过渡动画一,直接使用 Activity.overridePendingtransition(int inId,int outId) 方法,可以实现 Activity 之间的过渡动画,但是不包括 Activity 内的视图的过渡动画。详细参考 关于 overridePendingTransition()使用。二,Android 5.X 提供了三种Transition类型,可以实现
2017-09-12 10:17:17
248
原创 android:windowSoftInputMode
android:windowSoftInputModeandroid:windowSoftInputMode属性会影响主窗口与软键盘的交互模式,这个属性会影响两个方面的事情:当窗口有焦点时软键盘是隐藏还是显现;是否减小窗口的大小以便腾出空间放软键盘。具体参考该博客 android:windowSoftInputMode属性详解
2017-09-12 10:17:14
211
原创 OkHttp3源码解析
OkHttp3An HTTP &HTTP/2 client for Android and Java application.(HTTP网络框架)compile 'com.squareup.okhttp3:okhttp:3.6.0'最新版本OkHttp的最底层是使用Socket,而不是URLConnection,它通过Platform的Class.forName()反射获得当前Runtime
2017-09-12 10:17:08
247
原创 Volley网络请求库
Volley源码解析VollyVolly是Google官方出的一套小而巧的异步请求库,该框架封装的扩展性很强,支持HttpClient,HttpUrlConnection进行网络请求。Volley的使用场景特点:特别适合数据量小,通信频繁的网络操作。Volley重要类:1.Volley:该类主要是用来创建RequestQueue类对象并创建网络请求类HttpStack的,该类中有四
2017-09-12 10:17:01
258
原创 Intent详细记录
Intent详细记录1,Intent,中文翻译为“意图”,是一个消息传递对象,可以使用它从其他应用组件请求操作,在Android中提供了Intent机制来协助应用间的交互和通讯。Android根据此Intent的描述,负责找到对应的组件,将Intent传递给 调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互。因此,
2017-09-12 10:16:58
799
原创 Android性能优化
Android性能优化有多种方式,在多个方面都有体现:布局优化:布局优化的思想就是减少布局的层级,使用, , 来优化布局。绘制优化:绘制优化是指在View的onDraw()方法内避免执行大量的操作。不要在在onDraw()方法内创建大量的局部对象,这不仅会占用过多内存还会频繁gc,降低程序的效率;不要在onDraw()方法内执行耗时操作,绘制时间要保持在16ms以内,防止界面卡顿。内存泄
2017-09-12 10:16:51
167
原创 IPC机制
Android IPC(Inter-Process Communication)就是Android的跨进程通信,Android开发有时需要进行多进程的开发,要进行多进程之间的通信,那样就需要 IPC 的知识了 。下面先介绍一下多进程使用场景,再分别介绍一下几种 IPC方式。多进程使用场景:分担主进程的内存压力。防止主线程被杀死,创建一个守护进程,守护主进程。Android 开发中有些特殊
2017-09-12 10:16:47
274
原创 Android使用权限
Android使用权限每款Android应用都在访问受限的沙盒中运行。如果应用需要使用其沙盒外的资源或信息,则必需请求相应的权限。可以在清单文件中列出相应的权限,声明应用需要此权限。根据权限的敏感度,系统可能会自动授予权限,或者需要由设备用户对权限请求进行许可。例如,如果应用请求打开手电筒的权限,系统将自动授予,但如果是需要读取用户联系人,系统会要求用户授权。用户需要在安装应用时(运行Andr
2017-09-12 10:16:40
307
原创 DDMS
DDMS(Dalvik Debug Monitor Service) Android 开发环境中的Dalvik虚拟机调试监控服务,是Android Studio中的一款开发工具,它提供了查看进程中运行的线程,Logcat信息,广播状态信息,模拟电话呼叫,接收SMS,虚拟地理坐标等功能,Android开发者应熟练掌握它的使用,它能为开发者提供很大的帮助。深入了解参考这里 http://www.
2017-09-12 10:16:34
725
原创 看懂UML类图和时序图
UML在软件工程中使用较多,通过使用UML图可以较清楚地表示软件的架构关系,这里介绍一下UML中比较重要的两种图:类图和时序图。 类图类图是用来表示类之间的关系的,类与类之间的关系可以用以下六种关系: 继承关系,继承关系又被分为实现关系和泛化关系,实现关系是继承抽象类的关系,而泛化关系是继承非抽象类的关系。 聚合关系/组合关系,两种关系都是用来表示实体对象之
2017-09-12 10:16:28
420
原创 Frameworks detected: Android framework is detected in the project
在Github上下载源码在Android Studio打开运行这个问题,在StackOverFlow里有多个不同解决方法,地址在这里,可以按着上面的方法试试,这里记录一下解决了我问题的解决方法:Maybe you have to import the project properly and not just opening?Goto to File > New Project > Impo
2017-09-12 10:16:19
1107
原创 CoordinatorLayout父布局的Behavior
CoordinatorLayout帮助我们协调它所包含的子view之间的交互。CoordinatorLayout的工作原理是搜索定义了CoordinatorLayout父布局的子View,不管是通过在xml中使用app:layout_behavior标签还是通过在代码中对View类中使用@DefaultBehavior修饰符来添加注解的,当滚动发生时,CoordinatorLayout会尝试触
2017-09-12 10:16:13
251
原创 AndroidManifest.xml文件中属性记录
android:windowSoftInputMode属性使用:该属性是用来设置活动的主窗口如何与包含屏幕上的软键盘窗口交互的。该属性将会影响两件事情: 1:软键盘的状态; 2:活动的主窗口调整。更多参考 :官方文档中文版
2017-09-12 10:15:59
181
原创 ActivityCallcycleCallbacks基本解析
ActivityLifecycleCallbacks是Application的内部接口,接口中定义了关于Activity的所有生命周期的方法,所有的Activity都会在适当的时机回调上面对应时机的方法。我们通过覆写Application类后,在该类中的onCreate()方法通过这句代码registerActivityLifecycleCallbacks(ActivityLifecycleCal
2017-09-12 10:15:53
318
原创 Java序列化
序列化是实现对象持久化的手段。 深入了解参考这里:http://www.hollischuang.com/archives/1140https://www.oschina.net/question/4873_23270
2017-09-12 10:15:46
158
原创 ViewTreeObserver视图树观察者
ViewTreeObserver,视图树的观察者,该类是用来监听视图树的,当视图树发生某些改变时,会通知该类中的某些接口。该类中包含多个监听不同事件变化的接口,通过覆写接口中的方法,以在视图树发生改变时做些事件。 ViewTreeObserver是不能实例化的,要通过视图获取,通过View.getViewTreeObserver()获取的。举例应用://onGlobalLayoutLis
2017-09-12 10:15:41
219
原创 Android Activity/Fragment间的数据传递
Activity间的数据传递举例:MainActivity是已经打开的Activity,在这个界面打开第二个Activity,SecondActivtiy,如果是直接通过startActivity()方法打开的,则不能通过回调方法进行数据传递,但通过startActivityForResult()打开SecondActivity的话,则在SecondActivity结束时,会回调MainActi
2017-09-12 10:15:33
142
原创 Android样式
Android的样式开发,包含了不少内容,不可能全记得,所以还是需要先记载下来,后面不记得了再直接查阅。drawabe目录下的xml文件,关于selector标签的xml version="1.0" encoding="utf-8"?>selector xmlns:android="http://schemas.android.com/apk/res/android"> androi
2017-09-12 10:15:26
141
原创 Android的Fragment的自定义转场动画
Fragment间转场可以使用setTransition()来设置系统默认的转场动画,也可以使用setCustomAnimations()方法来自定义转场动画。getFragmentManager().beginTransaction() //An optional name for this back stack state, or null.addToBac
2017-09-12 10:15:20
786
原创 获取手机网络状态之ConnectivityManager
ConnectivityManager是网络连接管理器,获取手机有关的网络状态,都是通过它获取的。它主要用于查询网络状态并在网络发生改变时发生状态变化通知。这个类主要负责下列的四个方面:1,监控网络状态(包括WIFI,GPRS等);2,当网络连接改变时发生广播Intent;3,当一种网络断开时,试图连接到另一种网络进行故障处理;4,提供一系列接口让应用程序查询可获得的网络粗粒度和细粒度状态
2017-09-12 10:15:13
399
原创 Android进阶之关于开源库(框架)的知识点记录
记录一些开源库(框架)的使用知识点,我把文章放在GitHub上了,点击这里前往观看,会持续更新的。
2017-09-12 10:15:07
152
原创 Activity的启动模式记录
看到一篇详细记录了“Activity的启动模式”的文章,先记录在此,http://www.cnblogs.com/mengdd/archive/2013/06/13/3134380.html
2017-09-12 10:15:02
135
原创 关于Activity的onNewIntent方法调用时机
看书看到Activity的启动模式,在某些情况下,启动Activity不会创建新实例,而是直接调用onNewIntent方法,直接使用Activity栈中已存在的Activity实例,遂在此记录关于Activity 的onNewIntent方法的调用时机,自己就不在重新书写了,直接查看别人的博客记录。
2017-09-12 10:14:58
223
原创 Android View相关知识点
View 1,View坐标 Left,Right,Top,Bottom,表示view相对于父控件的距离值,是绝对值,绘制完之后就不会再改变的;X,Y表示view左上角相对于父控件的实时坐标值,是会随着移动view而改变的;TranslationX,TranslationY是view左上角相对于父控件的偏移值,初始为0。 2,View的几个重要方法 onMeasure
2017-09-12 10:14:49
152
原创 Git理解
Git1,Git是分布式版本控制工具,是用来做版本控制的。2,Git的核心思想是分布式,快照,状态区,分支,需要对这几个部分好好理解一下。3,Git的安装与配置(这部分在网上有较多教程,就忽略这部分)。4,Git的一些基本命令行操作,看这里http://www.cnblogs.com/feng-ye/p/5988091.html。 Git状态区工作区暂缓区历史区git
2017-09-12 10:14:42
370
原创 有关Fragment的知识点
关于判断Fragment是否可见,可以尝试参考使用Fragment中的两个方法: final booleanisHidden()Return true if the fragment has been hidden.final booleanisVisible()Return true if the fragment is currently visible to
2017-09-12 10:14:29
251
原创 DashPathEffect
DashPathEffect 可以实现以动画的形式画线的效果。通过setPathEffect()方法为画笔Paint对象设置绘制路径的特效。PathEffect pathEffect=new DashPathEffect(new float[] { intervals } , phase ); DashPathEffect分析(感觉下面的两个链接的文章讲得不是很清楚)
2017-09-12 10:14:22
245
原创 Android 自定义View
Android 自定义View流程中的几个方法解析:onFinishInflate():从布局文件.xml加载完组件后回调onMeasure() :调用该方法负责测量组件大小onSizeChanged() :组件大小发生改变时回调该方法onLayout() :该方法负责确定组件的显示的位置onDraw() :该方法负责将组件在屏幕中画出来 自定义View流程中几个
2017-09-12 10:14:16
147
原创 Android Parcelable
Android Parcelable 后面再补充 http://www.cnblogs.com/huanyou/p/5594475.html
2017-09-12 10:14:11
136
原创 Android之Activity状态的保存和恢复
系统在某些情况下会调用onSaveInstanceState()和onRestoreInstanceState()这两个方法来保存和恢复Activity的状态。 一句话:Activity在“非正常”情况下退出都会调用onSaveInstanceState()方法来保存Activity的状态。 关于系统调用这两个方法的时机参考这里:http://www.cnblogs.com/heiguy
2017-09-12 10:14:05
323
原创 Android WebView介绍
Android WebView在Android系统中内置了一款高性能webkit内核浏览器,在SDK中封装为一个叫做WebView组件,WebView是基于webkit引擎,展现Web页面的控件。WebView控件功能强大,除了具有一般View的属性和设置外,还可以对url请求、页面加载、渲染、页面交互进行强大的处理。在WebView的开发过程中当你需要使用到一些高级功能可以通过设置WebCh
2017-09-12 10:13:58
218
原创 了解Android的编译器
了解一下Android的编译器并记录下来:Android在4.4以前是使用Dalvik VM的,通过Just In Time(JIT即时编译)来完成编译工作,在Android4.4提供了一种测试版本虚拟机ART(Android Runtime) (在Android5.0以后的系统ART取代了Dalvik),采用Ahead-Of-Time(AOT)的方式进行编译工作。AOT本质上一种静态编译,它相
2017-09-12 10:13:54
2333
原创 WebView
WebView在Android系统中内置了一款高性能webkit内核浏览器,在SDK中封装为一个叫做WebView组件,WebView是基于webkit引擎,展现Web页面的控件。WebView控件功能强大,除了具有一般View的属性和设置外,还可以对url请求、页面加载、渲染、页面交互进行强大的处理。在WebView的开发过程中当你需要使用到一些高级功能可以通过设置WebChromeClie
2017-09-12 10:13:48
178
原创 App开发三种模式
APP开发三种模式现在App开发的模式包含以下三种:Native App 原生开发AppWeb App 网页AppHybrid App 混合原生和Web技术开发的App详细介绍:http://www.ionic.wang/article-index-id-58.htmlhttp://www.jianshu.com/p/e73936e656bc
2017-09-12 10:13:43
480
原创 Matrix
记载: MatrixMatrix是Android 提供的一个矩阵工具类,位于"android.graphics.Matrix"包下,它本身不能对图像或View进行变换,但它可以与其他API结合来控制图形,View的变换,如Canvas。Matrix提供了一些方法来控制图片变换:•setTranslate(float dx,float dy):控制Matrix进行位移。•setS
2017-09-12 10:13:36
273
原创 MySQL SQL
SQL语句错误:Column count doesn't match value count at row 1 列计数与第1行的值计数不匹配You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the rig
2017-09-12 10:13:30
313
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人