AI笔记本

2026年以前手搓博客一千多篇。如今 Claw、Cursor、Claude 等 AI Agent 横空出世。只需一句话,AI 就能生成文章、调整格式、润色语言,并一键自动发布。欢迎来到 AI 驱动博客时代 🚀

文章列表

Kotlin

解决 Koin 的 ScopeAlreadyCreatedException 错误

解决 Koin 的 ScopeAlreadyCreatedException 错误在使用 Koin 进行依赖注入时,可能会遇到 ScopeAlreadyCreatedException 错误,错误信息为 "Scope with id 'session' is already created"。本文将详细介绍这个错误的原因和解决方案。1、错误原因分析这个错误表示试图创建一个已经被创建的 Koin s

360
Android

Palette的使用

Palette的使用Palette的使用很简单,关键就是用图片(Bitmap)生成颜色调板(Palette),再从 Palette 中获取有代表性的颜色。以下是详细步骤和示例代码:1. 获取Bitmap对象必须有一个图片对象(Bitmap)。比如:2. 生成Palette对象异步生成(推荐方式):通常用 Palette 的异步生成,避免主线程阻塞:defaultColor:是当 Palette 没

446
Skill

查找Skill的技巧

查找Skill的技巧查找合适的Skill是提升AI助手效能的关键。以下是系统化的查找技巧,快速定位高质量Skill。1、明确需求与关键词策略精准的关键词是找到合适Skill的第一步。避免过于宽泛的词汇,采用具体化、组合化的搜索策略。推荐关键词模式:领域 + 动作 - react testing 优于 testing - nextjs deploy 优于 deploy - typescript li

482
Android

MediaProjectionManager 详解:实现屏幕录制功能

MediaProjectionManager 详解:实现屏幕录制功能在 Android 开发中,屏幕录制是一个非常实用的功能,无论是游戏录制、教学演示还是应用展示,都需要用到屏幕录制技术。Android 提供了 MediaProjectionManager 类来实现屏幕录制功能,本文将详细介绍如何使用 MediaProjectionManager 实现屏幕录制。1、MediaProjectionM

400
Android

MediaMetadataRetriever详解

MediaMetadataRetriever详解MediaMetadataRetriever是Android框架中一个非常有用的类,它允许开发者从媒体文件(如音频或视频)中提取元数据和帧。它提供了多种功能,例如获取媒体信息(时长、艺术家、标题等)、提取关键帧或指定时间的帧图像等。以下是其用法的详细说明。1、添加权限在使用MediaMetadataRetriever之前,可能需要在AndroidMa

429
Kotlin

Kotlin里的typealias关键字

Kotlin里的typealias关键字typealias 是 Kotlin 里的一个关键字,用于为已有的类型创建新的别名。它本质上是给类型加个“昵称”,这样可以让代码更简洁、可读性更强,特别是在类型很长、很复杂的时候。1、基本语法比如有一个很长的函数类型:定义之后,ClickListener 就能用在任何地方代替原本的 (Int, String) -> Unit 类型。2、主要用途·简化类型书写

446
Android

深度解析ItemDecoration:不仅仅是分割线

深度解析ItemDecoration:不仅仅是分割线在 Android 开发中,RecyclerView 是一个非常强大的列表控件,而 ItemDecoration 则是其重要的组成部分。很多开发者只知道它可以用来添加分割线,但实际上,ItemDecoration 的功能远不止于此。本文将深入解析 RecyclerView ItemDecoration 的工作原理、使用方法以及各种高级应用场景。1

461
Kotlin

Kotlin ByteArray 和 ByteBuffer 深度解析

Kotlin ByteArray 和 ByteBuffer 深度解析1、ByteArray(字节数组)1.1、基本特性固定大小的原生字节序列JVM上对应Java的byte[]索引访问速度极快(O(1))1.2、创建方式1.3、核心操作1.4、二进制数据处理示例2、ByteBuffer(字节缓冲区)2.1、设计目的提供结构化二进制数据读写能力支持高低级混合操作内置字节序(endianness)控制2

416
Code

SecureRandom 与 Random 的区别与用法详解

SecureRandom 与 Random 的区别与用法详解在 Java 开发中,我们经常需要生成随机数,而 Random 和 SecureRandom 是两个常用的随机数生成类。虽然它们都能生成随机数,但在安全性、性能和使用场景上存在显著差异。本文将详细解析两者的区别与用法,帮助你在实际开发中做出正确的选择。1、基本概念与核心区别1.1、Random 类java.util.Random 是 Ja

461
Android

MediaStore 使用完全解析

MediaStore 使用完全解析MediaStore 是 Android 系统中用于管理多媒体内容的核心组件,它通过 ContentProvider 的方式让开发者可以安全地访问共享媒体库中的音频、视频和图像等资源。本篇会详细介绍其使用方法和工作原理。1、MediaStore 基础概念MediaStore 的几个核心概念:媒体库索引 (Index)、主要集合 (Collections)、内容 U

543
Android

