![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android
文章平均质量分 85
RichardNo1
一个写代码的数学人
展开
-
跨进程通信:Binder机制
Android 系统源码-2:Binder 通信机制Binder 是 Android 系统中非常重要的组成部分。Android 系原创 2024-07-03 09:08:04 · 996 阅读 · 0 评论 -
线程通信:Handler、MessageQueue和Looper
Android 消息机制:Handler、MessageQueue 和 Looper在这篇文章中,我们将会讨论 Android 的原创 2024-07-03 09:07:31 · 536 阅读 · 0 评论 -
EventBus的源码分析
Android EventBus 的源码解析1、EventBus 的使用1.1 EventBus 简介EventBus 是一款用于原创 2024-07-03 09:06:58 · 820 阅读 · 0 评论 -
RxJava系列(4):RxJava源码分析
RxJava 系列-4:RxJava 源码分析在之前的文章中我们介绍了 RxJava 2 的常用的 API 的方法总结、背压的概念原创 2024-07-02 15:46:52 · 364 阅读 · 0 评论 -
RxJava系列(1):一篇的比较全面的RxJava2方法总结
RxJava2 系列 (1):一篇的比较全面的 RxJava2 方法总结看了许多讲解RxJava的文章,有些文章讲解的内容是基于第原创 2024-07-02 15:45:06 · 322 阅读 · 0 评论 -
Retrofit源码阅读
动态代理在 Android 中的应用:Retrofit 源码解析在之前的文章 《Andriod 网络框架 OkHttp 源码解析》原创 2024-07-01 14:37:08 · 809 阅读 · 0 评论 -
OKHttp源码阅读
Andriod 网络框架 OkHttp 源码解析1、OkHttp 的基本使用OkHttp 是 Square 的一款应用于 Andr原创 2024-07-01 14:36:15 · 588 阅读 · 0 评论 -
SurefaceView_and_TextureView
Android:解析 SurefaceView & TextureView1、关于 SurefaceView 和 TextureV原创 2024-07-01 14:33:46 · 702 阅读 · 0 评论 -
Glide系列:Glide主流程源码分析
Glide 系列-2:主流程源码分析(4.8.0)Glide 是 Android 端比较常用的图片加载框架,这里我们就不再介绍它的原创 2024-06-28 17:50:49 · 518 阅读 · 0 评论 -
浅谈ViewModel生命周期控制
浅谈 ViewModel 的生命周期控制1、从一个 Bug 说起想必有过一定开发经验的同学对 ViewModel 都不会陌生,它是原创 2024-06-27 17:18:19 · 1375 阅读 · 0 评论 -
浅谈LiveData的通知过程
Java 注解及其两种使用方法一般的,注解在 Android 中有两种应用方式,一种方式是基于反射的,即在程序的运行期间获取类信息浅谈 LiveData 的通知机制LiveData 和 ViewModel 一起是 Google 官方的 MVVM 架构的一个组成原创 2024-06-27 17:17:27 · 845 阅读 · 0 评论 -
探索Android架构设计
在 Android 中使用 JNI 的总结最近在研究 Android 相机相关的东西,因为想要对相机做一个封装,于是想到要提供支持Android 应用架构设计探索:MVC、MVP、MVVM和组件化MVC、MVP和MVVM是常见的三种架构设计模式,当前MVP和M原创 2024-06-27 17:16:34 · 825 阅读 · 0 评论 -
Dagger从集成到源码
Android 插件化框架 DynamicLoadApk 源码分析DynamicLoadApk 应该算是 Android 插件化诸Dagger 从集成到源码带你理解依赖注入框架本文从例子到源码来帮助你学习和理解 Dagger 的集成,因为只有例子没有源码的博文原创 2024-06-27 17:15:40 · 639 阅读 · 0 评论 -
Android高级面试_8_热修补插件化等
Android 高级面试:插件化和热修复相关1、dex 和 class 文件结构class 是 JVM 可以执行的文件类型,由 j原创 2024-06-27 17:06:33 · 955 阅读 · 0 评论 -
Android高级面试_6_性能优化
Android 高级面试-6:性能优化1、内存优化1.1 OOM问题:OOM 的几种常见情形?数据太大:比如加载图片太大,原始的图Android 高级面试-7:网络相关的三方库和网络协议等1、网络框架问题:HttpUrlConnection, HttpClie原创 2024-06-27 17:05:40 · 1026 阅读 · 0 评论 -
Android高级面试_5_四大组件、系统源码等
Android 高级面试-4:虚拟机相关1、内存管理问题:GC 回收策略问题:Java 中内存区域与垃圾回收机制问题:垃圾回收机制Android 高级面试-5:四大组件、系统源码等1、四大组件1.1 Activity问题:在两个 Activity 之间传递对象原创 2024-06-27 17:04:47 · 733 阅读 · 0 评论 -
Android高级面试_2_IPC相关
Android 高级面试-2:IPC 相关1、IPC问题:Android 上的 IPC 跨进程通信时如何工作的问题:简述 IPC?Android 高级面试-3:语言相关1、Java 相关1.1 缓存相关问题:LruCache 的原理?问题:DiskLruCac原创 2024-06-27 17:03:54 · 1013 阅读 · 0 评论 -
Android高级面试_12_项目经验梳理
相机[ ] Android 中开启摄像头的主要步骤压缩深度研究:SurefaceView, TextureView, CameraAndroid 高级面试-1:Handler 相关问题:Handler 实现机制(很多细节需要关注:如线程如何建立和退出消息循环等原创 2024-06-27 17:03:00 · 718 阅读 · 0 评论 -
Android高级面试_12_各种三方库分析
Android 高级面试:三方库源码分析1、ARouter既然使用的时候需要 AnnotationProcessor,那么说明它是原创 2024-06-27 16:25:22 · 762 阅读 · 0 评论 -
Android中ViewModel+LiveData+DataBinding的配合使用(kotlin)
Android 中 ViewModel、LiveData 和 Data Binding 的配合使用(Kotlin)摘要本文将介绍如原创 2024-06-26 12:39:59 · 335 阅读 · 0 评论 -
Android与服务器交互的方式中的对称加密和非对称加密(kotlin)
Android与服务器交互中的对称加密和非对称加密(kotlin)引言在 Android 与服务器交互时,我们常常需要进行数据传输原创 2024-06-26 12:28:22 · 443 阅读 · 0 评论 -
Android中使用Scroller实现View的弹性滑动
Scroller类本身不处理实际的视图滚动,而是计算滑动的偏移量。通过调用方法启动滑动,并指定起始位置、偏移量和持续时间。在方法中计算当前的滑动偏移量,并更新 View 的位置。调用或方法触发 View 重绘,确保动画持续进行。这样,通过Scroller类的配合,可以实现 View 的平滑、弹性滑动效果。原创 2024-06-24 17:28:29 · 349 阅读 · 0 评论 -
Android中的导航navigation的使用方式
Android中的导航navigation的使用方式原创 2024-06-24 15:35:45 · 803 阅读 · 0 评论 -
Android Service功能使用
在Android开发中,Service是一个在后台长时间运行的组件,不会提供用户界面。它可以用来处理一些需要在后台进行的操作,比如播放音乐、下载文件或进行网络请求原创 2024-06-24 11:19:14 · 326 阅读 · 0 评论 -
调试中手机抓包工具的使用
android 手机开发中常遇到网络数据的调试问题,比如说http头文件的读取,cookie的设置读取,以及数据的调试,都可能用到抓包工具。本文介绍Fiddler。一、开启Fiddler的远程连接,Fiddler 主菜单 Tools -> Fiddler Options…-> Connections页签,选中Allowremote computers to connect。二、手机端在wifi高级设原创 2015-11-02 17:10:58 · 2778 阅读 · 0 评论 -
Android 倒计时的控制
一、问题复杂性的由来需求是这样的倒计时模块需要用这样的格式来显示出来,xx天xx时xx分xx秒, 看起来也没有什么复杂性,但是问题来了,后台说他只能给我结束时间和当前的时间,剩余时间需要我自己去计算,我也是醉了,本来倒计时这个东西我就得捣鼓半天,你还得让我去算剩余时间,心里瞬间一万只那个什么马在飞奔啊,这本来就是后台的活啊。。。二、设计思路把后台给出的开始时间和结束时间,转换为Java的Date原创 2015-10-14 16:09:18 · 715 阅读 · 2 评论 -
Android Fragment实现导航栏
人生第一次写博客,也不求有什么大神之作,就自己练练手,让自己学会表达,学会把自己心里的东西拿出来给人家看看,就像找女朋友一样,你不说出来自己多爱她,甚至不表现出来,哪里会有机会呢,是吧?让她自己发现你,爱上你,可能性好小的样子。。。原创 2015-10-14 11:55:31 · 1793 阅读 · 0 评论 -
统一管理程序异常
一、简介本文介绍的是对程序异常的统一管理,当程序发生异常的时候,不会让用户看到原生的崩溃界面,我们可以自定义出更人性化的界面,同时可以把程序的异常信息返回给服务器。让我们可以轻松的维护程序,逐渐减少程序的bug,进而完善程序。二、实现import java.lang.Thread.UncaughtExceptionHandler;import android.content.Context;i原创 2015-11-01 19:21:02 · 491 阅读 · 0 评论 -
减少重复的代码
重复的代码一直都是可维护性的大敌,重构的重要任务之一也就是要去除掉重复的代码,有效的减少重复代码,可以大大提高软件的扩展性。在Android开发中,很容易产生重复的代码。因为Android是组件,模板式开发,每个页面都是独立用Activity或Fragment实现,布局文件都是用XML方式去写,所以很容易造成代码的重复,虽然二个页长的差不多,但毕竟是二个Activity,于是就拷一份出来,改吧改吧就原创 2015-11-04 19:52:56 · 567 阅读 · 0 评论 -
Fragment的懒加载
我们在做应用开发的时候,一个Activity里面可能会以viewpager(或其他容器)与多个Fragment来组合使用,而如果每个fragment都需要去加载数据,或从本地加载,或从网络加载,那么在这个activity刚创建的时候就变成需要初始化大量资源。这样的结果,我们当然不会满意。那么,能不能做到当切换到这个fragment的时候,它才去初始化呢?答案就在Fragment里的setUserVi转载 2015-11-04 16:07:12 · 430 阅读 · 0 评论 -
Gzip方式数据请求以及解码
Android App中进行网络请求,我们都司空见惯。那么进行http请求时可以进行压缩请求,你造么。。。简介HTTP定义了一些标准的内容编码类型,并允许用扩展的形式添加更多的编码。 Content-Encoding header 就用这些标准化的代号来说明编码时使用的算法 Content-Encoding值 gzip 表明实体采用GNU zip编码 compress 表明原创 2015-10-19 14:58:03 · 6914 阅读 · 0 评论 -
后台到前端--无缝隙
自整理了一套数据从后台到前端的方案,并已打jar包,在此记录一下。1.BaseApplication中初始化NetworkUtils.init(“你的主网址”, this); //此处最好用IP直连,效率略高2.权限<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permissio原创 2015-11-03 12:00:50 · 436 阅读 · 0 评论 -
Android 启动模式中巧用singleTask
一、问题的由来我们的首页底部导航是这样的 有个需求就是,我们在首页界面中点啊点啊,点到一个商品详情页,加入购物车之后,有个按钮,可以直接跳回首页,并转到购物车选项。可能你会说直接跳回去,然后设置为购物车那一页不就行了么,然而并非如此。二、singleTask介绍只有一个实例。在同一个应用程序中启动他的时候,若Activity不存在,则会在当前task创建一个新的实例,若存在,则会把task中在其之原创 2015-10-16 18:07:28 · 2448 阅读 · 0 评论 -
文字转Bitmap的一个方法
直接上代码public Bitmap getNewBitMap(String text,int height,int width) { Bitmap newBitmap = Bitmap.createBitmap(width,height, Config.ARGB_4444); Canvas canvas = new Canvas(newBitmap);原创 2016-01-05 17:33:44 · 2612 阅读 · 0 评论 -
关于百度地图获取中心点坐标
关于百度地图上获取屏幕中心点的位置,百度上没有人专门整理信息,遇到了在这里整理一下BaiduMap.setOnMapStatusChangeListener(changeListener);BaiduMap设置他的状态改变的监听,监听中有个onMapStatusChangeFinish方法,在这里,地图拖动完成时进行回调,然后进行操作。代码如下private OnMapStatusChangeLis原创 2015-12-22 15:59:18 · 10090 阅读 · 0 评论 -
android 右滑关闭activity
自定义实现了一个开发过程中遇到的一个需求。即右滑关闭当前acitvity,没有像某个大神一样考虑那么多情况,只是满足个人需要。下面看实现定义View/** * 用于右滑关闭activity * @author Richard * */public class RightSlideFinishView extends FrameLayout { private GestureDe原创 2016-01-13 16:15:49 · 1039 阅读 · 0 评论 -
RecyclerView 水平滚动+自动循环轮播
**主要处理的地方: 1、RecyclerView中Adapter的item个人可以无限轮询. 2、RecyclerView自动滑动 3、手指按下时滑动停止,手指抬起后继续自动滑动**public class AutoPollRecyclerView extends RecyclerView { private static final long TIME_AUTO_POLL = 16;原创 2017-07-18 14:07:56 · 10583 阅读 · 7 评论 -
自主研发的阅读app
作为一个资(咸)深(鱼)程序猿,怎么能不自己做一个东西呢平时爱好看一些小说,干脆自己搞一个吧先晒个首页图首先起一个响亮的名字对不对,《悠然读书》,悠然见南山的悠然,朋友说有点骚气然后画图,搭服务端框架,搭移动端框架,撸代码,搞数据,买服务器,建数据库,服务器配置balabala....后来程序终于搭建好了,又搞了个网站,又开始了网站建设,买域名,布置服务器balaba...原创 2019-06-21 18:21:04 · 526 阅读 · 1 评论 -
Android高德导航自定义UI
今天接近一整天都在搞高德导航自定义UI,晚上下班前,终于搞好了,大致的界面就这这样咯, 高德导航官方有一部分教程,http://lbs.amap.com/api/android-navi-sdk/guide/navigation-map/ui-setting/ 大家可以参考,但不是很详细首先要知道一个方法 AMapNaviViewOptions mapOptions = mAMapNaviVie原创 2016-11-15 18:31:10 · 5599 阅读 · 6 评论 -
利用Intent.ACTION_SEND进行分享
安卓系统本身可以很简便的**实现分享功能**,因为我们只需向startActivity传递一个ACTION_SEND的Intent,系统就为我们弹出一个应用程序列表。其实在系统的文件管理器中,这应该是我们常用的功能(包括文件的打开Intent.ACTION_VIEW)。下面列出一个简单的分享方式Intent shareIntent = new Intent();shareIntent.setAc原创 2016-10-27 22:57:33 · 11333 阅读 · 8 评论