Verne in GitHub

每天学习一个命令:tar 压缩和解压文件

tar 本质上只是一个打包命令,可以将多个文件或者文件夹打包到一个 tar 文件中,结合其他的压缩程序再将打包后的档案文件压缩。所以看到 .tar.gz, .tar.bz2, .tar.xz 等等文件其实是 tar 文件之后进行 Gzip, Bzip2, XZ 压缩之后的文件。 命令格式 tar [-] A --catenate --concatenate | c --create | d --diff --compare | --delete | r --append | t --list | --test-label | u --upd Read more ...

2016-09-25 tar , linux , archive , extract , command

Android Notification

Android Support v4 包中的 NotificationCompat.Builder ,在 Android 3.0 API Level 11 中才有 Notification.Builder。 创建通知 您可以在 NotificationCompat.Builder 对象中为通知指定 UI 信息和操作。要创建通知,请调用 NotificationCompat.Builder.build(),它将返回包含您的具体规范的 Notification 对象。要发出通知,请通过调用 NotificationManager.notify() 将 No Read more ...

2016-09-25 Android , AndroidDev

Android monkey test

Android UI monkey 测试 伪随机用户事件,发送到模拟器或者设备,用来对应用程序进行压力测试。 功能: 设定事件数 操作限定到某一个特定 package 事件类型和频率 调试选项 报错: 如果应用 crash 或者遇到 unhandled exception , monkey 会停止并上报错误 如果应用产生 not responding error , monkey 也会停止并上报 基本使用 基本语法: adb shell monkey [options] <event-count> Read more ...

2016-09-22 Andorid , AndroidDev , monkey

每天学习一个命令:dpkg-reconfigure 命令重新配置软件包

dpkg-reconfigure 命令是 Debian 系 Linux 中用来重新配置软件包的命令,运行该命令可以重新配置软件包第一次安装后的配置问题。 使用方式 sudo dpkg-reconfigure [package name] 举例 常用的配置,比如配置语言 sudo dpkg-reconfigure locales 配置 display manager sudo dpkg-reconfigure lightdm sudo dpkg-reconfigure mdm 配置时区 sudo dpkg-reconfigure t Read more ...


Gradle 重复导入错误

记录一下纠结了两天的问题。 问题 项目中遇到如下错误: Error:Execution failed for task ':mobile:packageAllDebugClassesForMultiDex'. > java.util.zip.ZipException: duplicate entry:android/support/annotation/AnyRes.class 这个问题是因为项目中引入了 support-annotations 包,但是导入的其他 jar 包中包含了这个 package,重复导致了 duplicate en Read more ...

2016-09-18 android , androiddev , gradle , google

adb shell dumpsys 使用

adb 相关的命令在 这篇 文章中已经提及。这里主要展开 adb shell dumpsys 这个子命令。 今天在查当前运行的 Activity 时遇见这个命令。 当前 service adb shell dumpsys,默认打印出当前系统所有 service 信息 获取屏幕信息 adb shell dumpsys display |grep DisplayDevice 获取电源管理信息 adb shell dumpsys power 电池信息 adb shell dumpsys battery Current Battery Se Read more ...

2016-09-09 adb , android , android-dev , shell

常用 adb command 命令

一些常用的 adb 命令,包括 Android 录屏,及从电脑复制文件,从 Android 设备拉取文件等等。 adb 的全称是 Android Debug Bridge, 这个命令可以用来发送一系列指令给 Android 设备,包括但不限于基本的 Linux 指令。只要手机或者任何 Android 设备开启了 Debug 模式并且取得信任,adb 命令几乎可以用来做任何事情。因此网络上也存在使用 adb 来入侵同一局域网下的 Android 盒子的例子。 adb 使用的默认端口是 5037. Ubuntu 系下安装 sudo apt-get i Read more ...

2016-09-08 android-dev , android , adb , dev , device

Android Animation Interpolator

动画插值器,用来描述动画的变化率,这里讨论的 Interpolator 指的是 android.animation 包下的 TimeInterpolator。 以下所有的插值器都继承自 Interpolator , 而 Interpolator 接口直接继承自 TimeInterpolator , 自身并没有添加任何方法。 TimeInterpolator 中有 abstract float getInterpolation(float input) 方法,参数 input:input 参数是一个 float 类型,它取值范围是 0 到 1,表示当前 Read more ...

2016-09-06 Android , AndroidDev

Android ImageView ScaleType

ImageView 的 ScaleType 属性决定了图片在 View 上显示时的样子,是比例缩放,还是显示图片的整体或者局部等等。对于一张图片,有其自身的大小,而 ImageView 也有其自身的大小,这两者如何完美的合作其结果很重要的设置便是 ScaleType 属性。 设置该属性的方式有两种: 在布局 Layout 中 ImageView 中定义 android:scaleType="center" 在代码中调用 imageView.setScaleType(ImageView.ScaleType.CENTER); 8 种 Sca Read more ...

