自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (1)
  • 收藏
  • 关注

原创 Git修改提交 --amend

我曾孤单如隧道。群鸟飞离我身,而夜以其强大的侵袭攻占了我。我曾孤单如隧道。群鸟飞离我身,而夜以其强大的侵袭攻占了我。(智利) 巴勃罗·聂鲁达《二十首情诗和一首绝望的歌》

2024-03-19 11:05:28 247

原创 Android 开发一个耳返程序(录音,实时播放)

通过AudioRecord录制加上AudioTrack渲染PCM编码数据实现实时耳返功能

2024-02-23 16:14:56 596 1

原创 Android 解决后台服务麦克风无法录音问题

我用心为你考虑黄浦江的事情,你心里想的却只有苏州河的勾当《繁花》爷叔我用心为你考虑黄浦江的事情,你心里想的却只有苏州河的勾当。

2024-02-23 14:33:54 680

原创 使用IDE进行Gradle Debug调试

超简单使用IDE或者Android Studio对Gradle断点调试

2024-01-09 10:52:12 498

原创 解决运行Gradle命令报错 Could not initialize class org.codehaus.groovy.runtime.InvokerHelper

然后重新运行你的Gradle命令即可。文件中添加你的项目JDK路径。时,请看下方解决办法。

2024-01-05 12:08:58 1156

原创 开源Flutter on Desktop项目-极扩安卓开发者工具

这个桌面项目可以辅助你开发APP,支持分析一些运行数据以及操作APK安装等功能,甚至我还加入了Window安卓子系统的功能。在它的帮助下,你可以快速查看当前正在运行的Activity,给你的安卓子系统旁加载软件,分析手机数据等等…

2023-11-23 15:14:52 81

原创 ASM之MethodWriter创建方法并支持传参

这里我们除了创建了一个方法,并且在里面加入了函数参数和max计算传入参数谁更大的代码。

2023-11-22 15:59:41 69

原创 ASM之MethodWriter创建静态方法

ASM创建静态方法和创建方法基本类似,都是使用来实现,区别是传入的access参数变为。

2023-11-22 15:58:50 61

原创 ASM之FieldVisitor创建变量

第一个参数是修饰类型,第二个参数是变量名,第三个是变量类型,第四个签名,第五个是变量的值(设置值好像没什么用,所以我在下面代码的初始化中重新初始化了str的值)

2023-11-22 15:57:49 89

原创 ASM之ClassWriter生成.class

我们可以使用ClassWriter来生成一个类如果不知道如何编写ASMified代码,可以直接使用插件ASMPlugin,将你需要的功能编写成正常的java代码,然后使用ASM Bytecode Viewer将编写的类转换成ASMified代码后作为参考。

2023-11-22 15:56:00 71

原创 ASM之ClassWriter

ClassWriter的父类是ClassVistor,它可以在编辑完字节码后通过toByteArray()方法将所有的visit做的操作转换为byte[],而这些byte[]的内容就遵循classFile的结构,所以将其通过写入文件后就是可执行的class文件。

2023-11-22 15:53:45 78

原创 ASM之ClassVistor

ClassVistor是一个抽象类,如果要使用必须继承它,比较常见的官方实现的子类有ClassWriter类和ClassNode类。在ASM core API中,最重要的三个类就是ClassReader、ClassVistor、ClassWriter。visitEnd()是被调用的最后一个方法,用于提示你访问工作已经结束。visitMethod()对饮的class结构如下。visitField()对应的class结构如下。visit()对应的class结构如下。ClassVistor方法的调用顺序。

2023-11-22 15:53:11 71

原创 ASM是什么

ASM用于做class的AOP编程,支持操作字节码,而字节码的具体形式就是 .class。

2023-11-22 15:52:03 39

原创 Python实现视频转代码舞

通过python视频转代码舞

2022-06-14 17:46:33 806 1

原创 Android 先慢后快的算法,适用于播放器滑动控制百分比

前言各位观众姥爷是否觉得一个好的播放器仅仅只能平滑拖动进度是不理想化的,我个人觉得百分比拖动功能应该是这样子的:先慢后快,啥意思呢?当我们小幅拖动时是对进度精细化调整,可能就是想看几秒前晃神、眨眼、刻骨铭心的画面,仅需要秒级的拖动,但是当大幅拖动时是对这一段不感兴趣或者直接想跳到片尾,这时候涉及进度的调整往往直接冲向100%,有什么算法可以做到呢?算法明人不说暗话,有几个基础变量获取视频控件的宽度,记作viewWidth获取在视频控件拖动的距离,记作moveWidth基础变量定义完成后就是算

