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

《Effective Java》读书笔记

Java 语言中存在四种类型: 接口 interface 类 class 数组 array 基本类型 primitive type 前三种是引用类型,类实例和数组是对象,基本类型不是对象。 在 Java 中一共有 8 种基本数据类型,其中有 4 种整型,2 种浮点类型,1 种用于表示 Unicode 编码的字符单元的字符类型和 1 种用于表示真值的 boolean 类型。(一个字节等于 8 个 bit) 整型 类型 存储需求 bit 数 取值范围 Read more ...

2016-09-02 android , java , design-pattern

画图工具收集

画图工具整理,平时少许的画图需求,所以找了这些网站,Draw.io 还是不错的,简单的流程图都能搞定。 所见即所得 Draw.io 国外的免费画图网站,支持 Google Drive,Dropbox 等等 https://draw.io gliffy 所见即所得,有 Chrome 扩展,可离线,和 Google Drive 有结合 https://www.gliffy.com/ ProcessOn 国内的画图网站,可以实时写作 https://www.processon.com/ Visio 微软出的绘图软件,但 Read more ...

2016-08-28 draw , grach , collection

Grub2 bootloader 主题

之前把 Linux Mint Grub2 bootloader 的背景图片更换了一下,直接用的 gnome-look 的 Anonymous Hope 主题 ,这里就记录一下,以便快速恢复。 Gnome-look 这个网站上有非常多人分享的内容,可以到这个网站自行选择自己喜欢的内容。 Usage 一般 grub 的主题需要在 /boot/grub/themes 目录下。如果没有这个目录需要手动创建 sudo mkdir -p /boot/grub/themes 然后将下载的文件内容拷贝到该目录下。完成拷贝之后需要修改一下 /etc/defaul Read more ...

2016-08-26 grub2 , bootloader , theme , grub-theme

让网站在分享时预览更美观

在最近用 Telegram 分享网页的时候,Telegram 会预先抓取网页形成一个缩略预览,但是如果是自己的网站没有适配一些 meta 信息,抓取出来的信息就非常不堪入目。所以优化一下网站在分享的时候的预览图,这个术语叫做 Rich Previews,想查看网站是否已经优化好,可以查看下面的网站: http://richpreview.com/ 想要好看的预览需要如下的标签 Title 最长 65 个字符,否则 Google 结果就会被截断 Meta description 最好小于 155 字符 og:title 最好不超 Read more ...

2016-08-25 website , html , meta , share , preview

最近文章

  • Langfuse 使得 LLM 应用全链路可观测 不知道大家在运用 LLM 的过程中有没有遇到过这样的问题,我需要不断的调试 Prompt,让 Prompt 给出符合自己满意的结果,并且在应用中使用 Prompt 的时候我需要进行成本的控制,并且持续的迭代优化,而目前大语言模型后台虽然能提供一个简单的支出统计,但用户交互过程中的信息都是捕捉不到的,比如用户的每次请求输出栓输出是否符合预期,不同版本之间的 Prompt 对结果的影响评估,以及用户请求的延迟等等。带着这些需求,我搜寻了一些方案,然后就发现了 Langfuse。
  • VibeTunnel 将终端带到浏览器 开启移动化 Vibe Coding 这两天在调研如何在移动设备上也能随时随地给 Claude Code 布置任务,自己也尝试了不少的方案,从 Tailscale,到 Remote-Code.com 到 VS Code 插件(Claude Autopilot)添加任务到队列。但是每个方案或多或少有一些缺点,比如 Remote-Code 虽然使用比较便捷,但是不支持中文。Claude Autopilot 体验也非常不错,但是我自己尝试的过程中发现长时间运行 VS Code 崩溃了两次,再到 Tailscale + 手机终端的方案,依赖于一个非常好用的 iOS 终端,虽然选择很多,但还是没有找到一款顺手的。
  • Claude Autopilot:自动化 Claude Code 任务 这两天写了很多关于 Claude Code 的相关文章,我自己也高强度的使用了接近一个月的 Cloud Code,但甚至在一个礼拜的时间内,Vibe Coding 了一个网站, 但是我在使用过程当中发现了一些问题,因为我是购买的 20 美元最低等级的套餐,所以经常使用达到 5 小时的限制,达到一个时间点之后才能继续使用。但我就想,有没有一个工具可以让我在达到时间点的时候立即开启我的任务,并且我的任务可以通过智能的队列让 Cloud Code 挨个去处理。
  • Dia 浏览器初体验 很久以前写过一篇 Arc 浏览器初印象, 一晃已经过去了 3 年,Arc 提出来了很多浏览器的创新功能,比如非常抢眼的无地址栏设计,侧边栏 Spaces 独立空间,智能标签页管理,分栏分屏,快捷命令栏,内置应用的迷你预览窗口,内置的白板和笔记等等。在过去的很长一段时间当中, Arc 都是我的备用浏览器,之所以没有成为主力是因为我的很多工作流还依赖于 Chrome 以及 Chrome 下庞大的插件生态。但是 Arc 浏览器的创始人在前段时间宣布了停止更新 ARK,并且推出了一款新的浏览器,All in AI,这款新的浏览器叫做 Dia。
  • Claudia 可视化管理 Claude Code Claudia 是一款专为 Anthropic  的 Claude Code 设计的开源图形用户界面(GUI)桌面应用,可以创建自定义代理,交互式管理,以及在后台运行。它将命令行形式的 Claude Code 转换为直观的可视化操作界面,显著提升了  AI 辅助编程的用户体验。

赞助