自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(71)
  • 资源 (11)
  • 收藏
  • 关注

原创 Cline+AI自动化编程工具安装跟使用指南

官方定义:MCP是Anthropic推出的开放标准,让AI模型能安全访问外部数据源和工具。人话:你可以让Cline直接操作数据库、发HTTP请求、读写本地文件、控制浏览器——不只是写代码。还可以自定义技能。不在这里说明了。例如,请列出我们本地的桌面的所有的文件, 这个技能是不存在的,但是我们可以自定义一个,写好对应的描述信息以及自己写的py脚本。配置好后,当你说【请列出我们本地的桌面的所有的文件】的时候会执行自己写的脚本。

2026-02-14 09:45:00 1773

原创 协程间数据传递:从Channel到Flow,构建高效的协程通信体系

看到下面的业务场景,阁下改如何面对// 一个下载任务,需要向多个模块实时传递进度// 下载逻辑...// 问题:进度怎么通知给外面?写了个静态List存Callback。我问他:为什么不用协程的Channel或Flow?这两个到底什么区别?什么时候用哪个?这个问题我见过太多次了。今天我们就来彻底搞懂——协程之间到底怎么高效、安全地传递数据。协程间数据传递,本质是并发模型的选择。不懂 Channel,不知道怎么写生产者-消费者;不懂 SharedFlow,不知道怎么做事件总线;

2026-02-14 09:30:00 1108

原创 协程数据互斥实战:从锁到Actor,彻底解决共享状态并发难题

本文深入探讨了协程并发中的互斥问题,提出了6种解决方案。核心观点包括:1)协程挂起点等同于线程切换,即使单线程也会产生并发问题;2)解决方案按场景分为:原子类(简单计数器)、Mutex(推荐,协程专用锁)、Actor(复杂状态机)、乐观锁(分布式);3)性能测试显示Mutex在通用场景表现最佳;4)大厂实践建议采用Mutex+不可变数据的组合模式。文章强调协程并发三原则:优先不可变数据、最小化锁范围、选用协程原生工具。通过系统化的方案对比,为开发者提供了清晰的协程并发处理指南。

2026-02-13 15:02:39 633

原创 重构千行Callback:Android异步回调无损迁移协程Suspend完全指南

维度回调时代协程时代代码结构嵌套7层是常态顺序书写像同步异常处理每个回调单独处理try-catch 全搞定取消支持手动维护取消标记线程切换到处写runOnUiThreadwithContext一行组合并发CountDownLatch太痛苦测试难度异步测试噩梦runTest 同步化最后送大家一句话:回调是描述“怎么做”,挂起函数是描述“做什么”。从Callback到Suspend,不仅是语法的升级,更是编程思维的跃迁。附录:快速检索表你想做什么用什么函数关键代码单次回调,无取消。

2026-02-13 14:26:44 1088

原创 Kotlin CoroutineScope解密

