自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Mr_Tony的专栏

部分为VIP内容,如果不能解决问题,可以私信

  • 博客(396)
  • 资源 (4)
  • 收藏
  • 关注

原创 Android Studio中打开文件管理器

记录下在Android Studio中打开文件管理器的操作步骤

2024-02-05 15:27:50 456

原创 Compose中的重组、state、remember

在Compose中UI采用State状态来控制UI变化,根据状态的不同来显示不同的内容,每次UI的重新变化成为重组。通过remember可以将state的数据保存起来(或者实例对象,毕竟条件不改变的话默认只会执行一次remember中的函数,哪怕重组无数次),避免在重组期间进行重置。下面记录下三者的关联。

2024-02-01 15:30:55 528

原创 Android源码中示例代码的查看方式

由此可知其余示例也是找到相关的官方仓库,然后去查看示例代码。在实际开发中查看官方api定义的时候会看到如下内容。

2024-02-01 12:18:50 209

原创 Android Room数据库异常(线上两个版本之间结构无变动): Room cannot verify the data integrity.

在Room数据库结构变动的情况下,如果没有进行Room数据库升级迁移,则会报错。在实际开发过程中,数据库结构会经常变化,直到发版。一般来说卸载即可重新安装,但是有时候即使卸载了再安装依然会出现这个错误。这时候通常重启设备再重新安装即可,然而再后面即使数据库没有更改多次安装还是有概率出现,一旦出现,只能重启。查阅多种资料,最终发现通过禁用备份功能可以解决该问题。猜测是备份功能会自动把之前旧的数据库版本更新下来然后与当前新版本数据库产生了冲突。

2024-01-30 16:27:25 604

原创 在Compose中控制组件中数据的流速

在Compose中设计思想是分为状态和组件的,组件由状态控制。这个操作和传统的AndroidView不太一样。在Compose中对话框Dialog也是一个组件,其显示和隐藏由外部状态控制。这里有一个场景,假设显示和关闭的时间间隔过短的话,需要将时间延长至两秒后再隐藏。针对这种问题有两种写法,一种是外部控制显示隐藏时机,一种是内部控制。外部控制较为简单,这里不再记录。本文记录下内部控制方式。

2024-01-29 20:04:42 339

原创 Compose中添加Android原生控件

Compose中使用Android原生控件的注意事项

2024-01-26 15:42:54 642

原创 Compose中使用paging3进行列表分页加载Room中的数据

本文简要记录下流程,代码需要修改后才可以运行。

2024-01-12 20:07:52 585

原创 gradle构建项目速度优化及排查方式

gradle构建优化分为两部分,分别为Android上面的优化和gradle项目通用优化,使项目编译速度提升,节省开发时间。在此前提保持良好的编码习惯并减少代码和资源,也有利于提高编译速度。

2023-11-26 16:31:50 1617

原创 Could not resolve all files for configuration ‘:app:androidJdkImage‘.

解决办法为,修改java版本为17。本地重新下载Java17的jdk,这样本地就会有21、17两个版本,然后在项目中指定依赖的java版本17并配置路径(也可以配置环境变量)可以看出使用的sdk版本为34,java版本为21.

2023-11-26 13:00:28 1350

原创 性能优化中使用Profiler进行内存泄露的排查及解决方式

性能优化中使用Profiler进行内存泄露的排查及解决方式

2023-11-25 15:06:11 1808

原创 性能优化中使用Profiler进行页面卡顿的排查及解决方式

Profiler对页面卡顿的排查及处理办法

2023-11-24 11:01:30 1901 1

原创 使用ListenableFuture进行异步任务执行并进行线程切换

在程序中会经常需要做一些异步任务,但是由于部分操作其实很简单,仅仅是短暂的进行异步操作,然后在结果成功或失败的时候切换回主线程进行下一步处理,这期间不能阻塞主线程。这里记录一下使用google的guava库里面的并发类进行处理,也可以,只是在Android上最低支持API23版本,但是项目最低支持21。使用来进行Java高版本兼容的话,改动比较多,一直有R8/D8兼容性错误。估计要升级jdk、gradle等等版本,在协作开发中不太合适。项目中本身就有guava。所以使用这个进行开发。