2016-09-05 Android , AndroidDev

Android Animation

Android 的动画实现有不同的方式,在 3.0 以前 Android 的动画很简单只能在 View 层做,在后期版本中不断的加入动画实现,至今已经有这非常完善的动画系统了。Android 系统提供了 Property animation 和 View animation 两大动画系统。除去这两大动画系统之外,还有一类 Drawable Animation, 允许加载 drawable 并且一帧一帧播放: View Animation 视图动画 Property Animation 属性动画 Drawable Animation 帧动画 Read more ...

2016-09-04 Android , AndroidDev , Animation

最近文章

  • Nowledge Mem 使用半年体验:让所有 AI Agent 共享同一份记忆 今年 2 月份我把 [[Nowledge Mem]] 装到 MacBook 上,想解决的是一个很常见的问题:我希望在 [[Perplexity]] 网页上查过的资料,直接在 Claude Code 中可以记住。但没想到大半年过去,它已经变成了我每天都在用的软件,而且是那种「不在后台跑着就会觉得别扭」的存在。我在 Claude Code、[[Codex]]、[[OpenClaw]] 里开的每一个会话,开头都会先从它这里拿一份简报;网页上和 AI 聊过的东西会自动同步进去;我做过的决定、踩过的坑、服务器的配置,都沉淀成一条条可以被任何 Agent 检索的记忆。说它是我所有 Agent 的记忆和大脑,一点都不夸张。
  • Aside AI 浏览器介绍:既能自己干活,也能接入 Agent 前两天整理了一篇 AI 浏览器自动化方案怎么选,把 Playwright、MCP、Agent 专用浏览器、WebMCP 这些路线梳理了一遍。在那篇文章里我提到,「内置 Agent 的 AI 浏览器」这一类里我最看好的是 Aside,原因是它的密码管理器设计得很用心,但篇幅有限没有展开。今天就单独写一篇,聊聊这个浏览器到底能做什么、和 [[Comet]]、[[Dia Browser]] 有什么不一样,以及我现在是怎么用它的。如果你看完想试试,可以用我的邀请链接 https://aside.com/r/UpYKnv9ziq 注册,注册后会额外获得 100 Credits。
  • AI 浏览器自动化方案怎么选:从 Playwright、MCP 到 Agent 浏览器和 WebMCP 的全景梳理 最近我一直在研究「让 AI 用浏览器」这件事。起因是看到 Nowledge 写了一个 browse-now Skill,可以直接让 Claude 控制浏览器,紧接着又偶然发现了 [[Ego Lite]] 这款专门为 Agent 设计的浏览器。顺着这条线,我把 Aside、BrowserOS、Deta Surf 这几款 AI 浏览器挨个调研了一遍,越看越发现它们的侧重点和实现方式差别很大:有人在做测试框架,有人在做浏览器插件,有人从 Chromium 内核开始为 Agent 改造浏览器,还有人在推动新的 Web 标准。它们看起来都在「让 AI 操作网页」,解决的却根本不是同一个问题。
  • 入手 GL.iNet Comet Pro(RM10):支持 Wi-Fi 6 的远程 IP KVM 家里的 [[Homelab]] 一直是一台 4 盘位的小主机跑 [[Proxmox VE]],上面跑着 Ubuntu 虚拟机、一堆 Docker 服务和下载机。平时远程管理全靠 SSH 加 [[Tailscale]],只要系统还活着基本没什么问题。真正让我不放心的是系统起不来的时候:升级内核后卡在启动界面、改网卡配置时手滑导致网络没起来、BIOS 被重置后不再从正确的硬盘启动,这时候 SSH 连不上,Tailscale 也不会在线,人不在家就只能干等。最近正好赶上一波促销,我入手了 [[GL.iNet]] 的 Comet Pro(型号 GL-RM10)远程 [[IP KVM]],叠加各种限时优惠之后实际支付 590.76 元,算是把 Homelab 远程管理的最后一块短板补上了。
  • 用 PowerContext 给多个 Coding Agent 做任务交接 现在我写代码基本是 [[Codex]] 和 [[Claude Code]] 轮着用。有时候是 Codex 的额度先用完了,有时候是某一步我觉得 Claude Code 更合适,于是一个任务经常要在两个 Agent 之间换手。真正麻烦的不是换工具本身,而是换手的那一刻:新会话对前面发生的事一无所知。之前选了哪个库、哪个旧接口不能动、改了哪些文件、测试跑没跑过,这些信息全都留在上一段对话里。我只能手动复述一遍,或者把一大段聊天记录贴回去,前者容易漏掉关键约束,后者浪费 Token,还会让模型在几千行历史里抓不住重点。说到底,我缺的不是一个更大的上下文窗口,而是一份能在 Agent 之间传递、而且接手方可以核对的「当前状态」。在写这篇文章的时候还出现了另外一个思路就是利用 [[magpie]] 将模型路由给充足额度的账号,这个之后再写文章说。