kotlin

程序猿追6 小时前
开发语言·kotlin·harmonyos
kotlin-retry 接入鸿蒙后,怎样确认它真的会停止重试一个失败提示背后可能还有任务在等待。按钮再次可点,未必代表上一次请求已经结束;页面关掉,也未必代表后台没有下一次重试。接入重试库时,成功分支只是其中一种情况,次数上限、异常筛选和取消是否生效,同样需要留下能复查的记录。
应用市场11 小时前
android·kotlin·游戏开发
不用一张图片的像素小游戏:小人是字符串,房间是矩形,平衡靠两千个假玩家说明:这个小游戏是和 AI 编程助手协作开发的,本文也由 AI 协助整理成文。文中代码摘自项目源码(注释改成了中文,有删节),数字来自源码和单元测试的输出。游戏内容纯属虚构,和任何 AI 公司无关;文中没有、游戏里也没有任何“防封技巧”。
事圆则缓13 小时前
android·开发语言·kotlin
Kotlin 变量与函数:把页面状态和行为写成清楚的契约一个 Android 商品页需要展示价格、处理点击、把埋点发给日志服务。写起来全是 val、var、fun 和花括号,难点却在于:谁可以改状态,谁决定筛选规则,回调被谁持有,以及日志依赖从哪里来。用变量声明约束重新赋值,用函数签名交代输入与结果,再让 Lambda 和扩展只承担清晰、局部的便利。
Kapaseker20 小时前
android·kotlin
写了这么久 Kotlin,你真的理解 in、out 和 * 吗?各位 Kotlin 爱好者们,早上好。今天我们深入研究一下 Kotlin 泛型。跟其他语言一样,Kotlin 通过泛型来处理不同的类型。你可以定义适用于不同类型的类、方法和属性,让代码更容易复用,同时保留类型安全。
墨天梦2 天前
android·kotlin·retrofit
D09_Retrofit接口与数据转换摘要:接入玩 Android 首页接口,拆开 HTTP 调用、响应 DTO、业务校验和界面模型,分别定位断网、协议错误、业务失败与解析失败。
alexhilton2 天前
android·kotlin·android jetpack
为什么你的 LazyColumn 仍然卡顿本文译自「Why Your LazyColumn Is Still Janky」,原文链接proandroiddev.com/why-your-la…,由Subhankar Bag发布于2026年9月22日。
mmsx3 天前
android·kotlin
Android 防二次打包第一道锁:签名校验与完整性校验签名指纹能认出「这不是我发的包」,却认不出会改校验逻辑的人。拿到一个 APK,反编译、改几行、重新打个包、重新签个名,装到手机上照样能跑——这件事在多数没做防护的应用上,成本低到只需要一个下午。更要命的是,改完之后它还能换上你的图标、顶着你的名字分发出去,用户装的根本分不清来源。
mmsx3 天前
android·kotlin
Android 混淆不等于安全:二次打包链路完整走一遍混淆只是让人读得慢,不是让人改不了;真正绕不开的是最后那步重签名。发版前把 minifyEnabled 打开、把 R8 跑起来,很多团队就觉得「安全这块做过了」。上线之后包被换了渠道、被塞了广告 SDK、被改了启动页,才回头问一句:我不是开了混淆吗?
墨天梦4 天前
android·kotlin
D05_ViewModel与单向数据流摘要:ViewModel 的价值不只是旋转后少创建一次对象。通过仓库接口、统一界面状态、只读 StateFlow 与显式事件,本篇把文章列表从界面内的临时练习整理成可以继续接网络和数据库的结构。
墨天梦4 天前
android·gitee·kotlin
D03_Compose列表与稳定身份摘要:从一张卡片扩展到可滚动列表时,必须同时处理业务身份、组合身份与状态归属。本文用排序、插入和筛选实验说明稳定 key 的意义,以及它为什么不能替代正确的数据更新逻辑。
萌新杰少4 天前
android·kotlin·客户端
Kuikly股票查看软件开发体验——SaiRenKuikly是腾讯TDS团队推出的Kotlin多平台框架,这个框架从发布前我在Kotlin中文开发者大会发布前就在关注了,只是很可惜一直没有机会尝试。
用户92817267390164 天前
android·kotlin
Android Compose版本的AI组件库来了。把几份资料交给手机里的 AI,让它整理一份报告。它开始读文件、查资料,还把一部分工作交给另一个 AI 助手。可屏幕上只有“正在处理”和一个转圈的动画。
墨天梦4 天前
android·kotlin
B19_SunnyWeather到阅读客户端《第一行代码》第 15 章把前面学过的网络、存储、界面和 Jetpack 组织成天气应用。读这一章最有价值的问题是:为什么数据要经过这些位置,刷新时谁负责什么,以及失败后界面如何表达。
墨天梦5 天前
android·kotlin
B17_LifecycleLiveData与Flow阅读《第一行代码》第 13 章时会遇到 Lifecycles 和 LiveData,进入现代 Compose 示例又常看到 StateFlow。容易产生的误解是:换成 Flow,就不需要考虑生命周期;或者旧项目使用 LiveData,说明它已经不能维护。
熊猫钓鱼>_>6 天前
开发语言·kotlin·华为云·ai编程·harmonyos·鸿蒙·openharmony
Kotlin Multiplatform for OpenHarmony 实战:为 Landscapist 实现图片加载适配本文聚焦如何在 OpenHarmony 上为 Kotlin Multiplatform 图片加载库 Landscapist(作者 skydoves,Compose 生态的图片加载库)做适配落地。Landscapist 相对 Kamel 多了三件「差异化武器」:Painter 抽象(绘制单元)、状态机(Loading / Success / Error 三态驱动 UI)、Transformation 变换管线(Resize / CenterCrop 等按序作用)。本文用 ArkTS 桥接 @kit.Netw
ZealSinger6 天前
kotlin·协程·迁移·kotlin2.4
Kotlin2.4迁移context parameters2.3.20 起 context receivers no longer supported / 不再支持;2.4 起除 context arguments 与 callable references 外已稳定,一般项目不再需要 -Xcontext-parameters。若你还在用 -Xcontext-receivers,或在 Beta 阶段靠 -Xcontext-parameters 试水,升级到 Kotlin 2.4 后应尽快把声明改成带名字的 context parameters,并理清仍实验的开关
墨天梦6 天前
android·kotlin·交互
B16_Material主题与可访问交互《第一行代码》第 12 章介绍 Toolbar、抽屉、悬浮按钮、Snackbar、卡片、刷新和折叠标题栏。学习这一章时,如果只记住控件名字,很容易做出每个页面都有按钮、整体交互却不一致的应用。
alexhilton6 天前
android·kotlin·android jetpack
模块化Jetpack Compose架构本文译自「Modular Jetpack Compose: Don’t Leave Your Architecture to Code Review」,原文链接medium.com/proandroidd…,由Kanan Yusubov发布于2026年10月2日。
mmsx7 天前
android·kotlin
Android 测绘计算工程化:七四参数、高程拟合与单位系统测绘软件的多数 bug 不是算法写错,而是量纲与参数在层与层之间被悄悄换了。一份测量成果偏出去十几公里,排查到最后往往是某个角落把以"秒"为单位的旋转角直接塞进了旋转矩阵;一个界面切到英尺后,相邻页面还显示着米,两处差了三倍多却没人发现。这类问题有一个共同特征:算法本身没错,错的是"这个值到底代表什么、该用哪套参数去换"这件事,在第一层写完后,到第二层、第三层被无声地替换掉了。