JsonChao

其他

Android-Widget 重装上阵

ids)sendBroadcast(updateIntent)这种方式的本质就是发送更新的广播,除此之外,还可以使用AppWidgetManager来直接对Widget进行更新,代码如下。val
2023年3月10日
其他

想研究源码?试试官方版的 Android 源码查看工具

Search:androidxref:以上三种方式,虽然代码更新慢、体验不算好,但总算也能满足我们的大多数需求。现在,我们可以跟它们挥手作别了,因为Google官方发布了源码查看工具:Android
2023年3月9日
其他

【尊享版】你真的会休息吗?如何开始正确地休息?

行业是一个很容易让人头秃、长白发的行业。究其原因,是因为工作强度大、压力大导致身体快速地损耗。那我们在工作中如何才能有效地缓解这种压力呢?一定要调整好自己的工作强度和节奏。至少每隔
2023年3月6日
其他

食之无味?App Startup 可能比你想象中要简单

定义组件接口,用于指定组件的初始化逻辑和初始化顺序(也就是依赖关系),接口定义如下:1、create(...)
2023年2月28日
其他

《如何借助工作打造一个能持续提升的闭环?》

行业是一个很容易让人头秃、长白发的行业。究其原因,是因为工作强度大、压力大导致身体快速地损耗。那么我们在工作中如何有效地缓解这种压力呢?一定要调整好自己的工作强度和节奏,「至少每隔
2023年2月27日
其他

送你几个用起来很爽的 Studio 插件

Connect后拔掉数据线即可。源码地址:https://github.com/pedrovgs/AndroidWiFiADB当然了这个没有插件通过命令也可以做得到~3
2023年2月23日
其他

【尊享版】如何系统构建你的思维认知模型?

分钟后,才能开始干其它的事情」。除了健身之外,还有一条人人都应该牢记的饮食原则:「食物的加工程度越深,就越不应该摄入」。2、『尝试冥想』🍒每天晚上入睡前,建议使用
2023年2月20日
其他

安得广厦千万间

型人才知识体系欢迎把文章分享到朋友圈很感谢您阅读这篇文章,希望您能将它分享给您的朋友或技术群,这对我意义重大。你若喜欢,为
2023年2月17日
其他

【尊享版】如何从零到一掌控习惯?

的恶性循环之中」。3、『替代和挤占』💱使用替代和挤占的方式,会让好习惯占的时间越多,那么,坏习惯占用的时间就会越少。例如我会在休息日晚上使用
2023年2月13日
其他

这个需求很简单,怎么实现我不管,明天上线

型人才知识体系欢迎把文章分享到朋友圈很感谢您阅读这篇文章,希望您能将它分享给您的朋友或技术群,这对我意义重大。你若喜欢,为
2023年2月10日
其他

Android Path 酷炫动画 , 极速 get 花式 Path

s并不在标准的SVG语法中,所以解析会出错。图片->SVG->Path的正确姿势那么为什么我今天又敢出来写(zhuang)博(b)客了呢,因为我已经有了解决这个问题的方案。
2023年2月9日
其他

如何写一篇一看就懂的 Java 对象内存布局?

数组类型的元素长度是不能提前确定的,但在创建对象后又是固定的,所以数组对象的对象头中会记录数组对象中实际元素的个数。以下演示查看数组对象的对象头中的数组长度字段:示例程序char
2023年2月8日
其他

Flutter 系列(一):运行你的第一个 Flutter 应用

doctor来检查是否需要安装其它依赖项来完成安装,这个过程第一次可能需要耗费一段时间,下次就会快很多202201261529488.png从上面诊断信息我们可以看出:1、Flutter
2023年2月7日
自由知乎 自由微博
其他

【尊享版】那两年沉淀的时间增值心法

「将困难的抽象目标转化为具体快乐的实际目标的做法,能够极大地强化我们行动的动力,这就是一个非常好的策略」。而我们前面所说的
2023年2月6日
其他

Android 往事 —— 暗夜的搏杀

『很简单!因为我们自己出厂的机器里已经全都内置了这个部件,所以当接入这个部件的程序运行在咱们的机器上时,程序里接入的那个小部件会主动关闭,由机器内置的部件统一接管消息的传输。』图西朋得意地解释道。
2023年2月3日
其他

如何用 Flutter 实现一个拍手动画特效?

extraSize,...完整的代码,可以在github(https://gist.github.com/Kartik1607/52c882194e3119e0d176fb15e6c6b913)
2023年2月2日
其他

如何用五行代码实现 炫动滑动 卡片层叠布局?

getSwipeThreshold(viewHolder);}因为滑动删除操作是touch事件导致的,且应该是ACTION_UP时,触发的,
2023年2月1日
其他