2022-02-19 15:19:48 1007

原创 Android Studio过滤冗余日志

前言在Android Studio开发中我们常通过Log输出查看当前程序运行的状态,但经常打印出一些第三方的Log和系统日志,而我们需要的仅仅只是自己代码运行的Log,那想要屏蔽其他的日志输出怎么办呢?有人会说选择APP的包名啊。是的,这样可以屏蔽大部分其他APP和系统日志,但是仍然会有一部分和APP相关但却不是我们需要观察的内容会被打印到控制台,为了解决这些冗余日志,我们利用Android Studio中支持自定义日志输出功能配合正则表达式可以完美过滤掉多余的日志,下面教大家怎样对不需要的日志进行屏蔽

2021-11-17 14:59:51 2205

原创 Android 状态栏沉浸式适配(基于Android M,适配异形屏)

前言我们都知道,世界有多大,设计稿就有多奇葩。为了UI的完美效果,通常情况下都会涉及到状态栏的修改操控,而状态栏的修改分为两种方式,一种是动态代码,一种是style实现,为了方便使用,本文仅介绍通过动态代码对状态栏进行隐藏、透明、内容变色,文末会带有一个工具类直接提供使用,以满足各位奇葩设计稿的要求。希望大家看完之后可以写出更美观的UI,老板看到满意,用户看到喜欢,最终升职加薪,哈哈,xswlAndroid状态栏小知识一个界面的展示是由Window负责的,而在一个Window内包含一个顶级View叫

2021-09-13 14:48:03 585

原创 解决NestScrollView滑动后需要点击两次或需要隔一段时间才能点击的问题

异常缘由:NestedScrolling如果有嵌套的情况下可能会导致NestScrollView滑动已完成但内部OverScroller并未finish,由此导致mIsBeingDragged一直为true,而NestScrollView是通过mIsBeingDragged拦截事件的,最后导致事件被NestScrollView拦截无法传递给子View,这个问题不知道androidx有没有解决,但support包中一直存在解决方案:自定义NestScrollView,重写onTouchEvent方法,判

2021-07-02 15:13:22 445

原创 批处理Bat简单教程

阅读前注意@REM是Bat的注解@REM for /f "delims= " %%i in (d:\out.txt) do echo %%i@REM pause@REM echo on@REM 输出所有的Log@REM echo on@REM 输出指定的Log@REM echo off@REM echo 指定的@REM 输入并提示,将输入值作为变量@REM set /p var=请输入:@REM echo %var%@REM 输入并计算,将计算后的值作为变量@REM set /a

2021-06-27 22:50:55 1050

原创 Android 文字后面追加标签,不被长文本顶出界面的教程

产品经理一定要在文字后追加标签,让标签对齐文字右边又不超出界面,用了LinearLayout和各种Layout,最终谷歌的新布局ConstraintLayout成功了下面直接上代码 <android.support.constraint.ConstraintLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:la.

2021-04-20 15:14:03 440

原创 Android Studio 链接外部项目的Module

Android Studio 链接外部项目的Module前言引用外部Module前言有的时候自己写的Module要在多个项目同步使用,但是使用Android Studio 的import module功能是直接Copy一份Module的代码过来,而你要实现的功能是多个主项目依赖于同一个Module,改动这个Module其他项目同步修改,除了使用Git的子模块功能以外还能怎么办呢引用外部Module其实Android Studio是支持外部Module引用的,从而达到多个项目引用同一个Module的

2021-03-12 10:13:01 840

原创 Android 开发工具系列-获取当前运行Activity工具

本文目录 点击直达Android 开发工具系列 点击直达本文标签`路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢`前言:最后我还有一句话要说:世上没有什么东西能拿我们怎么样,可是我们自己要是老想恢复失去的东西,老想着过去,就会毁了我们自己。Android 开发工具系列 点击直达Wear OS手表应用开发教程之-创建应用本文标签Bat脚本语言获取当前ActivityAndroid开发工具路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢前言:最近看到B

2020-12-09 17:05:14 722

原创 Wear OS手表应用开发教程之-按钮事件-旋转按钮使用和回调

本文目录 点击直达Wear OS手表应用开发系列教程 点击直达本文标签`路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢`前言:WearOS默认支持旋转滑动的View:给特殊的或不支持旋转滑动的View自定义旋转滑动输入:结语:最后我还有一句话要说:世上没有什么东西能拿我们怎么样,可是我们自己要是老想恢复失去的东西,老想着过去,就会毁了我们自己。Wear OS手表应用开发系列教程 点击直达Wear OS手表应用开发教程之-创建应用Wear OS手表应用开发教程之-创建环形滚动列表-Wear