{// 使用SupervisorJob,一个子协程失败不影响其他// 采集加速度传感器数据// 采集陀螺仪数据job.cancelChildren() // 只取消子协程,保留Job活跃// 或者 job.cancel() 完全销毁Scopestop()这里用而不是cancel(),是为了让Scope可以继续复用。关系口诀:Scope 抱着 Context,Context 装着 Job 和 Dispatcher。

2026-02-13 11:33:08 744

原创 Kotlin CoroutineContext 详解

CoroutineContext 是一个以Key为索引、元素不可变、支持组合的“混入集合”(Mixin Collection)。每个协程在创建时都会绑定一个 CoroutineContext,它决定了这个协程在哪儿跑(调度器)、怎么管理生命周期(Job)、叫什么名字出错怎么办Dispatcher真正可以用在项目中的,自定义的调度器是非常重要的,自定义Dispatcher的本质就是决定在哪个线程、什么时候被执行!掌握了这一点,你就可以随心所欲地控制协程的执行行为,

2026-02-12 18:22:13 1016

原创 Kotlin协程启动方式详解

协程(Coroutine)是Kotlin在异步编程领域的革命性解决方案。相比传统的线程和回调,协程通过挂起(suspend)而非阻塞的方式,让我们能够以同步代码的写法实现异步任务的处理。然而,很多初学者在刚接触协程时,往往被各种启动方式搞得晕头转向:、、、...它们之间有什么区别?分别在什么场景下使用?本文将用最通俗的语言、最直观的代码对比,帮你彻底搞懂Kotlin协程的启动方式和使用场景。在开始之前,请确保项目中已经引入协程依赖:2. 协程构建器总览Kotlin协程主要通过以下几种构建器启动:下

2026-02-12 13:32:31 743

原创 Kotlin初入协程

协程是一种轻量级的、用户态管理的线程,它允许函数在执行过程中被挂起,并在稍后恢复执行。跟线程还有很大区别操作系统决定谁在CPU上跑,跑多久。线程可能在任意时刻被强制暂停(抢占),切到另一个线程。你作为厨师,是被动被拉去干活的。线程的创建、销毁、切换都需要操作系统内核参与(内核态)。这涉及到CPU从用户态切换到内核态,开销较大。就像公司要招一个新员工,必须通过人事部走一遍流程。一个线程通常占用几兆的内存,操作系统能创建的线程数量通常在几千个就算很多了。协程自己决定什么时候“让出”(Yield)执行权。

2026-02-12 11:52:21 973 1

转载 好的框架设计的文章

什么是软件架构前言:软体设计师中有一些技术水平较高、经验较为丰富的人,他们需要承担软件系统的架构设计,也就是需要设计系统的元件如何划分、元件之间如何发生相互作用,以及系统中逻辑的、物理的、系统的重要决定的作出。在很多公司中,架构师不是一个专门的和正式的职务。通常在一个开发小组中,最有经验的程序员会负责一些架构方面的工作。在一个部门中,最有经验的项目经理会负责一些架构方面的工作。但是,越来越

2017-07-13 16:49:14 7753

转载 Android添加顶部通知

Android添加顶部通知(Notification)并处于“正在进行中”(onGoing)用过Android版的QQ的都知道,QQ返回的时候在顶部通知里会出现一个企鹅,表明QQ正在运行,可以拉开通知,点击手机QQ出现主界面,继续运行。所以我想让自己的软件也出现这么一个通知,并且可以快速的打开查看。Android应用开发详解 8.3 Notification和Notificat

2015-10-26 18:18:27 3687

转载 那些NB的开源框架

一、GuavaGoogle的基于java1.6的类库集合的扩展项目,包括collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O等等. 这些高质量的API可以使你的JAVA代码更加优雅,更加简洁.功能模

2015-08-31 22:12:29 1779

转载 详解Java中的clone方法 -- 原型模式

转载地址:http://blog.youkuaiyun.com/zhangjg_blog/article/details/18369201Java中对象的创建clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象。所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象。那么在java语言中,有几种方式可以创建对象呢?1

2015-08-26 15:28:00 942

转载 类之间的关系

转载于:http://blog.youkuaiyun.com/zhengzhb/article/details/7187278在java以及其他的面向对象设计模式中,类与类之间主要有6种关系,他们分别是:依赖、关联、聚合、组合、继承、实现。他们的耦合度依次增强。1. 依赖(Dependence)         依赖关系的定义为:对于两个相对独立的对象,当一个对象负

2015-08-25 18:01:04 726

转载 android开源项目和框架

转载于:http://blog.youkuaiyun.com/stephen255/article/details/9121583看到这个是好东西特效:http://www.theultimateandroidlibrary.com/常用效果:1. https://github.com/novoda/ImageLoader  异步加载图片,缓存,生成缩略图, 基本上每个应用

2015-06-02 19:14:25 892

转载 Android系列之网络(二)----HTTP请求头与响应头

文章来源:http://www.cnblogs.com/smyhvae/p/4005034.html国庆佳节,习惯并享受着一个人独霸整个教研室的感觉。在上一篇文章中,我们学习到了如何使用HttpClient发送HTTP请求。博文链接:Android系列之网络(一)----使用HttpClient发送HTTP请求本篇文章中,将学习一下HTTP请求头与响应头的知识。一、HTTP

2015-06-02 10:19:11 2593

转载 Android系列之网络(三)----使用HttpClient发送HTTP请求(分别通过GET和POST方法发送数据)

文章来源:http://www.cnblogs.com/smyhvae/p/4006009.html【正文】在前两篇文章中,我们学习到了和HTTP相关的基础知识。文章链接如下:Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)Android系列之网络(二)----HTTP请求头与响应头一、GET和POST的对比:在漫

2015-06-02 10:18:56 2382

转载 Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)

