自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

iblade的博客

明年的某个时候,你会想着要是今天就行动了该多好。

  • 博客(401)
  • 资源 (9)
  • 收藏
  • 关注

原创 常用命令清单

获取签名文件MD5 :keytool -list -v -keystore lagoueducation.jks跳转至路由页adb shell am start -a android.intent.action.VIEW -d "lagou://lagou.com/edit?type=2\&id=1"

2020-08-28 18:17:38 212

原创 RecyclerView嵌套ScrollView卡顿解决

以上方法都是为了避免嵌套在ScrollView中引起的性能问题。最推荐的方法是使用或者将头部和列表合并到一个中。如果仍然遇到问题,可以尝试其他优化技术,例如减少视图层次结构或优化适配器中的数据绑定逻辑。

2024-06-27 14:48:00 387

原创 手机网络卡顿,试试飞行模式

切换飞行模式的效果相当于给手机的网络连接“重启”了一次,能够解决许多由网络连接、IP地址、DNS缓存等问题引起的网页访问问题。如果这种情况频繁发生,建议联系网络运营商进行检查或更换更稳定的网络环境。

2024-06-17 20:31:28 634

原创 Android 上展示 GIF 动图的方法

使用ImageView加载 WebP 格式优点:简单直接,节省存储空间。缺点:需要将 GIF 转换为 WebP,且 WebP 支持有限。使用Glide优点:强大的图片加载和缓存功能,支持复杂的图像处理。缺点:库较大,增加 APK 大小。使用Fresco优点:支持多种图片格式,高效的内存和磁盘缓存管理。缺点:库较大,学习曲线较陡。使用优点:专用于 GIF,功能丰富,内存使用优化较好。缺点:仅限于 GIF,不支持其他格式。使用Movie类优点:不需要额外的第三方库,轻量级。缺点。

2024-06-14 18:58:51 888

原创 ConstraintLayout:layout_constraintWidth_default和layout_constraintHorizontal_bias组合

在 Android 开发中,是一个强大的工具,用于构建灵活且响应迅速的用户界面。在本文中,我们将深入探讨两个关键属性——和,并展示如何使用这些属性来实现一个常见的布局需求。

2024-06-14 18:37:14 378

原创 ConstraintLayout:layout_constraintHorizontal_chainStyle

是ConstraintLayout中的一个属性,用于定义水平链(horizontal chain)中各个视图之间的布局方式。在ConstraintLayout中,链是一组通过双向约束连接在一起的视图的集合,可以是水平的也可以是垂直的。属性决定了如何分配链内视图之间的空间或者如何对齐这些视图。

2024-05-14 16:43:03 710 1

原创 uri.getQueryParameters(name)返回一个列表(List)

综上所述,返回列表是为了更灵活地处理URI中的查询参数,尤其是对于同一个参数名可能对应多个值的情况。这种设计既保证了功能的强大,也使得API的使用更加灵活和方便。开发者需要根据自己的需求,从返回的列表中获取一个或多个值。

2024-05-13 19:45:01 375

原创 ArtifactResolveException: Could not resolve all files for configuration ‘:app:googleArm32DebugRuntim

遇到这个错误,通常意味着Gradle在构建过程中无法解析项目依赖的一些文件。

2024-05-10 15:32:00 462

原创 Android:lib库之间互不依赖,怎么传值?

如果libA与libB需要共享很多数据或逻辑,可以考虑创建一个新的库(比如CommonLib),专门用于存放共享的代码和资源。既然主工程依赖了所有的库,你可以通过主工程来协调libA和libB之间的数据共享。例如,可以在主工程中获取libB的值,并将其以参数的形式传递给libA。通常来说,尽量避免模块间的直接依赖,采用一种松耦合的方式来组织代码,可以使项目更加灵活和可维护。定义一个接口,在libA中声明需要的方法,然后在主工程中实现这个接口,并将libB的数据传递到libA。接口访问到libB的值。

2024-04-30 18:14:53 403 3

原创 Android isNetworkConnected如何判断APP连接到了无网络热点

