移动开发

Android通知栏增加快捷开关的技术实现

我们通常可以在通知栏上看到“飞行模式”、“移动数据”、“屏幕录制”等开关按钮,这些按钮都属于通知栏上的快捷开关,点击快捷开关可以轻易调用某种系统能力或打开某个应用程序的特定页面。那是否可以在通知栏上自定义一个快捷开关呢?答案是可以的,具体是通过TileService的方案实现。 TileService继承自Service,所以它也是Android的四大组件之一,不过它是一个特殊的组件

Android 13 Launcher 基础认识(一)

学习笔记: Android 10.0 launcher 启动流程 Android 13 Launcher 基础认识(一) Android 13 Launcher 数据加载分析(二) Android 13 Launcher3 数据库及Workspace 的数据加载与绑定(三) 一、Launcher 简介 Launcher 是 Android 系统不可缺少的部分,我们通常称之为 Android 系统

android13 适配

这次安卓13主要更新的特性有: 1.安卓13强化了隐私,这点各家UI都已经有自己的隐私保护功能,不会跟进。 2.不同设备间的应用流转,这点在国产UI上叫跨屏协作。 3.锁屏扫描二维码,或许会跟进。 4.允许每个应用单独设置语言,这点国产UI很可能会应用进来。 5.剪切板悬浮显示,目前百度输入法已经支持这项功能。 适配 1.通知 对用户影响 在Android 13的机器上对用户来说应用程序均会有提示

12.类的关系——继承关系

1、继承关系 1.1 继承的概念 ·继承机制是面向对象程序设计不可缺少的关键概念,是实现代码可重用的根基,是提高软件系统的可拓展性与可维护性的主要途径。 ·所谓继承是指一个类的定义可以基于另外一个已经存在的类,即子类基于父类,从而实现父类代码的重用,子类能吸收已有类的属性和行为,并能拓展新的能力。 形式:【访问权限修饰符】【修饰符】子类名 extends 父类名{子类体} 例: //类:图形 pu

Win10秘笈:两种方式修改网卡物理地址(MAC)

Win10秘笈:两种方式修改网卡物理地址(MAC)在修改之前,可以先确定一下要修改的网卡MAC地址,查询方法有很多种,比如:1、在设置→网络和Internet→WLAN/以太网,如下图所示。2、在控制面板→网络和共享中心→更改适配器设置中,右键单击或双击你想要修改的网络连

Android library native 代码不能调试解决方法汇总

android native开发会碰到native代码无法调试问题,而app主工程中的native代码是可以调试的。如果项目中存在多个module,那么在application模块中依赖library模块,并且library模块中有native代码的时候,当debug library模块中的这些native代码时可能会发现断点打不进去。导致这个问题的根本原因是因为即使在运行application模

Retrofit的原理解析

前言 上篇文章我们分析了OkHttp的原理,不难看出它更多的还是和TCP/IP打交道,做了请求和响应的处理,今天我们来介绍另外一位主人公,那就是我们的Retrofit,它更多的是对OkHttp做了一层封装,方便了我们调用接口,并且对数据进行了转化,对业务侧更加友好。 首先我们来看看它的初始化,慢慢剖析它的源码吧。 Retrofit retrofit = new Retrofit.B

iOS tabbar动画-CYLTabBarController

GitHub 源码: CYLTabBarController Star: 6.1k 【中国特色 TabBar】一行代码实现 Lottie 动画 TabBar,支持中间带 + 号的 TabBar 样式,自带红点角标,支持动态刷新。【iOS13 & Dark Mode & iPhone XS MAX supported】。 前言 首先:不仅仅是一行代码! 官方声称的 "一行代

android-studio(2025) JDK、Gradle、Maven配置

一、JDK下载及配置安卓使用免费的OpenJDK,不需要从Oracle官网下载,从Adoptium下载对应的版本及操作系统安装即可,常见的是java 8、11.、17、21等。从Adoptium下载太慢。国内镜像如下: ​清华大学镜像站:国内用户可通过清华大学开源镜像站加速下载,访问链接:

Flutter 网络封装 2022-10-12 周三

网络选择 Flutter自带httpClient,这个也是很好用的; Http库,有个三方库的名字就叫这个; Dio,这是目前最热门的,相当于iOS中AFNetworking。随大流,就选这个进行封装。 Dio引入 Dio是一个第三方库,所以需要先下载。使用一行命令就可以引入flutter pub add dio dio: ^4.0.6 日志是需要的,最简单的就是用系统提供debugPrin