自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(97)
  • 收藏
  • 关注

原创 Android kotlin创建App实例

在这个情景下,委托就可以帮助我们了。我们直到我们的单例不会是null,但是我们不能使用构造函数去初始化属性。这种情况下有个问题,我们可以在app的任何地方去修改这个值,因为如果我们使用 Delegates.notNull() ,属性必须是var的。尽管,在这个例子中,使用单例可能是最简单的方法,但是我想用代码的形式展示给你怎么去创建一个自定义的委托。但是我们可以使用刚刚创建的委托,这样可以多一点保护。正常情况下,代码如下。

2024-04-23 16:48:08 312

原创 Android 水滴屏、全屏适配

何谓刘海屏?何谓水滴屏?上述两种屏幕都可以统称为刘海屏,不过对于右侧较小的刘海,业界一般称为水滴屏或美人尖。目前国内流行的手机厂商主要有:vivo、oppo、华为、小米。各厂商对刘海屏的适配都大不相同,各自有各自对刘海屏的适配API,具体的适配方法可以阅读相应的官网:小米: https://dev.mi.com/console/doc/detail?pId=1293华为: https://developer.huawei.com/consumer/cn/devservice/doc/50114?

2024-04-18 15:20:05 1119 3

原创 Android 纵向双选日历

这个日历的布局分两部分,一部分是显示星期几的LinearLayout,另外就是一个RecyclerView,负责纵向滚动了。接下来是CalendarActivity。

2024-04-12 16:40:18 388

原创 Android Wifi

创建 WIFI 的系统服务检查 WIFI 状态这个方法用于检查Wi-Fi是否当前已启用。如果Wi-Fi已启用,该方法将返回true;否则返回false。关闭 WIFI此方法用于启用或禁用Wi-Fi。参数enable指定是否启用Wi-Fi。调用此方法需要权限。

2024-04-11 16:31:43 581

原创 Java/Android 汉字转拼音

TinyPinyin。

2024-04-10 15:03:01 490

原创 Android Studio配置中“Gradle sync failed: SSL peer shut down incorrectly”或者“Read timed out”解决办法

出现SSL peer shut down incorrectly或者Read timed out的问题。打开工程目录下的build.gradle文件,不是app下的build.gradle。将Android Studio的gradle的方式改成离线即可。已经运行过的项目或者是将包放到相应的位置后,就可以用离线的方式。:使用阿里镜像或者gradle离线build。添加如下代码即可解决问题。

2024-03-25 15:44:55 312 1

原创 Android Camera2 获取预览数据

Camera2获取到预览数据用于算法处理

2024-03-21 08:37:40 504

原创 Android 摄像头等比例缩放 摄像头画面比例

在拍摄照片的时候我们往往会在后期进行二次构图,在裁剪的时候有不同的相片长宽比供我们选择,不同的长宽比带给观众的感受也不一样。16:9的比例现在可谓是最常用的比例,因为高清技术的普及以及其较之上面的比例具有更大的视野范围。3:2的比例在摄影中比较常见,一般相机默认的比例就是3:2,但目前市面上也有其他比例的相机。在照片的后期创作中,我们还可以尝试一下圆形构图,在发朋友圈的时候往往会有意想不到的效果。这样的比例大家应该很熟悉,在很多显示器、老款的电视机以及视频都采用了4:3的视图比例。

2024-03-13 16:09:58 419

原创 More than one file was found with OS independent path ‘lib/armeabi-v7a/xxx.so‘

出现这个问题,一般是引入的依赖中(同样包含这个so包)出现的冲突。

2024-03-13 08:05:58 437

原创 Error:Execution failed for task ‘:app:ndkBuild‘. A problem occurred starting process ‘command ‘

出现如上问题, 首先,您必须在应用程序的 local.properties 中提供 NDK 路径。

2024-03-12 16:56:17 384

原创 Android Studio 安装Flutter插件但是没法创建项目

如果你在已经安装了Dart、Flutter插件,但是不能创建Flutter项目。原因是因为的版本更新,这个插件没被选中。一旦勾选这个插件之后,就能在界面直接创建Flutter项目。

2024-02-04 10:53:44 1310

原创 Android AudioManager

