如何创建完美的单例模式?
设计模式在软件开发者中十分受欢迎。设计模式是对于常见软件问题的良好解决方案。单例模式是 Java 中创建型设计模式的一种。
单例类的目的是控制对象创建,约束对象的数量有且只有一个。单例模式只允许有一个入口来创建类实例。
因为只有一个单例类实例,任何单例类的实例都将只会产生一个类…
Android 开发者必知必会的权限管理知识
提到Android 权限管理,业内人士都知道Google 在Android 6.0时提出了运行时权限管理机制,在Android 6.0之前,所申请的权限只需要在AndroidManifest.xml列举就可以,从而容易导致一些安全隐患,因此,在Android 6.0 时,Google 为了更好的保护用户隐私提出了新的权限管理机制
这是最好的Android相关原创知识体系(100+篇)
知识体系从2016年开始构建,所有的文章都是围绕着这个知识体系来写,目前共收入了100多篇原创文章,其中有一部分未收入的文章在我的新书《Android进阶之光》中。最重要的是,这个知识体系仍旧在成长中。
【Android 控件体系(一)】详解Android控件体系与常用坐标系
本文是Android控件体系的第一篇文章,此文详细介绍了Android控件体系与常用坐标系,图文结合通俗易懂。
Android系统源码分析--Context
Android是一个开源系统,至少说是大部分开源的,源代码的学习对于我们学习Android帮助非常大,可能很多人看看源码时感觉代码太多了,不知道从何开始,今天我就从基本的部分开始跟大家一起学习Android源码。声明:本篇以及以后Android源码分析是基于Android-7.…
Android 进阶路线(思维导图)
前面写了文章《Android开发者该如何进阶?》,整理了Android开发中的一些知识点,包括Java基础、Android基础、Android进阶、开源框架和工具类库等几个大的方面。罗列了其中的包含的知识点,文章有点长,覆盖了Android 知识面较广,为了将各个知识点梳理得更…
NullPointerException 与 Java 自动装箱拆箱机制
Java 装箱拆箱不了解的话,就要小心这样的操作...
30 多个短小而又专业的最佳安卓开发者建议
一些有用的建议。
史上最全的贝塞尔曲线(Bezier)全解(一):初识贝塞尔曲线
Android学习贝塞尔曲线的全面教程,向实现更多炫酷动画效果吗骚年,那就从这里开始吧
玩转全新的 Android 8.0 Oreo 后台策略
我们永远都需要流畅的用户体验,但很遗憾我们手上的硬件资源却总是和这个需求唱反调。这也是 Android 平台不断努力的切入点——从 API 26开始,Android 对后台服务引入了严格的限制。基本上,除非您的应用在前台运行,否则系统将在几分钟内停止应用的所有后台服务。 由于对…
Android触摸事件传递分析与实践
Android开发经典课题
开源项目分享————掘梦
掘梦是一款有助于Android攻城狮们巩固基础,进价提升的一个资讯阅读APP,掘梦的宗旨就是把所有Android相关所有优秀的文章和框架、控件等第一时间向大家展示,让大家紧跟Android开发的新方向。 项目介绍 黄金招聘季节的时候,找工作去复习android相关知识点的时候,发…
花了 6 个月整理了 100 篇 Android 干货文章
距上次「花了 4 个月整理了 50 篇 Android 干货文章」已经2个月了,在这2个月中新增了50篇精选文章。 接下来再来整理一波。 热门技术 巧用Android多进程,微信,微博等主流App都在用 Google I/O ‘17 新推出的物理动画库 Android Studi…
Android 中LayoutInflater(布局加载器)系列博文说明
(1)这次博客更新的有点晚,因为最近一直在攒大招,想写一个关于Jbox2d的一个系列文章,这个系列的文章就作为一个过渡文章吧。 (2)偶然之间发现了小红书的引导页动画,实现过程就是通过自定义LayoutInflater.Factory,来实现XML属性统一提取,在后面的实战篇会…
使用 Router 实现的模块化,如何优雅的回到主页面
版权声明: 本账号发布文章均来自公众号,承香墨影(cxmyDev),版权归承香墨影所有。 每周会统一更新到掘金,如果喜欢,可关注公众号获取最新文章。 未经允许,不得转载。 一、前言 现在越来越多的 App 以 Router 路由的形式,来实现模块化。一般而言,这种 Router…
Android 录音实现不再担心 - 个案例帮你解决你的问题
最近有小伙伴经常android的录音怎么实现,有没有相关的案例。今天给大家推荐一个android中实现录音和播放的小案例。 在 RecordAudioDialogFragment 有一个 newInstance(int maxTime) 的静态方法供外部调用,如果想设置录音的最…
Android手动显示和隐藏软键盘方法总结
关于一些场景下,需要手动隐藏键盘或者弹出键盘.
Android 能让你少走弯路的干货整理
这个公众号是由「stormzhang」维护的,江湖人称「段子张」或「良心张」分享了很多 Android 方面的干货,除了 Android 之外也有很多其他方面的干货,真的相当的良心,我开始写博客也是受了张哥的影响,良心推荐。 郭神出品,必属精品,郭神在 CSDN 上面写了很多高…
Android是如何管理App内存的--Android内存优化第二弹
前文我们普及了下关于GC的一些事, 对GC的一些个概念, 流程有个大概的了解. 在Application的启动流程一文中, 我们有提到, Android中每个App默认情况下是运行在一个独立进程中的, 而这个独立进程正是从Zygote孵化出来的VM进程. 也就是说, 每个App是
Android 8.0 运行时权限策略变化和适配方案
Android8.0也就是Android O即将要发布了,有很多新特性,目前我们可以通过AndroidStudio3.0 Canary版本下载Android O最新的系统映像的Developer Preview 4版本,Developer Preview 4是Android O正…
[[译]内存泄露的八种花样](https://juejin.im/entry/5a090...
具有垃圾回收特性的语言(如Java)的优点在于,它使得开发者不需要显式的对内存的分配和回收进行管理。这个特性降低引发段错误引发应用崩溃的风险,避免没有释放的内存长期占据堆内存,从而编写出更加安全的代码。可惜这并不是银弹,在Java里还是有其他方式导致内存泄露,这意味着我们的An…
Service基础全面总结
较为全面的总结了android开发中service的基础知识,以及相关实践~
Google 正式推出中文版 Android 开发教学视频,你学不学!
发布一条重磅消息,绝对不轻!为响应广大中国安卓程序员的强烈号召,Google 爸爸终于开始制作中文版的 Android 开发教学视频。
HenCoder:给高级 Android 工程师的进阶手册
是什么? 对,标题没写错,我是认真的。给高级 Android 工程师的进阶手册。 这件事的准备工作,我做了整整一年。 为什么? 决定做这件事,源于一年前我和老婆的一次对话。 我:「又拒了个技术分享邀请。」 老婆:「为什么?」 我:「不知道讲什么。」 老婆:「江郎才尽了?」 我:「…
RecyclerView 自定义ItemDecoration从入门到实现吸顶效果
刚接触RecyclerView,用过才发现RecyclerView没有分割线过后,遂到网上搜解决办法才发现自定义一个ItemDecoration只要一条黑线还要写代码,好麻烦...
RecyclerView 配合 DiffUtil,好用到飞起
版权声明: 本账号发布文章均来自公众号,承香墨影(cxmyDev),版权归承香墨影所有。 每周会统一更新到这里,如果喜欢,可关注公众号获取最新文章。 未经允许,不得转载。 一、前言 DIffUtils 是 Support-v7:24:2.0 中,更新的工具类。因为已经更新了一段…
活儿好又不纠缠的 IntentService
版权声明: 本账号发布文章均来自公众号,承香墨影(cxmyDev),版权归承香墨影所有。 未经允许,不得转载。 一、前言 Service 是 Android 四大组件之一,正常来说,我们直接使用 Service 就可以了。 但是 Service 存在几个问题: 默认不会运行在单…
【图解】Android View 事件传递机制
事件类型:
ACTION_DOWN : 手指刚接触屏幕
ACTION_MOVE : 手指在屏幕上移动
ACTION_UP : 手指从屏幕上松开的一瞬间
ACTION_POINTER_DOWN : (屏幕上已有触控点,再按下其他触控点)
ACTION_POINTER_UP :(屏幕上当前有多个触控点,松开非最后一个点)
ACTION_CANCEL :
每个事件都是以 ACTION_DOWN 开始 ACTION_UP 结束。
事件处理:
传递 —— dispatchTouchEvent() 函数
拦截 —— onInterceptTouchEvent() 函数
消费 —— onTouchEvent() 函数 和 OnTouchListener
Android 灵魂画家的 18 种混合模式
重新认识神秘的 PorterDuffXfermode。
学会正确的使用 PorterDuffXfermode。
收获【两张示例图】,帮助你在实际中正确的运用各种混合模式。
Android 开发者该如何进阶?
封面.png 前言 经常在简书和微信上收到一些同学的私信,说自己马上毕业或者已经毕业一年,从事Android开发相关的工作,现在不知道要学习什么东西了。或者说自己也在摸索着学习,但是不知道学习的路线对不对,感觉很迷茫,想让我给一些建议。 其实大多数的开发者都有过类似的经历(我也有…
仿微信朋友圈发表图片拖拽和删除功能
仿微信朋友圈发表图片拖拽和删除功能,使用ItemTouchHelper实现拖拽和删除功能,并解决图片OOM,从分析到实现代码
面试必备:ArrayList源码解析(JDK8)
很久没有写博客了,准确的说17年以来写博客的频率降低到一个不忍直视的水平。这个真不怪我,给大家解释一下。 一是自从做了leader,整天各种事,开会,过需求,无限循环。心很累,时间也被无线压榨 二 我本身也在学习一些其他的技术,比如ReactNative,也看了半天的kotli…
关注我就能达到大师级水平,这话我终于敢说了
这句话我真的憋了好久。Android 工程师只要关注我,我就能让你达到大师级水平,不是面试时的吹牛逼水平,不是自我欺骗的了解皮毛的水平,是真正的开发实力。以前我有这个自信,没这个证据。但现在,证据我也有了。 关注我的人都知道,我这三个多月来一直在网上分享关于 Android 自…
写给Android开发者的混淆使用手册
毫无疑问,混淆是打包过程中最重要的流程之一,在没有特殊原因的情况下,所有 app 都应该开启混淆。
如何在Android开发者的寒冬中破冰而出?
在这个行业,每隔一段时间都会出现新的技术,好焦虑呀,到底该学什么?14年移动开发出现了大量的泡沫,随便一个培训机构培训几个月出来的在北上广都是8k起,现在感觉移动开发工程师供应需求方都要饱和了。招聘公司每天简历都要收到上百封,很多移动开发面试都接不到电话。该怎么办?要学习RN吗…