2023-11-23 11:15:57 959

原创 TypeScript中的难点语法解析

记录一些TypeScript中难以理解的语法结构

2023-11-08 19:17:37 167

原创 开发中各个工具的版本变化速查链接

该文档虽然是官方文档,但是不会把实验功能写出来,比较好的地方就是看起来整齐简洁,下一条文档也是官方的,很全面,但是文档写的复杂。可以从这个文档有个简单了解,具体每个版本细分特性可以查阅https://docs.oracle.com/en/java/javase/21/index.html 这个链接,然后将版本号修改下即可。可以选择不同的版本查看,比较不好的是,没有列出每个版本的新增变化。groovy的版本变化相较于其余更加难读主要位于官网的最下面。

2023-10-29 20:14:59 176

原创 android中gradle的kotlin编译配置选项

传递参数的发过誓可以直接在里面写。该配置在其余平台不可用。

2023-10-29 16:47:18 1010

原创 使用Google的地点自动补全功能

在进行海外开发时候需要使用google地图,这里对其中的地点自动补全功能开发进行记录。这里着重于代码开发,对于key的申请和配置不予记录。

2023-10-25 20:28:43 442

原创 AnimatedVectorDrawable矢量图动画的使用和修改

文章目录一、前言二、一个矢量图文件三、参考链接一、前言矢量可绘制对象可以提供比较复杂的动画效果,只是绘制比较复杂,这里可以让UI使用Adobe After Effects软件制作出相关的矢量图xml文件交由开发使用。只是如果需要重复播放的动画效果时候,导出的矢量图里面没有改内容,所以需要开发自己添加,这里记录下添加的方式。二、一个矢量图文件以下是一个矢量图的内容。主要由两部分效果(位移和缩放)组成,这里需要设置为无限循环播放模式,需要在里面的属性动画里面添加以下代码 <!--翻转--&gt

2023-08-01 15:19:13 1179

原创 Android中绘制的两个天气相关的View

自定义View

2023-07-28 19:41:21 480

原创 在Android中使用新版proguard混淆器的方式

新版proguard的使用方式

2023-07-24 20:14:37 1105

原创 使用Path时候遇到的有些问题

然后和朋友一起研究后发现,onDraw()绘制了两次,在绘制第二次的时候携带了之前的Path信息导致的结果不同,只需要每次绘制之前或之后把Path的信息清空就可以了。后来通过查找ApiDemos发现正确写法是每次调用Path之前调用下Path.reset()就可以了。问题描述:在学习http://www.jianshu.com/p/2c19abde958c这个博客的时候,运行其中一个代码片段,发现结果和帖子上描述的不同(注意我把Path定义成全局变量,因为系统提示的)。

2023-07-10 11:01:33 242

原创 Mac环境下使用Clion编译测试运行Ffmpeg

编译安装ffmpeg。这里面不要自己创建额外的文件,比如c文件或者makefile文件,因为整个项目会一起编译,如果环境不对会出现错误。然后中间会把编译的库文件安装到 /usr/local/下面,需要进行授权,出现权限拒绝时候,执行类似于以下的命令进行授权。首先从官网或者github下载源码。

2023-06-09 15:07:28 1345

原创 FFmpeg中configure的参数配置解释

这些选项允许你根据项目要求进行定制,减少生成的库和二进制文件的大小或限制特定功能的使用。你可以使用这些参数来启用或禁用特定的编码器、解码器、复用器、解复用器、解析器、比特流过滤器、协议、输入设备、输出设备和滤镜等。通过设置这些选项,你可以根据需求定制FFmpeg的构建和功能,只包括你所需的组件和功能。例如,你可以选择是否启用GPL代码、构建静态库还是共享库、构建特定的程序,以及是否构建文档等。通过使用这些参数,可以使FFmpeg链接到相应的外部库,从而启用与这些库相关的组件和功能。

2023-06-05 19:20:07 3110

原创 MAC环境编译Android环境下的FFmpeg6.0版本

该方式会生成相关文件,否则项目不可运行,执行根目录的configure文件,一. 下载FFmpeg源码。