2020-08-19 17:19:23 1667 3

原创 Wear OS手表应用开发教程之-手腕手势-上下甩动手表事件

本文目录 点击直达Wear OS手表应用开发系列教程 点击直达本文标签`路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢`前言:在Activity获取手腕手势回调:在View获取甩动事件回调:结语:最后我还有一句话要说:一件东西破了就是破了,我宁愿把它丢掉,回忆着它的美好,也不愿意整天看着残破的它伤心。Wear OS手表应用开发系列教程 点击直达Wear OS手表应用开发教程之-创建应用Wear OS手表应用开发教程之-创建环形滚动列表-WearableRecyclerViewWear

2020-08-18 17:53:19 796

原创 Wear OS手表应用开发教程之-监听手表按键以及获取按键信息-WearableButtons

本文目录 点击直达Wear OS手表应用开发系列教程 点击直达本文标签`路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢`前言:获取按键信息:获取按键数量获取按键信息获取按键ICON获取按键标签使用按键的点击事件结语:最后我还有一句话要说:山有木兮木有枝,心悦君兮君不知。 Wear OS手表应用开发系列教程 点击直达Wear OS手表应用开发教程之-创建应用Wear OS手表应用开发教程之-创建环形滚动列表-WearableRecyclerViewWear OS手表应用开发教程之-禁止全

2020-08-14 17:40:35 1595

原创 Wear OS手表应用开发教程之-自定义导航栏布局-WearableDrawerView(动态控制)

本文目录 点击直达Wear OS手表应用开发系列教程 点击直达本文标签`路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢`前言:效果展示:使用方法:结语:最后我还有一句话要说:山有木兮木有枝,心悦君兮君不知。 Wear OS手表应用开发系列教程 点击直达Wear OS手表应用开发教程之-创建应用Wear OS手表应用开发教程之-创建环形滚动列表-WearableRecyclerViewWear OS手表应用开发教程之-禁止全屏滑动返回ActivityWear OS手表应用开发教程之-侧

2020-08-13 16:28:01 913

原创 Wear OS手表应用开发教程之-底部导航-WearableActionDrawerView(动态控制)

本文目录 点击直达Wear OS手表应用开发系列教程 点击直达本文标签前言:效果展示使用方法结语最后我还有一句话要说等到风景都看透,也许你会陪我看细水长流 Wear OS手表应用开发系列教程 点击直达Wear OS手表应用开发教程之-创建应用Wear OS手表应用开发教程之-创建环形滚动列表-WearableRecyclerViewWear OS手表应用开发教程之-禁止全屏滑动返回ActivityWear OS手表应用开发教程之-侧滑隐藏-SwipeDismissFrameLayoutWea

2020-08-12 16:45:30 1074

原创 Wear OS手表应用开发教程之-顶部导航-WearableNavigationDrawerView

本文目录 点击直达Wear OS手表应用开发系列教程 点击直达本文标签前言:效果展示使用方法结语最后我还有一句话要说人生下来不是为了拖着锁链,而是为了展开双翼。 Wear OS手表应用开发系列教程 点击直达Wear OS手表应用开发教程之-创建应用Wear OS手表应用开发教程之-创建环形滚动列表-WearableRecyclerViewWear OS手表应用开发教程之-禁止全屏滑动返回ActivityWear OS手表应用开发教程之-侧滑隐藏-SwipeDismissFrameLayoutW

2020-08-11 18:14:46 1739

原创 GreenDao解决Unresolved reference: DaoMaster、Unresolved reference: DaoSession的问题

本文目录 点击直达问题出现的情况解决方案最后我还有一句话要说(点赞、评论、收藏,三求一)我无法控制自己的眼睛,忍不住要去看他,就像口干舌燥的人明知水里有毒还要喝一样。我本来无意去爱他,我也曾努力的掐掉爱的萌芽,但当我又看到他时,心底的爱又复活了。 问题出现的情况当我们使用GreenDao并且加入了更多插件的时候,很容易出现Unresolved reference:的错误解决方案修改项目module的build.gradle文件后重新sync就解决了,如果有其他错误请在评论像我询问apply plu

2020-08-11 11:25:47 1686 3

原创 Wear OS手表应用开发教程之-Activity使用微光模式-AmbientModeSupport