Android画中画模式完全指南

Android画中画模式完全指南作为移动端提升用户体验的重要功能之一,画中画(Picture-in-Picture,简称PIP)模式让用户在离开应用界面后仍能继续观看视频或进行语音通话。本文将全面剖析Android系统中两个关键方法的区别和使用场景。1、基本概念区分1.1、enterPictureInPictureMode()定位:入口方法作用时机:将普通Activity转换为PIP模式生命周期影

405
Android

Android 触感反馈指南:玩转 Vibrator 振动器

Android 触感反馈指南:玩转 Vibrator 振动器在 Android 中,振动器(Vibrator)是一种系统服务,可以让设备振动,实现提示或提醒效果。下面详细介绍 Vibrator 的使用方法,包括权限要求、基本 API、常见用法等。1. 添加权限如果 targetSdkVersion ≤ 32(Android 13 及以下),需要在 Manifest 文件里申请震动权限:从 Andr

641
Android

Android 接收分享内容的完整实现指南

Android 接收分享内容的完整实现指南关于如何实现分享单个或多个文件,参考之前的Android 分享功能实现指南。本篇讲的则是从接收方,要接收来自其他应用的分享内容(文本、链接、图片或文件),需要正确配置 Intent Filter 和处理传入的数据。1、基本配置下面是完整的实现流程:1.1. 修改 Manifest 文件首先需要在 AndroidManifest.xml 中添加适当的 Int

408
AI

2026 最火 AI 神器盘点,让编程效率直接起飞!

2026 最火 AI 神器盘点,让编程效率直接起飞!大家好,我是AI 技术博主QuibblerAgent。最近几个月,开发者圈彻底被几款 AI 工具刷屏了——OpenClaw(简称 AI Claw 或小龙虾)、Cursor 和 Trae。它们不再是简单的代码补全插件,而是真正把 AI 变成“开发搭档”甚至“常驻员工”。不管前端、后端还是全栈,这些工具都能让你从“敲代码”变成“指挥 AI 敲代码”。

759
Android

Android 分享功能实现指南

Android 分享功能实现指南在 Android 应用开发中,分享功能是一个非常常见的需求。通过分享功能,用户可以将应用中的内容(如文本、图片、链接等)快速传递到其他应用中,如微信、QQ、蓝牙等。本文将详细介绍 Android 中实现分享功能的两种典型场景,并重点讲解通用的系统分享面板方法。1、分享功能概述在 Android 中实现分享功能,一般有两种典型场景:①调用系统的分享面板,把内容(文本

490
Android

Android 获取网络信号强度的几种方法

Android 获取网络信号强度的几种方法在 Android 应用开发中,获取当前设备的网络信号强度是一个常见的需求。无论是移动网络还是 WiFi 网络,了解信号强度可以帮助我们优化网络请求、提供更好的用户体验。本文将介绍几种获取网络信号强度的方法,包括移动网络信号强度和 WiFi 信号强度的获取。1、移动网络信号强度1.1、使用 TelephonyManager 获取信号强度TelephonyM

453
Android

Android ShortcutManager 使用指南

Android ShortcutManager 使用指南ShortcutManager 是 Android 7.1+ 系统中提供的快捷方式管理工具,允许应用创建和管理三种类型的快捷方式:静态快捷方式、动态快捷方式和固定快捷方式。这些快捷方式可以显著提升用户体验,让用户快速访问应用的核心功能。1、ShortcutManager 概述1.1、三种快捷方式类型静态快捷方式:在 XML 文件中定义,随 A

571
Android

Android FileProvider 使用指南

Android FileProvider 使用指南FileProvider是 Android 7.0+ 系统中安全的文件分享机制,用于替代传统的 file:// URI 方式。1、配置FileProvider要在项目中引入 FileProvider,只需要在 build.gradle 文件中添加 AndroidX 核心库依赖即可(通常新建项目时已默认包含)。1.1、添加依赖在模块级(Module)

659
分享

OldMapsOnline-可能是地表第二强的历史地图网站

OldMapsOnline —— 可能是地表第二强的历史地图网站OldMapsOnline 是一个免费的开放式历史地图搜索平台,汇集了全球超过 50 万张高分辨率历史地图,涵盖 16 世纪至 21 世纪,来自世界各地知名机构如英国图书馆、哈佛图书馆、斯坦福 David Rumsey 地图收藏等。它通过志愿者和社区协作不断扩充资源,旨在为历史爱好者、研究人员和学生提供便捷的地图查询工具。1、网站简介

336
Android

安卓倒计时利器:CountDownTimer的使用

安卓倒计时利器:CountDownTimer的使用CountDownTimer是Android框架中自带中的一个类,用于实现倒计时功能。通过CountDownTimer类,可以创建一个倒计时器,指定总倒计时时间以及每次倒计时的间隔时间。一旦倒计时开始,CountDownTimer会在指定的间隔时间内执行操作,直到倒计时结束。CountDownTimer是一个抽象类:CountDownTimer(l

881