为什么各大厂自研的内存泄漏检测框架都要参考 LeakCanary?因为它是真强啊!

"/storage/emulated/0/Download/leakcanary-com.pengxr.helloleakcanary/2022-08-22_18-47-28_674.hprof"
2023年1月31日
其他

Flutter 与 Android 的你来我往

BasicMessageChannel(flutterEngine.dartExecutor,"com.dream.messagechannel",StringCodec.INSTANCE)
2023年1月30日
其他

What!我逆向了 Android 代码居然看见……

其中,smali文件夹里,放的都是dex反编译出来的smali文件,如果想改变应用的逻辑,只需要修改smali再重新打包即可。接下来,介绍几种突破方法。寻找切入点直接寻找法
2023年1月27日
其他

Android 侧滑菜单(侧滑删除)总结

菜单点击监听。swipeRecyclerView.setOnItemMenuClickListener(mItemMenuClickListener);OnItemMenuClickListener
2023年1月26日
其他

Android Webp 完全解析 快来缩小 apk 的大小吧

page(https://storage.googleapis.com/downloads.webmproject.org/releases/webp/index.html)我这里下载的是对应mac
2023年1月25日
其他

不同版本上 Bitmap 内存分配与回收原理对比

android::uirenderer::renderthread::RenderProxy::onBitmapDestroyed(getStableID());}引用机制兜底源码分析:
2023年1月24日
其他

App 黑白化技术实践下篇

Demo:https://github.com/sweetying520/codeandnotes/tree/master/Hook/AppBlackAndWhite,配合
2023年1月23日
其他

Material Design之-交互效果炸裂的 FloatingActionMenu

buttonBW.setColorPressed(context.getResources().getColor(R.color.white));buttonBW.setTag(TAG_BW);//
2023年1月20日
其他

App 黑白化技术实践上篇

会发现它们都做了黑白化,如下支付宝的处理:可以看到应用设置了全局灰色调,表达了一种对逝者的哀悼,非常的应景和人性化。作为程序猿,我们来探索一下它从技术角度是怎么实现的。Github
2023年1月18日
其他

飞书前端提到的竞态问题,在 Android 上怎么解决?

虽然限制用户交互对用户体验有受损,但是在当前场景下用户对体验受损的容忍程度如何,对并发的要求是否强烈,都需要根据当前场景具体分析的,不能一概而论。比如,在哪些场景下同步请求是合理的呢?1、分页场景:
2023年1月16日
其他

RecyclerView 简单到想哭的多条目实现

这个框架,看了下源代码,思路很牛逼的吗,被作者的脑洞惊到了。为了踏踏实实的体验一把作者的脑洞就引入到正在做的项目中。使用的过程中戳中了我作为懒货的内伤,像我这样的懒货每次都让我写完全程的
2023年1月13日
其他

Android 壁纸还是 B 站玩得花

}}同时需要添加下Camera的权限。由于这里偷懒,没有使用最新的CameraAPI,也没有动态申请权限,所以你需要自己手动去授权。最后一种,通过Surface来进行自绘渲染。val
2023年1月12日
其他

Android 打造炫酷的 3D 画廊

16.于是我就在想,既然如此,那就用ViewPager来写一个吧,于是就有了这篇博客!进入正题:要实现如下图的功能,需要以下几点:使用ViewPager设置PageTransformer获取图片倒影
2023年1月11日
其他

JNI 从入门到实践,万字爆肝详解!

env->FindClass("java/lang/IllegalArgumentException");env->ThrowNew(exceptionClz,
2023年1月9日
其他

玩转仿探探卡片式滑动效果

。第一次进入软件界面,就被这种通过卡片式滑动来选择“喜欢/不喜欢”的设计所吸引了。当时就非常想通过自己来实现这种仿探探式的效果,然而却没什么思路。不过毋庸置疑的是,这种效果的原理肯定和
2023年1月6日
其他

RecyclerView 自定义 LayoutManager ,打造不规则布局

期分享一直以来灵活的LayoutManager也作为RecyclerView的一大特色被介绍,不过自定义LayoutManager的文章倒是不多,一起来看看作者是如何自定义的。
2023年1月5日
其他

Gradle 系列 (五)、自定义 Gradle Transform

,用起来不爽,但又不想拿它的源码修改在重新编译,有什么好的办法?3、我想在不修改源码的情况下,统计某个方法的耗时,对某个方法做埋点,怎么做?为了实现上面的想法,可能我们最开始的第一反应:是能否通过
2023年1月4日
其他

一文深入了解 HashMap 设计思想

的定位是一个相对通用的散列表容器,它应该在面对各种输入的时候都表现稳定。而开发地址法相对来说容易出现数据堆积,在数据量较大时可能出现连续冲突的情况,性能不够稳定。我们可以举个反例,在
2023年1月3日
其他

你说一下 PendingIntent 和 Intent 的区别?

https://developer.android.google.cn/reference/kotlin/android/content/IntentSender?hl=en[11]Intent
2022年12月26日
其他

Android 增量更新完全解析 是增量不是热修复

so首先声明一个类,写个native方法,如下:三个参数已经很明确了;同时别忘了在module的build.gradle下面:defaultConfig
2022年12月21日
其他

Android 开发如何系统性学习?

等多个维度搭建属于你的工作系统。4)、【阅读写作系列】:写作是一项被人忽视的核心技能,但如果能掌握写作,你的个人价值将会有无限可能,我将会手把手教你如何无痛地搭建自己的阅读写作系统。2、每日上午
2022年12月17日
其他

