自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 andriod 监听系统截屏操作

最近公司项目需要做一个需求,就是监听app截屏,然后上报埋点信息的需求,但android是没有系统的接口可监听,只能自己实现(不像ios 系统提供了,调用一下几行代码就完事),而自己实现的话就存在各种android机型的适配问题,下面将整个代码贴一下:package com.hundsun.winner.application.base;import android.content.Con...

2019-08-08 16:56:01 427

原创 浅谈android热门第三方框架-RxJava

RxJava 是一个 基于事件流、实现异步操作的库。实现异步操作,类似于 Android中的 AsyncTask 、Handler作用。由于RxJava基于事件流的链式调用,所以使得 RxJava逻辑简单,实现优雅,使用简单,而且随着程序逻辑复杂性的提高,依然能够保持简洁和优雅。相信才接触RxJava的现在肯定还是一脸懵逼状态,那么先举一个生活中的例子介绍其原理,先有个初步印象,后面再结合源码具...

2019-06-02 23:17:18 175

原创 android 线程Thread及多线程总结

目录1,线程Thread1.1 Thread概念1.2 Thread 几种状态1.3 Thread 主要函数1.4 Thread 的使用1.5 Thread 安全与Thread 同步2,多线程的实现方式2.1 Handler+Thread github上demo地址 https://github.com/labiqi/android-download2.2 AsyncTask...

2019-05-22 09:30:39 764

原创 详谈android事件分发机制

在从事android开发过程中,我们经常会碰到View之间的滑动冲突,如ScrollView与Listview、RecyclerView之间的嵌套使用。在很好的解决此类问题之前,我们应深入的了解Android事件响应机制。预备知识MotionEvent对象的四种状态MotionEvent.ACTION_DOWN:手指按下屏幕的瞬间。MotionEvent.ACTION_MOVE:手指在屏幕...

2019-05-18 17:03:53 241

原创 android 系统进程间通信 Binder

Binder是Android系统进程间通信(IPC)方式之一。 android 系统基于linux,目前linux支持的IPC包括传统的管道,System V IPC,即消息队列/共享内存/信号量,以及socket等。那么android系统也支持这些传统的进程间通信方式,为什么android系统还要单独开发一套使用Binder来进行通信呢?主要有如下两个方面:1, 性能角度由于在移动设备诸如...

2019-05-16 23:23:02 261

原创 android消息机制分析

消息机制主要用于多线程的通信,在android开发中最常见的场景就是,在子线程中做耗时操作,比如下载图片等等,操作完成后需要在主线程中更新ui,这时就需要用到消息机制来完成子线程与主线程的通信。Android规定访问UI只能在主线程中进行,如果在子线程中访问UI就会发生异常,这是因为ViewRootImpl对UI的操作做了验证,这个验证是在ViewRootImpl的checkThread()方法中...

2019-05-15 17:56:29 132

原创 android Application讲解

基本概念Application和Activity,Service一样是Android框架的一个系统组件,当Android程序启动时系统会创建一个 Application对象,用来存储系统的一些信息。Android系统自动会为每个程序运行时创建一个Application类的对象且只创建一个,所以Application可以说是单例(singleton)模式的一个类。通常我们是不需要指定一个App...

2019-05-09 17:52:54 191

原创 android JVM GC overhead limit exceeded

最近在项目中经常出现Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded的error,是由于并行/并发回收器在GC回收时间过长时会抛出OutOfMemroyError。过长的定义是,超过98%的时间用来做GC并且回收了不到2%的堆内存。用来避免内存过小造成应用不能正常工作。解决此问题两个方向:1,检查代码,检查内存泄...

2019-04-22 11:29:53 499

原创 HTTP协议

HTTP(超文本传输协议)是应用层上的一种客户端/服务端模型的通信协议,他由请求和响应构成,并且是无状态的(暂时不介绍HTTP2)。协议协议规定了通信双方必须遵循的数据传输格式,这样通信双方按照约定的格式才能准确的通信。无状态无状态是指两次连接通信之间是没有任何关系的,每次都是一个新的连接,服务端不会记录前后的请求信息。协议内容请求(Request)客户端发送一个HTTP请求到服务器...

2019-03-29 16:45:15 129

原创 android 版本兼容之PopupWindow中嵌套ListvView onitemclick 事件无响应

android开发头疼问题之一就是android各个版本的兼容,最近遇到在android5以上在PopupWindow中嵌套ListvView各个item都能响应点击事件,但在4.3版本上却点击无响应,原来是android 4 版本需要手动设置在PopupWindow 中获取焦点,加上setFocusable(true); 这一行代码就ok了。...

