移动开发

[ANR监控] 用StrictMode进行线下监控

ANR的监控策略,可以分为线上和线下。线上的监控方案,需要充分考虑性能问题,所以很多监控策略不能使用。但是线下监控,我们能用的方法会更加丰富。 这篇文章,我们主要讲一下Android官方提供给我们的线下监控方案 —— StrictMode。 有了这套工具,我们可以在开发时,提前发现很多问题,让开发同学及时解决,避免这些问题暴露到线上,造成ANR。 StrictMode介绍 为了监控应用运行过程中存

关于安卓卡片式交互实现(recyclerview)

背景 对于安卓卡片式交互,已有很多案例,前有“探探”卡片滑动交互,后有各种各样的三方软件,都在互相复制粘贴。今项目中也有类似需求,特此记录。 !!!代码链接在文末!!! 演示gif 演示 思路 实现这样的效果,其实从宏观上,就是实现了一个layoutmanger以及ItemTouchHelper。 (一)LayoutManager主要是实现recyclerview的布局 (二)Item

设计模式-策略模式

下面有两个源代码,但是输出是一样的。第一个源代码使用 if 语句来选择逻辑。第二个源代码使用策略设计模式(重构结果)。 我们先讨论第一个源代码。在比萨课上,烹饪比萨有四个步骤。 收集材料 2.准备面团 设置 Variety,选择披萨口味(在本例中,我们有三个选项:capricciosa、Hawaiian 和 margheerita)。 4.加热和享受 在第一个源代码中,Set Variet

Swift基础语法(六)闭包表达式和闭包

Swift基础语法文章汇总 本文主要介绍闭包表达式和闭包,闭包表达式简化了函数的调用,闭包可以捕获局部变量,在局部变量的作用域外也可以进行操作 主要内容: 闭包表达式 闭包使用 闭包原理 1、闭包表达式 1.1 闭包表达式认识 闭包表达式用来实现功能,类似于函数的作用,只是写法不一样 定义格式: { (参数列表) -> 返回值类型 in 函数体代码 } 代码:

13.android 获取sha1(调试版和正式版)

场景 在接入第三方sdk时,经常需要提供sha1,今天就来总结一下如何获取sha1,包括debug和release的。 解决方案 在AndroidStudio中的Terminal中使用keytool命令获取。 keytool -exportcert -list -v -keystore 1.获取debug(调试版)的sha1: 调试版keystore默认在 C:\User.android\debu

MediaController简介

MediaController简介 官方API 文档 MediaController | Android Developers 使用demo Android自带的MediaController实现网络播放和本地播放 结合VideoView和MediaController的例子简单介绍下 base/core/java/android/widget/VideoView.java public cl

Android Handler 机制原理详解

文章目录 一、 概述 二、 核心组件 1. Handler(处理器) 2. MessageQueue(消息队列) 3. Looper(循环器) 4. Message(消息) 三、工作原理 1. 整体流程图 2. 详细执行过程 1. 初始化 Looper&#xf