沪江学习 Android 端重构实践

层级的业务缓存和网络加密验证等。这种业务有的产线需要,有的产线不需要,即使都需要也可能出现需要定义的接口千差万别,所以每个产线单独定义这一层的接口,当然这层接口的实现也是由产线自己封装实现。横向分类
2022年12月16日
其他

Android 自定义 View 模仿 Win10 进度条

虽然流程3中点与点的间距已经开始减少,不过这只是因为速度不同间距才改变的,我们的目的是让这些点到最后合并为1个点,也就是说开始的时候每个点的X间距0.05,结束的时候要让他们的X相同
2022年12月14日
其他

Gradle 系列 (三)、Gradle 插件开发

'BuildSrcPlugin'上面三,四步骤完成后,项目结构如下图:image-20210722143609118这种注册方式比较固定,容易出错,不推荐使用,下面介绍另外一种注册方式2、通过
2022年12月13日
其他

这两年,我打造了一份具备竞争壁垒的 Android 跨平台 通关秘籍

等多个维度搭建属于你的工作系统。4)、【阅读写作系列】:写作是一项被人忽视的核心技能,但如果能掌握写作,你的个人价值将会有无限可能,我将会手把手教你如何无痛地搭建自己的阅读写作系统。2、每日上午
2022年12月10日
其他

贝塞尔Loading——化学风暴

关键代码如下:总结GA哥:总结?总结啥呢?路人甲:看看效果呗,看你吹了这么久,哈哈!路人乙:赞同楼上的。路人丙:赞同楼上的。路人丁:赞同楼上的。…GA哥:盛情难却哇,那就献丑了!github地址:
2022年12月9日
其他

从原理到实战,全面总结 Android HTTPS 抓包

杨彬(有赞)著https://tech.youzan.com/you-zan-yi-dong-zhu-shou-app-ben-di-zhua-bao-fang-an/END往期推荐Android
2022年12月5日
其他

饿了么丝滑无缝过度搜索栏的实现

另外还需要特别注意的地方有,在启动或者关闭Activity的时候,需要调用下面的代码来关闭切换动画来保证效果。overridePendingTransition(0,
2022年12月2日
其他

Android Deep Link 深度链接,看看你在第几层?

隐私政策更新,这个时候一定需要用户先同意隐私政策,再拉起落地页。又比如需要用户先进入启动广告,或进行一些必要的设置页(选择个性标签、选择城市等)才允许进入落地页。经过分析,可以归纳出这些场景都是在
2022年11月28日
其他

Android Studio 五分钟带你从菜鸟进阶到高级调试

expression,当执行该操作时,会在当前调试的语句处嵌入一个交互式解释器,在该解释器中,你可以执行任何你想要执行的表达式进行求值操作。比如,我们在调试时执行到以下代码:此时执行Evaluate
2022年11月23日
其他

"一篇就够"系列:Android 中使用 Protobuf

0,也不能去掉,我就是要占这么多字节4.2.1、基本数据类型默认值类型默认值数值类型0boolfalsestring空字符串enum默认为第一个元素4.3、消息类型定义在上面创建的
2022年11月22日
其他

Android APT 技术实战之路

注解编写编写注解,如下:@Inherited@Documented@Retention(RetentionPolicy.CLASS)@Target(ElementType.TYPE)public
2022年11月15日
其他

Android UI 架构演进:从 MVC 到 MVP、MVVM、MVI

与前者的主要区别不在于强调严格的单向数据流,而在于从命令式的开发模式,转变为响应式的开发模式。我们并不是说越新潮,越复杂的架构就是最好的,只有合适的架构才是最好的。但是不可否认,从
2022年11月14日