两个或两个以上的 Android App可同时向同一输出流(比如手机的蓝牙、手机的喇叭)播放音频,系统会将所有音频流(就是音频数据了)混合在一起。这是一项有意思的技术,但却会出现混音。为了避免所有音乐应用同时播放,Android 引入了“音频焦点”的概念。音频焦点机制是Android系统提供的一种道德约定,它倡导的东西有三点:1、 只有一个App持有音频焦点;2 、播放声音前申请音频焦点,不需要播放的时候释放音频焦点;3 、失去音频焦点应该暂停播放或者降低音量。音频焦点。

2024-02-01 14:50:09 1109

原创 Connect to 127.0.0.1:7890 [/127.0.0.1] failed: Connection refused (Connection refused)

项目启动运行很久,然后报了这个错。

2024-01-28 20:48:10 995

原创 An exception occurred applying plugin request [id: “com.android.application“]

找到JDK SETTING,具体是打开File-->Settings-->Build, Execution, Deployment-->Build Tools-->Gradle-->Gradle JDK。出现这个问题的原因是我升级了Android Studio,之前可以run的项目,突然之间不能使用了。

2024-01-28 14:52:43 1123 1

原创 推荐一款第三方的日历框架------CalendarView

Android上一个优雅、高度自定义、性能高效的日历控件,完美支持周视图,支持标记、自定义颜色、农历等,任意控制月视图显示、任意日期拦截条件、自定义周起始等。Canvas绘制,极速性能、占用内存低,支持简单定制即可实现任意自定义布局、自定义UI,支持收缩展开、性能非常高效, 这个控件内存和效率优势相当明显,而且真正做到收缩+展开,适配多种场景,支持同时多种颜色标记日历事务,支持多点触控,你真的想不到日历还可以如此优雅!继承自己的月视图和周视图,只需要依次实现onDrawText。

2024-01-25 08:54:15 1641 2

原创 bat脚本删除文件夹下的重复文件

指定一个目录(不能包含中文),生成两个记录文件,执行删除文件,最后2s后关闭。需求:删除某个文件夹下重复的文件。例如文件名后带(1)(2)等等。

2024-01-20 22:17:05 478

原创 Android 无限循环RecyclerView的完美实现方案

第二步:填充完新的itemView后,就开始进行滑动了,这里直接调用 LayoutManager 的 offsetChildrenHorizontal() 方法滑动-travl 距离,travl 是通过fill方法计算出来的,通常情况下都为 dx,只有当滑动到最后一个itemView,并且循环滚动开关没有打开的时候才为0,也就是不滚动了。这个方案是挺简单,但并不完美。一是对我们的数据和索引做了计算操作,二是如果滑动到边界,再动态调整到中间,会有一个不明显的卡顿操作,使得滑动不是很顺畅。所以,直接看方案二。

2024-01-10 14:07:57 1615 7

原创 java.lang.IllegalArgumentException: Scrapped or attached views may not be recycled.

这个问题是RecyclerView没有正常加载数据,SmartRefreshLayout刷新数据就会出错。尤其在网络环境差的时候,经常崩溃。2.SmartRefreshLayout刷新前先把数据清除,然后适配器需要更新。1.减少RecyclerView的频繁刷新和加载。

2024-01-10 14:06:28 449

原创 Android 应用使用数据统计服务——UsageStatsManager

先了解下相关知识。

2024-01-03 09:29:50 1129

原创 Android NumberPicker使用

NumberPicker是一个滑动的控件,和spinner差不多。数字选择器NumberPicker是Android3.0之后出的一个控件,所以如果要兼容3.0之前的版本就需要用到GitHub上的开源项目,下载地址是https://github.com/SimonVT/android-numberpicker。

2024-01-03 09:23:18 1642

原创 java中JSONArray、List互相转换

JSONArray字符串 转 List。JSONArray对象 转 List。

2023-12-29 16:27:10 528

原创 Android 提取(备份)apk(安装包)

提供安装包提取、分享和应用列表等大部分核心功能,可以解锁应用统计、分析与界面自定义功能。等等,好多应用都支持提取apk。

2023-12-28 16:11:29 1054

原创 Gradle下载地址

