积跬步

Just do IT Now.


  • Home

  • Tags

  • Categories

  • Archives

  • Search

Java-日期

Posted on 2022-02-11 | In Java

今年你因为YYYY-MM-dd被锤了么?

背景:使用YYYY-MM-dd,还是yyyy-MM-dd

结论:使用yyyy-MM-dd

Read more »

优化-存储优化

Posted on 2022-01-14 | In Android

Android分区

分区名 解释
/system 操作系统预留,用来存储系统文件和框架
/data 存储用户数据
/cache 系统升级过程使用的分区或者recovery
/vendor 用来存储厂商对Android系统的修改
/storage 外置或者内置sdcard
  • /system 分区:它是存放所有Google提供的Android组件的地方。这个分区只能以只读方式mount。这样主要是基于稳定性和安全性考虑,即使发生用户突然断点的情况,也依然需要保证/system分区的内容不会收到破坏和篡改。
  • /data 分区:它是所有用户数据存放的地方。主要是为了实现数据隔离,即系统升级和恢复的时候会擦除整个 /system 分区,但不会影响 /data 的用户数据。而恢复出厂设置,只会擦除 /data 的数据。
  • /vendor 分区:它是存放厂商特殊系统修改的地方。特别是在 Android 8.0 以后,隆重推出了 “Treble”项目。厂商 OTA 时可以只更新自己的 /vendor 分区即可,让厂商能够以更低的成本,更轻松、更快速地将设备更新到最新版 Android 系统。
Read more »

JVM致命错误日志(hsf_err_pid.log)分析

Posted on 2022-01-07 | In Java

JVM致命错误日志(hs_err_pid.log)分析

当JVM出现致命错误时,会生成一个错误文件 hs_err_pid<pid>.log 文件,其中包括了导致 JVM crash 的重要信息,可通过分析该文件定位到导致 crash 的根源。此文件默认会生成在工作目录下。也可以通过 jvm 参数指定生成路径(JDK6中引入):

1
-XX:ErrorFile=./hs_err_pid<pid>.log
Read more »

UI-Animation动画

Posted on 2022-01-06 | In Android

动画xml(res/anim文件夹下)

顶部进

anim_top_in.xml

Read more »

UI-约束布局ConstraintLayout

Posted on 2021-12-21 | In Android

约束布局ConstraintLayout看这一篇就够了

1.介绍

约束布局ConstraintLayout 是一个ViewGroup,可以在Api9以上的Android系统使用它,它的出现主要是为了解决布局嵌套过多的问题,以灵活的方式定位和调整小部件。从 Android Studio 2.3 起,官方的模板默认使用 ConstraintLayout。

Read more »

SparseArray

Posted on 2021-12-13 | In Android代码片段

SparseArray存取

1
2
3
4
5
6
7
8
private SparseArray<ListBean> selecteds = new SparseArray<>();
private void getSparseArrayData(int key) {
return selecteds.get(key);
}

private void saveSparseArray(ListBean bean){
selecteds.put(bean.getId(), bean);
}

SparseArray遍历

Read more »

优化-今日头条 ANR 优化实践系列-设计原理及影响因素

Posted on 2021-11-29 | In Android

今日头条 ANR 优化实践系列 - 设计原理及影响因素

写在前面

ANR 问题,对于从事 Android 开发的同学来说并不陌生,日常开发中,经常会遇到应用乃至系统层面引起的各种问题,很多时候因为不了解其运行原理,在面对该类问题时可能会一头雾水。与此同时,因为现有监控能力不足或获取信息有限,使得这类问题如同镜中花水中月,让我们在追求真理的道路上举步维艰。如下图:

Read more »

优化-今日头条 ANR 优化实践系列 - Barrier 导致主线程假死

Posted on 2021-11-29 | In Android

今日头条 ANR 优化实践系列 - Barrier 导致主线程假死

简述:

前文,我们通过线上案例对影响 ANR 问题的六大场景进行剖析,这几类场景基本覆盖了线上大部分问题,详见ANR 案例分析集锦。同时我们选取了较多 NativePollOnce 场景的案例,便于大家更好理解,ANR 时看到的 NativePollOnce 场景的问题,并不是导致 ANR 的根本问题。

Read more »

优化-今日头条 ANR 优化实践系列 - 监控工具与分析思路

Posted on 2021-11-29 | In Android

今日头条 ANR 优化实践系列 - 监控工具与分析思路

前言:

在前文,我们对ANR 设计原理及影响因素进行了介绍,并对影响 ANR 的不同场景进行归类。但是依靠现有的系统日志,不足以完成复杂场景的问题归因,而且有些信息从应用侧无法获取,这就导致很多线上问题更加棘手。因此我们在应用侧探索了新的监控能力,以弥补信息获取不足的短板。同时对日常分析过程中用到日志信息和分析思路进行总结,以帮忙大家更好的掌握分析技巧,下面我们就来看看相关实现。

Read more »

优化-今日头条 ANR 优化实践系列分享-实例剖析集锦

Posted on 2021-11-29 | In Android

今日头条 ANR 优化实践系列分享 - 实例剖析集锦

简述:

在前文,我们用了较多的篇幅介绍了ANR 设计原理及影响因素,并根据不同场景进行了分类,如:当前消息严重耗时,历史消息耗时严重,业务异常密集执行,进程内资源抢占,进程间资源抢占等场景。为了应对系统监控能力不足以及应用侧获取信息受限的情况,我们在应用侧实现了一套消息调度监控工具,重点监控主线程的“过去,现在和将来”,同时结合相关日志对 ANR 问题的分析思路进行了总结。

Read more »

功能-微信

Posted on 2021-11-26 | In Android代码片段

调起微信

原文链接

1
2
3
4
5
6
Intent lan = .getPackageManager().getLaunchIntentForPackage("com.tencent.mm");
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setComponent(lan.getComponent());
startActivity(intent);
Read more »

判断是否是Debug模式

Posted on 2021-11-25 | In Android代码片段

判断当前应用是否是debug状态

1
2
3
4
5
6
7
8
9
10
11
/**
* 判断当前应用是否是debug状态
*/
public static boolean isApkInDebug(Context context) {
try {
ApplicationInfo info = context.getApplicationInfo();
return (info.flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0;
} catch (Exception e) {
return false;
}
}

检测其他应用是否是debug状态

Read more »
<1…789…24>

285 posts
21 categories
44 tags
E-Mail CSDN
0%
© 2018 — 2025 阿炳
Powered by Hexo
|
Theme — NexT.Gemini v5.1.4