chenjiajia9411 最近的时间轴更新
chenjiajia9411

chenjiajia9411

努力就会有报应。
🏢  家里蹲国际集团 / 床上事业群睡觉部侧躺科高级专员
V2EX 第 209914 号会员,加入于 2017-01-09 18:43:33 +08:00
今日活跃度排名 1130
chenjiajia9411 最近回复了
混淆有问题,AbstractSource 给弄成 final 了,把 allowaccessmodification 关了,以后上传的日志最好也带上符号表或者直接还原不然不方便看。
还有如果还需要兼容 API 21 以下就把 OkHttp 升级到 3.12.12 ,不需要兼容的话直接升级到 4.9.0 吧。
13 天前
回复了 john6lq 创建的主题 Android RecyclerView 有办法优雅实现列表动画吗?
@john6lq #8 我误会了,从不可见变为可见这种状态改变可以用 notifyItemChanged,然后在 SimpleItemAnimator 的 animateChange 里做你需要的动画。
13 天前
回复了 john6lq 创建的主题 Android RecyclerView 有办法优雅实现列表动画吗?
@john6lq #6 你不信的话可以手动调用 notifyItemInserted 看看有没有效果啊,RecyclerView 默认有一个 DefaultItemAnimator ( https://developer.android.com/reference/androidx/recyclerview/widget/DefaultItemAnimator )所以能直接看到效果的。
注意一定要是真正的向原始 list 插入一个 item 而不是把 list 整个替换之后再调用,使用 SortedList ( https://developer.android.com/reference/androidx/recyclerview/widget/SortedList )或者 AsyncListDiffer ( https://developer.android.com/reference/androidx/recyclerview/widget/AsyncListDiffer )可能是更好的选择。
14 天前
回复了 john6lq 创建的主题 Android RecyclerView 有办法优雅实现列表动画吗?
@john6lq #2 ItemAnimator 本来就不会响应 notifyDatasetChanged,因为它以单个 Item 为基本单位,在调用 notifyDatasetChanged 的时候默认都是对原有数据做了非常大的改动,无法计算有多少 Item 需要有动画,所以它会直接刷新整个 RecyclerView,ItemAnimator 根本不会被执行。
关于你的第一个需求,可以先调用你的 RecyclerView 的 LayoutManager 的 findLastCompletelyVisibleItemPosition()或者 findLastVisibleItemPosition()方法获取界面上最后一个可见的 Item 的位置,然后直接调用 ItemAnimator 的 dispatchAnimationFinished(ViewHolder)并传入不需要动画的 ViewHolder 来取消动画。
14 天前
回复了 john6lq 创建的主题 Android RecyclerView 有办法优雅实现列表动画吗?
19 天前
回复了 sewer 创建的主题 Android 安卓目前 abi 只保留 arm64 应该没多大问题吧
@sewer #10 可能是类里面用到的内部方法也被混淆了或者你混淆写的有问题,第一种可以在 proguard-rules.pro 里-printmapping map.txt 打印出映射,然后把错误堆栈还原一下看看是不是有哪个类你没有排除混淆,第二种可以用 jadx 打开混淆之后的包查看是不是该排除的类和方法都被排除了,如果有误混淆的就加到 proguard-rules.pro 里去。
顺便一提,配置文件里不要有-addconfigurationdebugging,不然会出现奇怪的问题,我以前被这个困扰了一整天。
19 天前
回复了 sewer 创建的主题 Android 安卓目前 abi 只保留 arm64 应该没多大问题吧
@sewer #8 把相关的类和方法 keep 起来不就好了,这里有一个写 proguard-rules.pro 的指南: https://r8-docs.preemptive.com/
19 天前
回复了 sewer 创建的主题 Android 安卓目前 abi 只保留 arm64 应该没多大问题吧
如果不同目标包的差距只有 3M 的话,我觉得你的包太大应该不是因为原生库,你可以试试看一些常规的 android 包大小优化措施(代码缩减,三方库裁剪,png 压缩甚至转 webp/svg 等等)。
25 天前
回复了 weijar 创建的主题 分享发现 小内存机器(<= 8G)的浏览器省内存方法
火狐的 about:memory 页面可以 minimize memory usage 的……
或者也有可能是你给 gradle 分的堆太小了,看下 org.gradle.jvmargs=... -XX:MaxPermSize=...的部分,适当提高一下。
关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4008 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 13ms · UTC 10:22 · PVG 18:22 · LAX 02:22 · JFK 05:22
♥ Do have faith in what you're doing.