Gradle是一个基于JVM的构建工具,是一款通用灵活的构建工具,Gradle也是第一个构建集成工具,与ant、maven、ivy有良好的相容相关性。支持maven, Ivy仓库,支持传递性依赖管理,而不需要远程仓库或者是pom.xml和ivy.xml配置文件,基于Groovy,build脚本使用Groovy编写。Gradle对多工程的构建支持很出色,工程依赖是Gradle的第一功能。

2023-12-25 14:07:43 966

原创 adb shell date 命令修改Android系统时间

4.adb shell date “时间格式” 日期格式为 yyyymmdd.hhmmss 或者是 yyyy-mm-dd hh:mm:ss。5.查看时间是否设置成功。1.关掉自动时间同步。2.关掉自动时区同步。

2023-12-05 16:44:11 2298

原创 adb push报错:remote couldn‘t create file: Is a directory

出现这个问题可能是电脑本地目录中包含中文或者是目录地址中多包含了一个/这两种都是不可以的(我是在as中执行的,路径是项目路径)1. test/测试音频文件1/a.mp3。

2023-12-05 09:09:36 891

原创 解决卸载app的时候出现 Failure [DELETE_FAILED_INTERNAL_ERROR]的问题

1)通过命令:adb shell pm list packages -s 列出的应用包列表中找到要删除的包名,如果是系统应用建议这个命令。如果是非系统应用建议使用 adb shell pm list packages -3。4)删除包:adb shell rm /data/app/xxxxxx/xxxxxx/base.apk 这里的路径有可能会不同,复制上面的就行。2)获取此要卸载的包名的地址:adb shell pm path com.xx.xx。3)挂载系统读写权限:adb remount。

2023-12-05 08:55:09 1678

原创 Compilation failed; see the compiler error output for details.

出现 Compilation failed;see the compiler error output for details. 错误,可能是因为一个比较成熟的项目,要更新某个jar包。出现的部分低版本的写法在高版本jar中不存在的情况。不挨个用jar包的地方看看,你压根不知道哪里改了。在terminal中输入gradlew compileDebugSources,回车就能找到错误。

2023-11-17 10:30:41 620

原创 彻底解决INSTALL_FAILED_UPDATE_INCOMPATIBLE的安装错误

使用as run项目出现如下错误或者adb install应用列表中,该应用显示“如果是这两种问题可以继续往下看,如果不是就可以去找其他的文章了!

2023-11-15 09:16:58 3247 1

原创 adb shell cp 拷贝文件到手机其他目录

请注意,adb shell cp 命令是在通过 ADB(Android 调试桥)连接到 Android 设备时从计算机执行的。adb shell cp 命令用于将文件或目录从 Android 设备文件系统中的一个位置复制到另一个位置。<destination>:指定文件或目录将复制到的目标路径。<source>:指定要复制的文件或目录的路径。adb shell cp <源> <目标>

2023-11-01 09:20:24 2002

转载 Android 获取其它app的Activity名称及action

比如: START u0 {flg=0x10000000 cmp=com.miui.securitycenter/com.miui.permcenter.autostart.AutoStartManagementActivity} from uid 10514。1)电脑连上手机,终端输入:adb shell logcat | grep cmp= ,然后终端就进入了堵塞监听状态。2)操作手机打开APP,终端就会监听显示出当前打开的APP包名和Activity名称。

2023-10-23 15:03:58 452

原创 安卓打开第三方应用失败

比如: START u0 {flg=0x10000000 cmp=com.miui.securitycenter/com.miui.permcenter.autostart.AutoStartManagementActivity} from uid 10514。1)电脑连上手机,终端输入:adb shell logcat | grep cmp= ,然后终端就进入了堵塞监听状态。2.如果没有源码,可以使用adb shell logcat | grep cmp=的方法获取app启动页。

2023-10-23 14:58:07 277

原创 Android AccessibilityService

无障碍服务(AccessibilityService),是Google推出为了帮助残障用户使用 Android 设备和应用而推出的比较特殊的。

2023-10-23 14:43:51 214

原创 adb 获取当前界面元素