本文目录 点击直达Wear OS手表应用开发系列教程 点击直达本文标签前言:使用方法结语最后我还有一句话要说年轻时我以为钱就是一切,现在老了才知道,确实如此 Wear OS手表应用开发系列教程 点击直达Wear OS手表应用开发教程之-创建应用Wear OS手表应用开发教程之-创建环形滚动列表-WearableRecyclerViewWear OS手表应用开发教程之-禁止全屏滑动返回ActivityWear OS手表应用开发教程之-侧滑隐藏-SwipeDismissFrameLayoutWea

2020-08-10 18:14:05 1215

原创 Wear OS手表应用开发教程之-滑动隐藏布局-SwipeDismissFrameLayout

Wear OS手表应用开发教程之-滑动隐藏布局-SwipeDismissFrameLayout本文标签前言:利弊解析效果展示使用方法结语最后我还有一句话要说年轻时我以为钱就是一切,现在老了才知道,确实如此 Wear OS手表应用开发系列教程本文标签Android StudioWear OSSwipeDismissFrameLayout滑动隐藏布局前言:正如Android一样,Wear OS也是谷歌创建的智能操作系统,属于Android的一个分支。假设你有过AndroidApp

2020-08-07 17:39:10 2109

原创 Wear OS手表应用开发教程之-禁止全屏滑动返回Activity

Wear OS手表应用开发教程之-禁止全屏滑动返回Activity本文标签前言:效果展示使用方法结语最后我还有一句话要说你看不见你自己,你所看见的只是你的影子。Wear OS手表应用开发系列教程本文标签Android StudioWear OSWearableActivity手表禁止返回前言:正如Android一样,Wear OS也是谷歌创建的智能操作系统,属于Android的一个分支。假设你有过AndroidApplication开发经验,那给Wear OS 做应用适配应该

2020-08-06 11:39:51 2994 1

原创 Wear OS手表应用开发教程之-创建环形滚动列表-WearableRecyclerView

Wear OS手表应用开发教程之-适配圆形列表-WearableRecyclerView本文标签前言:效果展示使用方法结语最后我还有一句话要说世界上最遥远的距离,不是生与死的距离,不是天各一方,而是,我就站在你的面前,你却不知道我爱你。 Wear OS手表应用开发系列教程本文标签Android StudioWear OSWearableRecyclerView环形滚动列表前言:正如Android一样,Wear OS也是谷歌创建的智能操作系统,属于Android的一个分支。假设你

2020-08-05 17:21:32 3037

原创 Wear OS手表应用开发教程之-创建应用

臧克家《有的人》

2020-08-04 16:28:37 5657 1

原创 常见HTTP状态码一览(面试宝典版)

常见HTTP状态码一览状态码介绍100系列状态码200系列状态码300系列状态码400系列状态码500系列状态码状态码介绍HTTP状态码全称是(HTTP Status Code),是用来表示服务器超文本传输协议响应状态的三位数字,它由 RFC 2616 规范定义的,并得到 RFC 2518、RFC 2817、RFC 2295、RFC 2774 与 RFC 4918 等规范扩展。所有状态码的第一...

2020-04-10 18:19:53 413

原创 Flutter运行报错 `flutter kernel_snapshot for errors` 解决方案

Flutter运行报错 `flutter kernel_snapshot for errors`解决方案解决方案当你Flutter项目删除了dart文件如果遇到 flutter kernel_snapshot for errors错误可以通过清理Flutter缓存和构建解决问题解决方案因为Android Studio没有提供Flutter清除缓存重新构建的选项我们需要手动输入命令flut...

2019-10-15 16:32:16 1881

原创 Navigation返回重新执行onCreateView解决办法

Navigation返回重启解决办法第一个方案(利用生命周期保障程序运行):第二个方案(未销毁数据重用)Navigation作为Android jetpack新推出的组件使用起来非常的方便,甚至可以做到一个Activity配合Navigation完成整个应用的开发,但是有的小伙伴可能会发现在使用Navigation时点击返回键后页面重构,重新执行了onCreateView方法,那遇到这种问题怎么...

2019-03-13 14:59:28 7814 9

原创 解决在WebView无法播放视频的问题

解决在WebView无法播放视频的问题加上这一句防止视频瞎调用mWebView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return false; } ...

2018-10-15 10:33:20 2985

运行时activity获取助手

获取当前手机上展示的Activity,仅供辅助开发使用。 使用前请安装adb,配置系统环境变量,然后打开手机的开发者模式,并且打开手机USB调试功能 如有疑问请私信w~x~:松果果科技星球

2020-12-09

空空如也

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

TA关注的人

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