自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一航jason

IT民工,爱好:Android、C/C++、HTML5、Flutter、Framework、PHP、Unity

  • 博客(17)
  • 资源 (2)
  • 收藏
  • 关注

转载 Makefile 经典教程(看完这篇就够了,不信你拉拉进度条)

支持原创:http://blog.csdn.net/haoel/article/details/2886 makefile很重要 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人

2017-09-28 16:58:03 4613

原创 android 事件分发机制详解(二)

Activity的Touch事件事实上是调用它内部的ViewGroup的Touch事件,可以直接当成ViewGroup处理。View在ViewGroup内,ViewGroup也可以在其他ViewGroup内,这时候把内部的ViewGroup当成View来分析。ViewGroup的相关事件有三个:onInterceptTouchEvent、dispatchTouchEvent、onTouchEvent

2017-09-15 17:26:55 350

原创 android 事件分发机制详解(一)

事件分发机制在android开发中是非常重要的部分,他是用户与手机沟通的桥梁之一;今天我们从应用返回流程开始来分析事件分发机制。从这篇文章中我们开始分析android系统的事件分发流程,其实网上已经有了很多关于android系统的事件分发流程的文章,奈何看了很多但是印象还不是很深,所以这里总结一番。 android系统的事件分发流程分为很多部分:Native层 –> ViewRootImpl层

2017-09-15 16:27:31 805

原创 android 关机流程解析

前面我们讲解了系统截屏按键处理流程,HOME按键处理流程,今天再来讲解一下电源开关机按键事件流程。 关机操作也是系统级别来接受处理的。和截屏按键、HOME按键的处理流程类似,电源按键由于也是系统级别的按键,所以对其的事件处理逻辑是和截屏按键、HOME按键类似,不在某一个App中,而是在PhoneWindowManager的dispatchUnhandledKey方法中。所以和前面两篇类似,这里我们

2017-09-15 15:14:02 2006 2

原创 android home键流程分析

上一篇文章中我们介绍了android系统的截屏事件,由于截屏事件是一种系统全局处理事件,所以事件的处理逻辑不是在App中执行,而是在PhoneWindowManager中执行。而本文我们现在主要讲解android系统中HOME按键的事件处理,和截屏事件类似,这里的HOME按键也是系统级别的按键事件监听,所以其处理事件的逻辑也应该和截屏事件处理流程类似,从上一篇文章的分析过冲中我们不难发现,系统级别的

2017-09-15 14:23:37 5403

原创 android 截图功能源码解析

一般没有修改rom的android原生系统截图功能的组合键是音量减+开机键;今天我们从源码角度来分析截图功能是如何在源码中实现的。在android系统中,由于我们的每一个Android界面都是一个Activity,而界面的显示都是通过Window对象实现的,每个Window对象实际上都是PhoneWindow的实例,而每个PhoneWindow对象都对应一个PhoneWindowManager对象,

2017-09-15 10:44:04 698

原创 android onLowMemory低内存回调方法详解

onLowMemory方法顾名思义就是在app内存低的时候回调,那么怎样才是内存低的标准,回调流程又是如何?我们一起带着问题去看源代码解析。 onLowMemory方法在Activity,Servier,ContentProvider,Application中都有回调,但是BroadcastReceiver没有这个回调。这里简单介绍一下Android系统的内存分配机制。Android系统中一个个的

2017-09-14 16:27:06 8006

原创 android onSaveInstanceState() onRestoreInstanceState() 详解

onCreate方法中有一个参数savedInstanceState是用来保存activity状态,可以在activity实例在后台回收后通过参数完成一下状态恢复。onSaveInstanceState方法则是在可以在销毁实例之前做一些保存参数处理的操作。我们已经分析过Activity的启动流程,从中也分析了Activity的生命周期。而其中有一个生命周期方法:onSaveInstanceStat...

2017-09-14 14:57:53 356

原创 android 异常处理流程源码分析