在考虑网络检测方法时,速度和稳定性是两个重要的考量因素。开发者需要基于应用的具体需求和目标用户所在地的网络环境来选择最适合的方案。对于需要快速反馈且目标用户遍布全球的应用,使用DNS解析可能是最优的选择,尤其是当选择如Google DNS或Cloudflare DNS这样的全球性服务时。然而,在特定地区(例如中国大陆),为了确保最佳的访问速度和稳定性,选择本地DNS服务可能更加合适。对于主要面向特定地区用户的应用,例如中国大陆,采用HTTP HEAD请求并选择本地流行且稳定的网站(如。

2024-04-23 15:16:45 983 1

原创 查看APK签名信息

查看APK文件的签名信息,可以使用Android SDK中提供的一些工具。

2024-04-19 19:50:56 1395

原创 isListEqual方法比较

在未排序的情况下,为了确定一个列表是否包含另一个列表的所有元素(并且反之亦然),你可能需要对列表中的每个元素执行多次查找操作,这在最坏的情况下会带来O(n^2)的时间复杂度。当两个列表被排序后,我们可以保证相同的元素将会出现在相同的位置,这样就可以通过一个简单的顺序比较来确定两个列表是否相等,而不需要对每个元素进行多次查找。因此,在选择使用排序方法之前,请确保考虑到了你的具体需求,包括列表的大小、元素的类型以及是否需要保持元素的原始顺序。如果列表中的元素是唯一的且元素的顺序不重要,则可以考虑使用。

2024-04-19 18:10:22 458

原创 查看apk是64位32位(三种方法)

通过检查APK文件,你可以确定该APK支持的架构类型,包括它是为64位(例如arm64-v8ax86_64)还是32位(例如x86)架构准备的。Android应用程序可以包含多个不同的二进制文件,每个文件针对不同的处理器架构,这些文件通常被称为ABI(Application Binary Interface)。一个APK可以同时包含32位和64位的二进制版本,以便在各种设备上提供最佳性能。

2024-04-19 17:20:28 4314 2

原创 Git删除未跟踪的文件Untracked files

请注意,这个命令会从你的工作目录中永久删除这些文件,因此在执行之前请确保你不再需要这些文件或已经妥善备份。请注意,这个命令会从你的工作目录中永久删除这些文件,因此在执行之前请确保你不再需要这些文件或已经妥善备份。选项执行删除操作之前,请确保你完全了解将要删除哪些文件,以及这些文件是否真的不再需要或已有备份。选项执行删除操作之前,请确保你完全了解将要删除哪些文件,以及这些文件是否真的不再需要或已有备份。在 Git 中,要删除未跟踪的文件(Untracked files),你可以使用。

2024-04-10 17:42:32 1329

原创 Mac命令行查找SDK/JDK安装位置

如果其中任何一个环境变量被设置,并且指向了 Android SDK 的安装路径,那么 Android SDK Platform Tools 的安装位置也会在其中。通常情况下,Android SDK 的默认安装路径是在用户的 home 目录下的。在不同的系统上,Java 可能安装在不同的位置,因此搜索结果可能会有所不同。环境变量被设置,并且指向了 Java 的安装路径,那么 Java 的安装位置就是该路径。Java 的安装通常位于系统的。命令的安装路径,通常情况下,它会在 Android SDK 的。

2024-03-28 11:42:00 882

原创 String.format

只是字符串的一部分,并不属于格式化占位符。所以最终输出的格式可能类似于 “↓downloadSpeed/s - ↑uploadSpeed/s”,其中。请注意,上表只是简单概述了一些常用的通配符,更多的格式化选项和复杂的使用方法可以参考Java的官方文档。每个通配符都可以有一系列可选的格式修饰符,如宽度、精度和对齐方式等,来进一步控制格式化的输出。表示占位符的顺序索引,确保了即使参数顺序变动,也总是按照索引位置替换。方法用于格式化字符串。它使用占位符来替换特定的值。表示占位符是用于字符串类型的值,数字。

2024-03-21 16:32:40 246

原创 Android动态地获取资源的ID

方法在Android开发中用于动态地获取资源的ID。这个方法允许你根据资源的名称、类型和包名来查找对应的资源ID,而不是直接使用硬编码的R类引用(例如。

2024-03-21 14:39:43 709

原创 Android获取UID的新思路

在 Android 设备中,获取唯一UID通常是个让程序员头疼的事情。大家都是各显神通来拼接 随机 存值等等。首先 我们获取UID,很多时候是想,我这里提供一种思路,例如公司做的是一个招聘类app,那么每次app冷启动时,可以获取微信app的安装时间。如何获取呢?

2024-03-20 17:00:34 809 1

原创 Android获取某个app首次安装时间和更新时间

请注意,对于普通应用来说,你不需要任何特殊权限就可以访问这些信息。但是,请确保在尝试调用。类来获取应用程序的安装时间和上次更新时间。) 权限,并且它运行在具有正确权限的环境中。如果微信应用未安装,时,你的代码是在拥有有效上下文的环境中执行,例如在。此代码假定您已经拥有必要的上下文 (在Android中,可以使用。

2024-03-20 16:03:04 707

原创 ANR:QueuedWork.waitToFinish(), SharedPreferences

项目中 ANR 率居高不下,从统计上来看排在前面的有几个都是 SharedPreference(以下简称 SP)引起的。接下来我们抽丝剥茧的来分析其产生原因及如何解决。这段ANR(Application Not Responding)报错信息显示了一个涉及线程同步的问题。ANR发生时,通常是因为应用程序在主线程上执行了一个耗时操作,超过了系统设定的时间限制(如5秒),导致未能响应用户输入或系统事件。: 表明正在运行与实现相关的一段代码。允许Android应用存储和检索键值对数据。

2024-03-20 14:53:17 904

原创 如何从Android手机导出已安装的APP

在这篇博客中,我们将讨论如何将Android设备上已安装的应用程序(以Instagram为例)导出到电脑上。无论您是开发人员需要检查APK文件,还是仅仅想要备份某个应用,以下步骤都能帮助您完成任务。

2024-03-19 18:31:25 2546

原创 ./gradlew assembleRelease

其中,你需要指明签名配置(signing config)和构建类型(build type)。请注意,签名配置中涉及敏感信息,包括密钥库路径、密钥库密码、密钥别名和密钥密码。文件中,而是应该存储在本地并从环境变量或属性文件中读取。例如,你可以创建一个。在 Android 项目中使用 Gradle 进行打包,通常会涉及到配置。取决于你是否只想编译 APK/AAB 文件还是同时希望安装它。请确保你已经有了有效的签名配置,并且密钥库文件可用。),你需要添加签名配置和构建类型。首先,在项目根目录下的。

2024-03-13 22:07:15 743

原创 Long类型比较,IllegalArgumentException: Comparison method violates its general contract

表示你的比较器(Comparator)违反了其一般约定。能表示的最大值(即 Integer.MAX_VALUE 或者说 2^31 - 1),就会发生整型溢出,导致比较结果不准确。相减时可能会得到负数,而这个负数可能并不代表逻辑上的“小于”。方法,它避免了整型溢出的问题,并且正确地实现了比较逻辑。,其次使用安全的比较方法。代码这样的,其中startTime是时间戳。类型,那么就不会有溢出的风险,而且。可能会导致溢出问题。方法中整型溢出的处理上。改进的方法是,首先不要强制将。时,如果时间戳值超过。

2024-03-13 21:53:35 422

原创 android:textDirection=“anyRtl“在说什么?

如果你实现了自定义视图并且在其中直接处理了文本或布局,确保考虑RTL布局方向,并相应地调整绘图逻辑。

2024-03-05 14:55:06 700

原创 Git 分支跟踪There is no tracking information for the current branch.

以上方法可以帮助你了解本地分支和远端分支之间的关联情况。如果一个本地分支正在跟踪一个远端分支,这意味着当你执行如。选项可以显示详细的分支信息,包括每个分支的最后一次提交和它所跟踪的远端分支(如果有的话)。如果你只想查看一个特定分支的远端跟踪分支,可以先切换到那个分支,然后使用。这个命令将列出所有与分支相关的配置,包括本地分支所跟踪的远端分支信息。将会显示当前分支的状态,包括它跟踪的远端分支(如果已设置的话)。等命令时,Git知道应该与哪个远端分支进行交互。要查看本地分支跟踪的远端分支,可以使用。

2024-02-19 19:10:58 623

原创 Android Gradle插件8.0资源ID将不再final,Resource IDs will be non-final by default in Android Gradle Plugin8

并非特定版本8.0将实施这一变化,因为从我搜集到的信息来看,这个变化曾在5.0版本中提及过,但具体会在哪个版本实现尚不确定,因此需要关注官方公告。具体到项目中的影响,开发者需要追踪相关工具和库的更新,以确保他们的应用能够顺利适应新版Android Gradle插件的变更,并且及时更新他们的代码以避免潜在的编译错误。当资源ID不必在编译时被确定为final常量时,构建系统可以避免某些复杂的处理过程,从而加速整体的构建速度和效率。的,构建系统可能有更大的灵活性来处理资源,而不必担心破坏依赖于这些资源的代码。

2024-01-24 17:24:00 1276

原创 Android Studio 提示Use app:drawableStartCompat instead of android:drawableStart

每次提交代码时,AS这个老妈子总爱唠叨一堆warning,这些Warning都在讲什么?

2024-01-24 16:57:21 1505

原创 Android 访问存储卡的三种主要的目录

这些目录对所有应用都是可见的,并且不需要任何特殊权限来读取媒体文件。开发者在选择存储位置时,应该考虑到这些区别,并基于用户的数据隐私以及文件的用途选择正确的存储路径。这些目录是应用专属的,在应用卸载后会自动删除里面的内容。不需要任何权限即可读写这些目录中的文件。这是用于存储临时缓存文件的目录。:适合保存用户希望长期保留并可以与其他应用共享的文件,如照片、音乐等。:适合存储应用的临时缓存数据或不需要与其他应用共享的大型文件。:适合存放应用运行过程中产生的临时缓存文件。权限,并且访问路径可能受到某些限制。

2024-01-23 16:21:17 1431 1

原创 git format-patch怎么用

是一个 Git 命令,它用于创建一系列的补丁(patch)文件,每个文件代表一次提交,并包含了提交中的变化内容。这些补丁文件是以邮件格式存储的,包括提交信息、作者信息、日期等,使得它们可以通过电子邮件发送给他人或应用到另一个仓库。这样,你就可以将这些补丁作为电子邮件附件发送给其他人,或者在其他项目中应用这些更改。命令将会生成三个文件,每个文件对应其中一个提交的内容(假设 A 是紧随。命令应用到他们的仓库中,从而重现相同的变更。例如,如果有三个提交:A、B 和 C,在。之间的每个提交生成一个补丁文件。

2024-01-19 21:02:22 782

原创 git rev-parse v406 ‘v4.0.4‘^{} master什么意思?

是一个 Git 命令,用于解析出 git 对象(如分支、标签、提交等)的完整 SHA-1 哈希值。用于标签(通常是注释标签),意味着你想获取该标签所指向的提交对象(commit object)的哈希值。),命令依然有效,并且只会输出剩下参数对应的 SHA-1 值。的话,命令将不会输出 master 分支的最新提交哈希值,但是会正常输出。是一个轻量级标签,它本身就直接指向提交对象,则这个后缀没有实际影响。标签所指向的对象的 SHA-1 值。,命令会输出前两个参数对应的哈希值。命令中的每个参数都是独立的,

2024-01-19 20:56:14 716

原创 git add -u 什么意思

该命令常用在准备提交更改时,如果你对一些已存在的文件做了修改或者删除了它们,并希望这些更改在下次提交时被包含进去,就可以使用。是 Git 命令的一部分,用于将已跟踪的文件的修改添加到暂存区(也称为索引)。创建一个新的提交,将这些暂存的更改正式记录到版本历史中。的文件,即那些在之前的提交中已经被添加到仓库的文件。将这些操作"暂存"起来。

2024-01-19 20:55:26 969

原创 Git tag使用

tag常被称作里程碑,发版Release时用到。

2024-01-19 20:49:39 557

原创 Android:RTL阿拉伯语适配

如果你创建了自定义视图并在其中处理绘图操作,请确保考虑到RTL布局。使用来检查布局方向,并据此调整你的绘制代码。

2024-01-19 10:46:11 1652

原创 Git 大量log查看:git log --pretty=oneline

git log是 Git 版本控制系统中的一个命令,用于展示一个或多个分支的提交历史记录。当你在git log命令后面添加选项时,它会以单行的形式显示提交历史。这意味着每个提交将会在一行内显示,而不是默认的多行显示格式。具体来说,选项会导致每条日志记录只显示提交的哈希值(SHA-1校验和)和提交信息(commit message)的第一行。这种格式对于快速浏览大量的提交非常有用,因为它提供了一个紧凑的视图。下面是这里,每行的开头是该提交的唯一哈希值,后面跟着的是该提交的信息摘要。请注意,Git。

2024-01-11 21:35:13 921

原创 mkdir -p a/b/c 一次新建多层目录

参数的好处是你不需要担心路径中某些部分是否已经存在,命令会智能处理,只创建那些尚未存在的目录,不会因为目录已存在而产生错误。创建目录时需要确保路径中的所有必需的父目录都存在,如果不存在就会自动创建它们。是一个在Unix和类Unix操作系统中用于创建目录的命令,包括Linux和macOS。命令能够一次性创建多层级的目录结构,而不需要逐个手动创建每个父目录。命令的一个选项,它告诉。

2024-01-11 21:30:31 531

原创 Git分支

□用法2和用法3用于创建分支。用法2基于当前头指针(HEAD)指向的提交创建分支,新分支的分支名为。□用法1用于显示本地分支列表。当前分支在输出中会显示为特别的颜色,并用星号“*”标识出来。在Git 中分支管理使用命令git branch。删除的分支是否已经合并到其他分支中,否则拒绝删除。用法5会强制删除分支。□用法6和用法7用于重命名分支。□用法4和用法5用于删除分支。支,用法6拒绝执行重命名,而用法7会强制执行。,即使该分支没有合并到任何一个分支中。创建新分支,新分支的分支名为。

2024-01-11 20:59:54 698

原创 Git基础操作

Git 是一种分布式版本控制系统,用于管理软件项目的源代码。它是由 Linux 之父 Linus Torvalds 开发的,并已经成为了现代软件开发领域中最流行的版本控制系统之一。使用 Git 可以追踪代码的历史修改记录,方便团队协作、代码共享和代码重构。

2024-01-11 20:45:13 1127

原创 android:clickable=“false“无效,依然能被点击

虽然在代码中设置点击事件监听器会改变视图的可点击状态,但是XML文件中的设定有助于定义和理解视图的默认行为和布局的设计意图。:在复杂的视图层次结构中,可能会有一些子视图默认不接受点击事件,因为点击事件被父视图处理了。:对于不需要处理点击事件的视图,将其设置为不可点击可以避免在触摸事件分发过程中进行不必要的点击检查,从而轻微提升性能。:当你创建一个自定义视图或布局,并且默认情况下它不应该响应点击事件时,你可以在XML中明确地将。在某些情况下响应点击事件,即使已经设置了点击监听器,你可以在代码中动态地设置。

2024-01-11 11:18:14 1452

原创 Git基础指令4.0

命令允许你选择一个或多个在其他分支上的提交,并将它们复制到你当前的工作分支上。这是一种将特定提交从一个分支转移到另一个分支的方法,而不是合并整个分支。的过程中可能会发生冲突,因为当前分支上的文件状态可能与要复制的提交中的改动发生了冲突。如果你想要复制几个非连续的提交,可以将每个提交的哈希值依次列出。能够让你灵活地选择特定的提交进行工作,而无需合并整个分支。如果你想要复制一系列连续的提交,可以指定这些提交的范围。,你想要将这次提交应用到当前所在的。现在会包含一个新的提交,内容与。分支上的三个不连续的提交。

2024-01-10 19:24:32 1079

原创 Git常用命令和QA(网摘)

git init 初始化仓库git clone 仓库地址 拷贝一份远程仓库git status 查看仓库当前的状态,显示有变更的文件。git add . 添加所有修改git add 文件名称,不同文件名用空格分开git commit -m ‘说明’ 提交到本地仓库git reset 回退版本git checkout 版本。git checkout 分支版本无效时,是因为目录不对,用 cd 目录名 进入某个目录后再切换分支git pull 命令用于从远程获取代码并合并本地的版本。

2024-01-10 19:12:46 1151

微信QQ登录分享-AndroidStudio

适用于微信和QQ第三方登录和分享使用,包含两个jar和指导文章链接。自己代码工具类。

2018-09-25

Spring从入门到精通(高清珍藏版)

Spring 从入门到开发,全书详细介绍了Spring开发的各个技术细节,该资源是高清的pdf版本,是学习Spring不可多得教材。

2018-09-19

汉字转换拼音的jar

汉字转换拼音的jar,可用于Android或者java开发中需要汉字转换拼音的场景,pinyin4j-2.5.0.jar,带声调,可更改大小写

2017-09-05

adb的压缩包

旧版adb压缩包

2017-06-24

Android弹窗ToastDemo源码

自定义了土司 显示大小 显示时间 显示位置 透明度 圆角与否 显示内容 等

2016-05-20

Android弹窗PopuWindowDemo源码

Android弹窗PopuWindowDemo源码,直接输入提示内容字符串和显示时间就行了

2016-05-20

Scrollview中嵌套ViewPager和ListView常出现的问题

Scrollview中嵌套ViewPager和ListView常出现的问题: ViewPager如果在Scrollview中使用,并且宽高指定为match_parent或者wrap_content则不会显示内容,但是如果将高度指定为200dp,则ViewPager则会将内容显示到屏幕上 ListView同ViewPager类似,必须指定固定高度之后,才可以显示相应的高度,否则只显示一个Item的内容高度,然后在ListView区域上下滑动时,Scrollview并没有效果,而是实现的是ListView的上下滚动事件。

2016-03-30

Android:ScrollView中嵌套ViewPager和ListView示例

2016-03-30

常用布局颜色

用于常规颜色的配置

2016-03-22

空空如也

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

TA关注的人

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