2023-06-05 16:39:06 1771 9

原创 Cmake学习记录(九)--使用Cmake交叉编译Android .so库

目前Android编译.so的话使用Android Studio比较简单,但是有时候时候Android Studio的话还需要创建一个Android的项目,这里记录下脱离Android Studio单纯使用Cmake和C++开发工具Clion(或者其他的开发工具也行,这些开发工具和Android Studio不一样,哪一种工具都行)。实际上编译.so还有比较简单的方式。比如直接在linux环境下面使用cmake编译c++项目即可,这时候出现的就是.so库。

2023-05-30 20:32:22 2431

原创 Intent的使用的注意事项

开发中常用的也就一两个,所以这里进行下开发中遇到的问题。

2023-05-21 17:21:46 109

原创 Class not found when unmarshalling:

问题描述:这个问题主要出在某些版本的手机上面使用了Intent直接传递Parcelable数据,且Parcelable类型是使用默认方式生成的。修改方式有多种,这里使用比较方便的一种,另外一种方式是在使用Intent传递数据时候添加加载器除此之外还可以转换成字节数组传递,该方式出现在中。

2023-04-03 14:45:27 1103

原创 Coil的原理浅析与自定义加载类型

Coil是一种纯粹是一kotlin编写的,利用了协程特性的图片加载库,其代码量较少,算是比较轻量的图片加载库。对于常规类型的图片都有加载方式,不过也有无法预料的情况,比如加载apk文件中的图片,此文章基于此问题进行编写。Coil自身支持的类型有StringHttpUrlUriFileIntDrawableBitmap但是如果想新增类型的话需要拓展MapperFetcher。其中Mapper是对用于区分不同的类型,比如将String类型转换为File或者Uri。

2023-03-31 11:11:20 437

原创 Flutter中开发TV时候焦点错乱问题

Flutter的Tv开发时候的焦点错乱问题

2023-02-10 23:34:24 545

原创 Android漂浮碰壁动画

Android碰壁动画

2022-09-28 15:38:06 698

原创 Android图片转base64加密在其它平台显示

base64加密图片跨端显示的问题

2022-08-26 11:42:13 9279

原创 Android截屏的实现方式

Android截屏

2022-08-21 19:42:58 1783

原创 PendingIntent.getActivity创建两个Activity实例的问题

PendingIntent.getActivity使用时候遇到的问题

2022-08-16 16:18:35 1292

原创 MotionLayout的使用

MotionLayout的简单用法

2022-08-03 11:13:45 699

原创 ContrstrainLayout的动画之ConstraintSet

ConstraintLayout的简单动画效果

2022-08-02 16:07:13 628

原创 将回调函数转为Flow

kotlin中的回调函数与flow的转换

2022-08-02 12:11:34 1063

原创 Kotlin的协程与生命周期

liveData与协程

2022-08-01 19:56:39 1063

原创 kotlin协程与线程池

协程与线程池

2022-07-28 17:09:26 1541

原创 快应用自定义进度条

快应用自定义进度条

2022-07-26 19:20:21 293

原创 快应用JS自定义月相变化效果

月相变化效果

2022-07-26 19:07:58 494

原创 DatabaseUtils: java.lang.IllegalArgumentException: Invalid token LIMIT

DatabaseUtils: java.lang.IllegalArgumentException: Invalid token LIMIT

2022-07-26 16:11:30 955

Crodova在Android上的使用(上传文件下载最低也要两分,没法免费...)

Crodova在Android上的使用,文中还提供了一种不用注释代码也能实现点击事件的方案

2018-03-07

微信登录代码

微信登录代码,仅供参考,不包含密钥,所以不能打包测试,使用人员可以替换相应密钥和包名进行打包测试。

2015-11-05

百分比适配库的jar

里面包含android-support-percent.jar和鸿洋大神的扩展代码eclipse版本以及ColorInt注解的android-support-annotations.jar

2015-10-26

动画移动后获取焦点

点击控件后通过动画使控件移动,在移动后的位置重新获得焦点

2014-06-29

空空如也

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

TA关注的人

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