android 异常开发者最头疼的地方,了解异常的处理机制对我们开发来说常有帮助。系统在app应用进程运行的时候设置一个异常处理类:··· /* set default handler; this applies to all threads in the VM */ Thread.setDefaultUncaughtExceptionHandler(new U...

2017-09-14 14:11:33 1712

原创 android Toast 吐司 详解

### 什么是土司(Toast)?Toast是Android系统提供的一种非常好的提示方式,在程序中可以使用它将一些短小的信息通知给用户,这些信息会在一段时间后自动消失,并且不会占用任何的屏幕空间;### 下面我们通过源代码分析Toast:前面我们分析了Activity、Dialog、PopupWindow的加载绘制流程,相信大家对整个Android系统中的窗口绘制流程已经有了一个比较...

2017-09-14 10:53:09 1021

原创 PopupWindow 详解

清晰版原文地址:http://pincha.shop/search/blogInfo/2931PopupWindow是Android上自定义弹出窗口,可以灵活定义位置动画,使用起来很方便。PopupWindow的构造函数为:public PopupWindow(View contentView, int width, int height, boolean focusable)...

2017-09-13 17:41:03 1163

原创 AlertDialog cancel() 销毁窗口流程解析

效果清晰浏览地址:http://pincha.shop/search/blogInfo/2930今天来法分析AlertDialog cancel() 销毁窗口流程。前面文章说了其实activity和dialog都是通过window对象来管理视图的。所以我们可以从AlertDialog销毁过程来了解activity界面销毁过程。Android系统中窗口的展示都是通过Window对象控制,通过...

2017-09-13 14:49:44 3230

原创 AlertDialog 详解

AlertDialog是经常使用控件,今天我来分析一下源码。android新手经常会用遇到几个问题? * 窗体溢出的bug;这个可以参照前面的《android Context 详解》。 * dialog为什么只接受activity的context;这个问题下面就可以得到答案。我们分析了Activity的布局文件加载、绘制流程,算是对整个Android系统中界面的显示流程有了一个大概的了解,其实A

2017-09-12 17:21:08 604

原创 android 布局绘制流程解析

通过上一篇《布局加载流程》中知道了布局的加载; 大家都知道Activity在Android体系中扮演者一个界面展示的角色,通过上一篇文章的分析,我们知道Activity是通过Window来控制界面的展示的,一个Window对象就是一个窗口对象,而每个Activity中都有一个相应的Window对象,所以说一个Activity对象也就可以说是一个窗口对象,而Window只是控制着界面布局文件的加载过

2017-09-12 11:24:21 685

原创 Activity setContentView 加载布局流程

setContentView这句话android同学们应该非常不陌生,因为他相当于学习java程序的hello world一样地位; 主要用来绑定xml界面;那么问题来了,他是怎么把界面绑定上的?怎么把界面渲染出来的? 带着这些问题我们来看看android中布局加载渲染过程。其实Activity对界面布局的管理是都是通过Window对象来实现的,Window对象,顾名思义就是一个窗口对象,而Ac

2017-09-11 14:38:21 577

原创 context应用启动时创建流程

android基础面试题中经常出现一道题目就是: 一个app中能够创建多少个application 、 activity? 通过上一篇 《android context详解》中知道一个app应该只能创建一个application和多个activity。 并且每个activity继承自context 并且对应一个ContextImpl.那么今天我们一起来分析一下app启动过程中context构

2017-09-11 11:51:13 400

原创 android Context 详解

android context 是开发应该相当熟悉,晚上也有很多讲解文章,这里整理出了关于context的重要内容。一、Context到底是什么?从java的角度他就是一个抽象类。 从android运行的角度,也可以理解成“运行环境”:它提供了一个应用运行所需要的信息,资源,系统服务等。context.java 部分源码: public abstract class Context {

2017-09-08 16:17:03 570 1

exoplayer 编译出来的ffmpeg扩展库aar

exoplayer 编译出来的ffmpeg扩展库aar,FFmpeg 模块提供 ,它使用 FFmpeg 进行解码 并且可以呈现以各种格式编码的音频。FfmpegAudioRenderer。 使用模块将aar加入项目libs。 按照上述说明进行检查后,构建并依赖 模块,下一步就是告诉ExoPlayer使用。如何 执行此操作取决于您使用的播放器 API:FfmpegAudioRenderer 如果要将 传递给 ,则 可以通过设置参数来启用使用模块 的构造函数。这将用于 播放(如果不支持输入格式)。通过以优先于 .DefaultRenderersFactoryExoPlayer.BuilderextensionRendererModeDefaultRenderersFactoryEXTENSION_RENDERER_MODE_ONFfmpegAudioRendererMediaCodecAudioRendererEXTENSION_RENDERER_MODE_PREFERFfmpegAudioRendererMediaCodecAudioRenderer 如果已子类化,则在 中的输出列表中

2023-07-24

FFmpegVideoPlayer.rar

SurfaceViewMediaPlayer-android基于ffmpeg本地视频、在线视频、直播播放器 支持rtmp、rtsp、http等协议;是从IPC摄像头管理提取出来,项目虽然说是一个播放器但是每个每个层面都是分开,例如可以做成p2p点到点媒体的传输和播放;每个api都可以独立当做工具类使用。

2020-09-11

android 插件式无刷新换肤和字体大小切换 兼容android 8.1

android 插件式无刷新换肤和字体大小切换 兼容android 8.1; theme_dome 为dome 案例工程;black_theme 皮肤包工程。

2018-07-19

空空如也

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

TA关注的人

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