打开ui.xml文件,可以使用文本编辑器或者UI自动化测试工具,如Appium、UI Automator Viewer等,来查看当前应用的元素信息。通过以上步骤,可以使用adb命令获取当前应用的元素信息。第一条命令将当前应用的元素信息保存到/sdcard/ui.xml文件中,第二条命令将该文件从设备中拉取到本地电脑。使用adb命令获取当前应用的元素需要先连接到手机或模拟器上,并确保已经安装了Android SDK。adb配置正确,直接看6,pull的位置是你执行pull的目录下。

2023-10-19 15:52:47 1899

原创 Android AccessibilityService dispatchGesture

在上面的示例中,我们创建了一个名为MyAccessibilityService的AccessibilityService,并在performGesture方法中使用dispatchGesture方法发送手势事件。我们首先创建一个GestureDescription.Builder对象,并使用addStroke方法设置手势的路径和开始时间。然后,我们创建一个GestureDescription对象,并使用dispatchGesture方法发送手势事件。

2023-10-19 15:21:03 581 2

原创 Android Studio运行kotlin项目,一直Read timed out

下载别人的Kotlin项目,导入as后,运行app一直失败,提示Read timed out,有2种解决办法。

2023-10-15 21:54:35 1352

原创 Android 模拟点击

这两个方法返回的坐标值可能不同的原因是,View的坐标是相对于其父容器的坐标系的,而父容器在屏幕上的位置是可能发生变化的。而getLocationOnScreen()方法返回的是View相对于屏幕的坐标,不受父容器位置变化的影响。如果需要获取View相对于父容器的坐标,可以使用getX()和getY()方法。对于获取View的坐标,getY()方法返回的是View相对于父容器(即包含该View的布局容器)的y坐标。在上述示例中,使用的方法和步骤与获取相对于屏幕的坐标相同,只是获取的是相对于父容器的坐标。

2023-10-08 14:57:06 1546

原创 msys2 ffmpeg库编译安装(Windows篇)

ffmpeg是一套跨平台的,用于音视频录制、转换、流化等操作的完善的解决方案,它是业界最负盛名的开源音视频框架之一。许多软件都是基于ffmpeg开发的,如格式工厂、各种xx影音等。ffmpeg 是一套开源库以及命令行工具的集合,用户既可以使用命令行直接对音视频进行操作(CLI),也可以调用其开源库进行个性化的功能开发(SDK)。如果要在自己的程序中使用 ffmpeg ,那么使用它的 SDK 是最好的选择。

2023-09-24 09:59:59 633

原创 Ubuntu编辑.bashrc

在主目录下找到这个文件手动打开进行编辑,如果隐藏了,使用ctrl+h让他显示出来。如果您选择放弃修改,则不必执行任何操作。编辑器将关闭并退出,您的文件将保持原样。键来确认保存的文件名。键来确认更改(保存修改),或按下。键来放弃更改(不保存修改)。如果您选择保存修改,请按下。键,这将显示一个提示。提示后,您可以选择按下。,所以您可以直接按下。

2023-09-21 07:36:31 2989

原创 sudo gedit ~/.bashrc 出现Authorization required, but no authorization protocol specified 错误

命令时,出现"Authorization required, but no authorization protocol specified"错误通常是由于缺少授权协议导致的。请注意,如果您选择使用命令行编辑器来修改文件,请确保具备足够的知识和经验来进行编辑,以避免意外修改。建议在编辑文件之前备份它,以便在需要时恢复原始版本。这将以普通用户身份打开文件,您应该能够编辑它。

2023-09-21 07:18:22 2763 5

原创 Android编译snowboy

在使用Git前,我们需要先对Git进行一些基本的配置。/home/zxd/snowboy/swig/Android/android-ndk-r14b 修改成自己的ndk路径。现在 swig 已经支持 apt install 命令安装了,如果不想通过下面源码安装的可以直接执行下面命令安装。下载下来的文件是.pdml文件,这个是个人版本,不是.umdl通用版本,只适用于个人。安装过程中需要输入管理员密码,安装完成后,终端会输出Git的版本号等信息。安装swig,直接安装4.0版本,安装好之后也不需要配置环境。

2023-09-20 16:15:21 683 11

snowboy for Android

snowboy 安卓资源

2023-10-10

空空如也

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

TA关注的人

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