自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 HarmonyOS--CS来电流程,代码走读

2024-04-21 21:27:35 206

原创 harmonyos--多路通话来电waiting声播放代码走读

多路通话来电waiting声播放代码走读

2024-04-21 12:07:48 1105

原创 [leetcode]给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。

[leetcode] 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。 public static void main(String[] args) { // TODO Auto-generated method stub Scanner scanner = new Scanner(System.in); while (scan

2021-03-25 10:30:49 3620 1

原创 【leetcode】 Z 字形变换

将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如下: P A H N A P L S I I G Y I R 之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“PAHNAPLSIIGYIR”。 public class Problems4 { public static void main(String[] args) {

2021-03-19 15:20:51 188

原创 IntentService处理耗时操作原理

1、基本概念 Service:service作为Android的四大组件之一,它可以用于在后台执行所谓的耗时操作。 但是耗时操作实际上也不能在service的主线程中去操作,因为前台的service,20s超时。后台的service 200s超时。 实际上还是在service的onStartCommand的开子线程去做耗时操作。 有文章说可以使用service做一些宿主被销毁后,依然想继续执行完子线程中任务的操作。不否认这样是可以的。 从宿主销毁但是service不被销毁,我们可以得出当前的service是

2021-02-06 23:11:32 454

原创 【mark】HashMap的hash冲突

1、HashMap的使用方法: HashMap<Object, Object> hashMap = new HashMap<>(); hashMap.put("Cat", 1); hashMap.put("Dog", 2); 2、HashMap的put的存储原理及冲突处理: public V put(K key, V value) { return putVal(

2021-02-06 15:04:29 174

原创 application启动流程

application启动流程 桌面Item点击事件: D:\Projects\Launcher_master\Launcher3\src\com\android\launcher3\touch\ItemClickHandler.java`` /** * Class for handling clicks on workspace and all-apps items */ public class ItemClickHandler {} //item的点击事件,可以理解为桌面上的icon pr

2021-02-01 00:19:22 271

原创 力扣-无重复字符的最长子串

package com.JackChen.leetCode.Day1; import java.util.HashSet; import java.util.Scanner; /** * 无重复字符的最长子串 * * 输入: s = "abcabcbb" * 输出: 3 * 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3 * * @author Jack chen * */ public class MaxLength { public static void

2020-12-30 00:28:59 259 1

原创 荣耀面试题:有多个整数,求这些数能拼接成为的最大数

package com.JackChen.leetCode.Day1; import java.util.Scanner; /** * description:有多个整数,求这些数能拼接成为的最大数。 * * 例:9 990 22 987 * * 输出:9->990->987->22 * * @author Jack Chen * */ public class BigNumbers { public static void main(String[] arg

2020-12-29 23:27:32 2721 2

原创 力扣-两数相加

package com.JackChen.leetCode.Day1; import java.util.Scanner; /** * 给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。 * 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 * 您可以假设除了数字 0 之外,这两个数都不会以 0 开头。 * 示例: * 输入:(2 -> 4 -> 3) + (5 -> 6 -

2020-12-29 22:49:07 165

原创 来电流程梳理

来电流程梳理 纠结很久,要不要写来电上报的流程。因为拿不到芯片厂商的ImsService的实现,纸上谈兵太空旷了 大致的思路: 协议侧调用HAL的主动上报接口,上报来电给到ImsService.经过一系列的处理后。通过ImsCallSession.Listener回调到 MmTelFeature的notifyIncomingCallSession frameworks\base\telephony\java\android\telephony\ims\feature\MmTelFeature.java

2020-12-18 23:52:50 481

原创 单路通话挂断流程

单路通话挂断流程 原生代码和rom厂商之间可能存在差异,我所了解到的,就是将dialer解耦一部分和通话界面相关的内容独立成一个应用。 首先我们先从界面上的挂断按钮的点击事件说起: packages\apps\Dialer\java\com\android\incallui\incall\impl\InCallFragment.java public void onClick(View view) { if (view == endCallButton) { LogUtil.i("I

2020-11-16 23:15:15 919

原创 Intent.getByteArrayExtra需要捕获哪些异常

Intent.getByteArrayExtra是否需要捕获异常 前段时间检视代码过程中,一个同事使用到了Intent.getByteArrayExtra()。我当时也没怎么上心,觉得大家都是这么用,应该没啥问题。 哈哈~ 问题往往都是发生在你认为没问题的时候。 我开始怀疑我自己的~ 下面就劳烦各位和我一起跟读下,是否有问题 public @Nullable byte[] getByteArrayExtra(String name) { return mExtras == null

2020-11-12 23:04:15 739

原创 探索下Intent.getxxxExtra()是否需要捕获异常

偷个懒:共同探索下Intent.getxxxExtra()是否需要捕获异常 下面我们以getStringExtra为例,共同探索下: private Bundle mExtras; /** * Retrieve extended data from the intent. * * @param name The name of the desired item. * * @return the value of an item previo

2020-11-11 23:46:42 1223

原创 我想为google贡献源码

我想为google贡献源码 工作过程中发现Android源码也有不健壮的时候,switchWith时候概率性会出现空指针异常。 public void holdActiveCallForWaitingCall() throws CallStateException { boolean switchingWithWaitingCall = !mBackgroundCall.getState().isAlive() && mRingingCa

2020-11-11 01:24:56 209

原创 拨号流程梳理

###在拨号盘Dialer中点击拨号按钮

2020-11-11 00:38:50 1416

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除