移动开发

Android 10.0 顶部状态栏系统图标显示分析

学习笔记:SystemUI StatusBar 手机信号相关图标的显示和更新流程分析 这里StatuBar的创建就不说了,前面已经说过了。 SystemUI中StatusBar的图标控制器实现类为StatusBarIconControllerImpl,其继承了StatusBarIconController的接口,用于跟踪所有图标的状态,并将对应的状态发送给注册的图标管理器(IconManagers

Android MVP开发模式与Rxjava+Retrofit结合的使用(进阶版)

以前根据参考各路大神的博客,以及自己对mvp的理解,早早就写了这种不成熟的结合模式(旧版),历时半年,他们终于进化了! 一、基础介绍 1、什么是mvp mvp是android开发架构之一,MVP每个字母分别代表Model、View和Presenter。 ①model负责处理网络数据的处理 ②presenter是model和view的桥梁,负责与两端的通信 ③view是视图层 2、为什么有mvp

这么好的Android开发辅助工具App不白嫖可惜了

过年期间闲来没事,手撸了一个辅助Android开发调试的工具App,适合Android开发者和测试同学使用。 点击直接下载APK 或者去Google Play安装 功能概览 对我这样的懒人开发者来说,反复的做同样一件事简直太煎熬了,因此我把我平时开发中需要反复操作的命令和一些繁琐的操作整理成了一个工具。 废话不多说, 先上图了解下工具的大概功能有哪些(内容比截图丰富,欢迎下载体验)

信息摘要与数字签名,数字证书

数字签名的过程如下图所示(发送者使用自己的私钥对摘要签名,接收者利用发送者的公钥对接收到的摘要进行验证) 常见的摘要算法:MD5(128位),SHA(160位)。 数字证书 1、数字证书的内容包括:CA签名、用户信息(用户名称)、用户公钥等。 2、CA签名验证数字证书的可靠性。 3、用户公钥:客户端利用证书中的公钥加密,服务器利用自己的私钥解密。 网络安全协议 安全协议分层如图

解决在运行Android studio的模拟器时出现的无法启动的问题

问题解决过程在我跟着<第一行代码>里面的操作进行模拟器启动的时候我发现我的模拟器不能像书本那样直接一点就开而是给我爆出了下面的错误The emulator process for AVD Pixel API_29 has terminated.对于这个问题我按照网上说的方法找到了这个问题的日志,从而更好的确定这个问题出现的原因是什么,获取日志的方法如下在Android studio的菜

computed、watch和watchEffect区别

computed: 计算属性将基于它们的响应依赖关系缓存,本质上是为了简化模版中的逻辑 const firstName = ref("Mir"); const secondName= ref("joy"); const fullName = computed(()=> firstName.value +" "+secondName.value) 支持set方法: let full

我的手机存储空间不足……

今天手机显示存储空间不足,卸载了某音,小hong 书,还有一个某宝。为什么要卸载呢? 因为我正在用的一个app显示因为存储空间不足无法使用,需要我重新下载。 这个app是一个测血糖的app。我非常需要它。没办法,只有删除了这个app,然后重新下载。 可是,这个app实在是太有范了。我的ID是国内的,所以不能下载。 所以我就借了一个香港ID来下载这个app。 输入ID,输入密码,还需要验证码。没有验

掌握这17张图,没人比你更懂RecyclerView的预加载

回顾上一篇文章,我们为了减少描述问题的维度,于演示之前附加了许多限制条件,比如禁用了RecyclerView的预拉取机制。 实际上,预拉取(prefetch)机制作为RecyclerView的重要特性之一,常常与缓存复用机制一起配合使用、共同协作,极大地提升了RecyclerView整体滑动的流畅度。 并且,这种特性在ViewPager2中同样得以保留,对ViewPager2滑动效果的呈现也起着关

Android 常见的问题整理 2022

Android 语音TTS 识别全链路过程 本地录音 =》 ASR识别 =》请求后台语义 =》语义落域分发返回 =》 本地仲裁处理落域分发 =》 TTS播报 下面是语音链路的一些基本思路 录音 :Android基本录音为48K的采样率 语音这边需要做降采样处理 降采样为16K。通过Android原生录音将音频给到引擎 唤醒:一般唤醒都是做本地唤醒,所有wakeup唤醒引擎。