2019-03-15 12:01:04 297

原创 android之Fragment解析

Fragment,简称碎片,是Android 3.0(API 11)提出的,为了兼容低版本,support-v4库中也开发了一套Fragment API,最低兼容Android 1.6。以前support-v4库是一个jar包,24.2.0版本开始,将support-v4库模块化为多个jar包,包含:support-fragment, support-ui, support-media-compa...

2019-02-26 23:55:17 135

原创 android 内存泄漏分析

1,什么是内存泄漏;2,内存泄漏与内存溢出的区别与关系;3,常见内存泄漏情况4,内存泄漏分析工具;1,内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。通俗一点讲就是不使用或用完的内存,因为某些原因无法回收,造成的一种内存浪费;2,内存泄漏与内存溢出的区别与关系...

2019-01-01 23:47:05 118

原创 android四大组件之BroadcastReceiver总结

1,定义:广播是一个全局的监听器,分为发送广播和接收广播两部分。2,应用场景:1,android不同组件和不同模块内通信(多线程与多进程);2,不同app之间的组件之间消息通信;3,Android系统在特定情况下与App之间的消息通信。3,实现原理:广播使用了设计模式中的观察者模式,基于消息的发布和订阅模型,将广播的发送和接收进行了解耦。模型中有三个角色,分别是 :消息...

2018-12-27 09:52:57 119

原创 android四大组件之ContentProvider

1、定义ContentProvider是内容提供者,是Android四大组件之一。在Android中,每一个ContentProvider都会用类似于域名的字符串来注册自己,我们称为授权(authority)。这个唯一标识的字符串是此ContentProvider可提供的一组URI的基础,有了这个基础,才能够向外界提供信息的共享服务。授权是在AndroidManifest.xml中完成的,每...

2018-12-25 14:29:44 144

原创 android四大组件之service总结

Service通常总是称之为“后台服务”,其中“后台”一词是相对于前台而言的,具体是指其本身的运行并不依赖于用户可视的UI界面,因此,从实际业务需求上来理解,Service的适用场景应该具备以下条件:1.并不依赖于用户可视的UI界面(当然,这一条其实也不是绝对的,如前台Service就是与Notification界面结合使用的);2.具有较长时间的运行特性。 常见于下载等耗时任务。一,ser...

2018-12-23 23:11:18 122

原创 android 四大组件之activity总结

Activity是Android组件中最基本也是最为常见用的组件,Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互。 下面总结一下以下activity常用知识点:1,activity 生命周期2,activity 页面跳转及传参3,activity 状态保存及恢复4,activity 启动模式5,activity 启动过程6,activity 全屏设置7,activ...

2018-12-23 00:24:07 391

原创 android 页面切换自动埋点

Android4.0之后Application添加了Application.ActivityLifecycleCallbacks接口,这个接口一经注册,就会自动监听整个APP 中所有Activity 的生命周期方法的执行(会在对应的父类Activity的方法被执行之后自动触发)。实现无感知的监听Activity的启动,由此实现对小方页面切换的自动埋点。registerActivityLifecyc...

2018-12-04 10:29:09 282

原创 android webview 右滑返回与GestureDetector 手势冲突解决

最近在搞一个资讯新闻右滑返回退出当前页面,最开始用的是实现SwipeBackActivityBase这个接口,设置 getSwipeBackLayout().setEdgeSize(metrics.widthPixels / 3);//经验证设置一半等于没设置,只有部分区域滑动有滑动返回效果,后面索性我就用滑动手势来实现,先贴代码:class MyGestureListener exten...

2018-11-21 14:35:15 1787

原创 Android开发之Android studio 3.2.1配置androidannotations

androidannotations,Butterknife 组件等大大的提高了开发效率,但在配置androidannotations 的时候却出现了问题,根据根据网上的资料配置 annotationProcessor “org.androidannotations:androidannotations:AAVersion"implementation"org....

2018-10-31 21:19:55 467 2

原创 android debug SIGABRT (signal SIGABRT)

android调试模式 设置断点debug总是弹出SIGABRT (signal SIGABRT) 而被卡死问题的解决。点击Android Studio 进入Preferenes,定位到Build,Execution,Deployment下的Instant Run 取消Enable Instant Run to host swap code/resource changes on deploy。...

2018-10-24 17:03:08 3677

空空如也

空空如也

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

TA关注的人

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