转载地址:http://www.cnblogs.com/smyhvae/p/4004983.html  这个关于http的内容写的比较好一、HTTP协议初探:HTTP(Hypertext Transfer Protocol)中文 “超文本传输协议”,是一种为分布式,合作式,多媒体信息系统服务,面向应用层的协议,是Internet上目前使用最广泛的应用层协议,它基于传输层的TCP

2015-06-02 10:17:07 34620

转载 view/WindowManager.LayoutParams 下

本文参照自:http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html转载于:http://blog.youkuaiyun.com/hudashi/article/details/7061240BRIGHTNESS系列该系列主要用于设置window的brightness(screenBr

2015-04-23 16:34:28 673

转载 windowManager LayoutParams 上

本文参照自:http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html和http://blog.sina.com.cn/s/blog_4b3c1f950100qd9s.html转载于:http://blog.youkuaiyun.com/hudashi/article/details/7060882

2015-04-23 16:31:38 717

转载 Android 适配者模式

转载于:http://blog.youkuaiyun.com/beyond0525/article/details/22814129适配者模式是也是android中应用很广泛的设计模式,如我们常见用 BaseAdpter, ArrayAdapter, CursorAdapter,就是用的适配者模式,看到源码你是不是对这种设计方式很陌生,没事,下面我们通过实际的例子来取理解这种设计模式。一、作用

2015-04-10 15:34:55 872

转载 Android 工厂模式

转载地址:http://blog.youkuaiyun.com/beyond0525/article/details/22806393在android中用到了很多的工厂类,如ThreadFactory创建抽象Runnable 。下面通过简单的例子来学习工厂模式。一、作用工厂模式(Factory Method):定义一个用于创建对象的接口,让子类决定将哪一个类实例化。从而使一个类的实例化延迟到其

2015-04-10 13:55:15 1234 1

转载 Android设计的单例模式

转载地址:http://blog.youkuaiyun.com/beyond0525/article/details/22794221单例模式是设计模式中最常见也最简单的一种设计模式,保证了在程序中只有一个实例存在并且能全局的访问到。比如在android实际APP 开发中用到的 账号信息对象管理, 数据库对象(SQLiteOpenHelper)等都会用到单例模式。下面针对一些例子分析一下我们在开发过程

2015-04-10 11:51:34 857

转载 分享45个android实例源码,很好很强大.收藏吧!!!

分享45个android实例源码,很好很强大http://www.apkbus.com/android-20978-1-1.htmlandriod闹钟源代码http://www.apkbus.com/android-20974-1-1.htmlandroid源码分享之指南针程序http://www.apkbus.com/android-20973-1-1.html

2015-02-12 10:18:34 1252 2

原创 Junit 跟XML解析实例

Junit Test  就是单元测试,要自己编写代码来检测代码的正确性使用Junit Test 在AndroidManifest文件中添加如下申明:    <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="

2014-12-09 15:52:31 3334

原创 prefernce的使用具体使用

package com.example.testpreference;import java.util.Iterator;import java.util.Set;import android.annotation.SuppressLint;import android.app.Dialog;import android.content.ComponentName;import a

2014-11-21 18:09:16 1904

原创 Preference的使用(3) --- 子类的使用

EditTextPreference && ListPreference && MultiSelectListPreference  都jic

2014-11-21 14:27:28 5067

原创 Preference的使用(2) --- PreferenceCategory && PreferenceScreen

上一节有讲到Preference的基本使用跟API的

2014-11-21 09:26:59 28691

原创 Preference的使用(1) --- 基础API的介绍

SharedPreference  我想大家使数据持久化的时候都使用过,但是现在jiaong

2014-11-20 11:29:37 20589 1

原创 使用悬浮框监听内存的使用状态 -- 附源码

先看一下效果:

2014-11-19 15:43:07 1944

转载 常用数据结构 List set map

List接口对Collection进行了简单的扩充,它的具体实现类常用的有ArrayList和LinkedList。你可以将任何东西放到一个List容器中,并在需要时从中取出。ArrayList从其命名中可以看出它是一种类似数组的形式进行存储,因此它的随机访问速度极快,而LinkedList的内部实现是链表,它适合于在链表中间需要频繁进行插入和删除操作。在具体应用时可以根据需要自由选择。前面说的I

2014-11-17 14:04:28 8934

