android进阶
文章平均质量分 93
吴唐人
AAAAAA coder
展开
-
Android-aab格式 App Bundle初体验
android包在googlePlay 一种新的上传分发格式,以前是apk,现在可以传.aab通过使用App Bundle可以有效的减少应用包的大小,提升安装成功率并减少卸载量。它是不能直接安装的,我们可以借助googlePlay完成下载安装,也可以使用BundleTool工具生成符合用户设备的apk并且部署到设备上。原创 2021-07-06 20:56:09 · 2252 阅读 · 1 评论 -
Android-自定义Factory2打造动态换肤(一)
目录需求分析流程方案-自定义Factory2(通过阅读源码得知)创建View的过程代码-实战部分需求分析实现APP换肤的功能,要求:为避免增加apk体积不预先内置资源包仅仅有一个默认的,因此需要实现动态换肤换肤功能必须实时生效无需用户重启app无闪烁换肤字体、状态栏、自定义View、系统View 换肤Activity、Fragment换肤流程方案-自定义Factory2(通过阅读源码得知)我们可以参考系统创建view的流程,在创建的过程中我们是否可以偷梁换柱呢?首先我们通过set原创 2020-05-16 17:59:31 · 1979 阅读 · 0 评论 -
Android事件分发机制--浅显易懂解析
Android事件分发机制的本质将点击事件向某个View进行传递并且最终得到处理,即当一个点击事件发生后,系统需要将这个事件传递给一个具体的View处理,这个事件的传递过程就是事件分发过程事件在那些对象传递Activity、ViewGroup、View分发流程:Activity(Window)-> ViewGroup -> Viewsuper:调用父类方法true:处理事件,事件...原创 2019-12-22 12:31:17 · 216 阅读 · 0 评论 -
Android自定义View--时钟效果
初衷工作四年了,能力水平并没有跟工作年限挂上钩,至今依旧是一个搞开发的小僧。由于公司是做物联网(车载、POS)的,项目UI并不像互联网公司那样花里胡哨的,所以自定义View一直在项目中体现的并不是很多,但是自定义View是一个Android工程师必备的一项基础技能,所以平常也会自己进行一些简单的练习。突发奇想做了一个时钟,感觉挺好玩的,网上也有很多这样的博客,这里也只是做一个小小的分享,能力不足...原创 2019-12-14 17:10:28 · 1608 阅读 · 0 评论 -
MVVM-DataBinding
MVC、MVP、MVVM简单介绍,使用DataBinding构建MVVM实例原创 2019-03-01 17:02:44 · 740 阅读 · 0 评论 -
Android Studio 最常用的15个插件整理
Android Studio 最常用的15个插件整理原创 2017-06-24 16:27:20 · 4316 阅读 · 0 评论 -
Android 热修复方案--阿里百川HotFix
概述我们都知道一旦我们的应用被发布到各大平台上面之后修复bug是一件很麻烦的事情,如果要重新发布审核周期之长,用户肯定不接受,虽然也可以在应用中自检更新,但是一个小小的bug动辄就更新应用实在是大材小用,但是不更新用户怎么办?这时就有人就想到了热修复方案,热修复的方案有很多,但是找到一个相对比较优秀的方案就显得尤为重要了,下图是各大方案的对比: (图片来源:阿里百川官网) tip: 阿里百川地原创 2017-04-27 10:41:22 · 6357 阅读 · 0 评论 -
Android性能优化--内存泄露
概述:内存泄露是指当一个对象不再使用的时候,本该被回收,而被其他对象所持有导致该对象无法被GC回收,这种导致了本该被回收的对象不能被回收而停留在堆内存中,就产生了内存泄漏。内存泄漏与内存溢出的区别内存泄漏(Memory Leak) 进程中某些对象已经没有使用的价值了,但是他们却还可以直接或间接地被引用到GC Root导致无法回收。当内存泄漏过多的时候,再加上应用本身占用的内存,最终可能就会导致内存原创 2017-04-21 15:03:26 · 548 阅读 · 0 评论 -
android修改静态ip(支持3.x,4.x,5.x)
//Android 3.x,4.x修改静态ip[java] view plain copy print?package com.example.iptest; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetExcep转载 2017-02-15 18:29:46 · 6177 阅读 · 0 评论 -
android 签名混淆-多渠道打包
android 签名混淆概述:以前觉得混淆没那么重要现在那是因为没有什么重要的上线项目,现在依然没有(已哭),怕日后会用到所以在这里做个记录,看了之前的几篇博客访问量寥寥无几但是觉得也没啥,别人不看我就自己看呗是不是。首先看不签名的混淆方式在modle build.gradle中修改添加 buildTypes { debug { minifyEnabled t原创 2016-10-20 17:56:12 · 727 阅读 · 0 评论 -
Android Data Bingding初体验
1.配置只需要在model builder.gradle中android中配置如下即可:dataBinding { enabled = true }如果还想使用lambda表达式,则再加入①② ①:在model 中添加compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 ta原创 2017-01-17 20:50:04 · 1601 阅读 · 1 评论 -
retrolambda在Android studio中的使用
DataBinding如何与lambda相互兼容,retrolambda、Jack-lambda在Android studio的配置依赖原创 2016-12-01 21:37:15 · 992 阅读 · 0 评论 -
Android Studio新功能解析,你真的了解Instant Run吗?
转载自:http://blog.csdn.net/guolin_blog/article/details/51271369 本篇文章首发于我的微信公众号,由于网上讲解Android Studio中Instant Run功能的文章实在是太少了,为了让更多人可以了解这个技术,我将这篇文章同步到我的博客上面。想看更多技术文章的朋友可以扫一扫本篇文章底部的二维码来关注我的微信公众号,每周都会有技术文章推送转载 2016-10-20 10:48:16 · 423 阅读 · 0 评论 -
Android发布开源库到jcenter
Android发布开源库到jcenter概述熟悉Android studio的人对下面的引用再熟悉不过了,但是你真的明白它是如何使用的吗?好吧,其实Android Studio是从build.gradle里面定义的Maven 仓库服务器上下载library的。Apache Maven是Apache开发的一个工具,提供了用于贡献library的文件服务器。总的来说,只有两个标准的Android lib原创 2016-09-13 16:30:29 · 465 阅读 · 0 评论