原创 探索Fragment(3) --- Fragment跟ViewPager绑定

先看效果图:

2014-11-14 15:01:37 1696

原创 探索Fragment(2)---数据交互

Fragment使用时,要把数据传送给Activity 或者Fragment

2014-11-13 15:07:20 823

原创 探索Fragment(1)----基本使用

Android是在Android 3.0 (API level 11)开始引入Fragment的,Fragment是碎片的意思。       可以把Fragment想成Activity中的模块,这个模块有自己的布局,有自己的生命周期,单独处理自己的输入,在Activity运行的时候可以加载或者移除Fragment模块。可以把Fragment设计成可以在多个Activity中复用的模块。当开

2014-11-13 11:24:13 1492

原创 Android 上手机跟机顶盒应用开发的区别

首先声明,下述观点dou

2014-11-04 12:27:20 16230 1

转载 【科普】为什么WiFi自动信道选到的信道多数在1/6/11

转载于:论坛上不少朋友很困惑,为什么小极的自动信道选择选到的信道只会在1、6、11这三个信道呢?WiFi不是一共有10几个信道吗?其他信道岂不是浪费了?这个问题是个非常典型的问题,问100个人,几乎100个人不知道答案的。为了回答这个问题,我准备不少基础知识,但是,既解释原理,又让它不是那么深涩,是有难度的,所以,如果读不懂的朋友,请多看几遍,欢迎在此话题下

2014-10-31 10:21:59 19316

原创 Activity之间的动画切换

Activity在启动另外一个Activity时之间是可以加入效果的:使用代码: Intent intent = new Intent(MainActivity.this , Activity02.class); startActivity(intent); overridePendingTransition(R.anim.d

2014-10-13 14:33:55 2000

原创 Android shap的使用

shape 是形状的意思,使用它可以设置自己的shape 它的所有属性都在上面了 从简单的开始看起:       1.solid就是控件填充

2014-10-11 17:52:57 2647

原创 Android TextView加上阴影效果

废话不多说字体阴影需要四个相关参数:1. android:shadowColor:阴影的颜色2. android:shadowDx:水平方向上的偏移量3. android:shadowDy:垂直方向上的偏移量4. android:shadowRadius:阴影的范围

2014-10-11 14:13:52 82682 3

原创 网络图片加载(Universal_Image_Loader,Volley)

当我们的ImageView是加载网络的图片是

2014-10-11 10:16:57 10545 1

转载 Android 的color.xml

xml version="1.0" encoding="utf-8" ?>resources>color name="white">#FFFFFFcolor>白色 -->color name="ivory">#FFFFF0color>象牙色 -->color name="lightyellow">#FFFFE0color>亮黄色-->color name="yellow">#FFFF00

2014-09-26 10:50:01 678

openclaw安装教程

openclaw的安装教程,支持windows/mac/ 云端服务器安装。 一般的配置就可以支持。

2026-02-15

本地图片阅读器V1.1

使用Viewpager实现图片的预览, 阅读本地图片, 本地图片的文件夹分类

2014-09-02

fragment跟ViewPager

fragment的使用 fragment跟Viewpager的使的demo

2014-11-14

悬浮框监视内存变化

使用悬浮框监听内存变化的Demo 悬浮框支持点击响应

2014-11-19

Vollery资源包

Android 网络通信框架Volley简介 Vollery的源码跟jar包 网络通信方面的

2014-10-11

图片阅读器代码(V1.0)

图片阅读器源码, 使用viewpager打开本地资源

2014-09-01

图片阅读器V1.2

在V1.1的基础上实现了网络获取图片的功能! 使用了DiskLreCache

2014-09-09

niversal_image_loader

包含jar包跟源码 主要应用加载网络图片 可以保存到本地

2014-10-11

ImageLoad_volley

Universal_image_loader 跟 Volley的 使用demo 主要用于网络图片的加载

2014-10-11

JunitTest XML parse

Junit Test 使用实例 XML的 SAX 解析 跟 PULL解析的实例

2014-12-09

Viewpager滑动效果

收集的一些ViewPager切换页面时的滑动效果

2014-11-14

sip资源打包内含多个文档

sip资源打包,内含多个文档 有华为的内部资料, 华为软件换分组协议基础,SIP经典例子(编程),sip体系结构,REC3621

2011-12-03

空空如也

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

TA关注的人

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