自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android 使用ninja加速编译的方法

因此我们可以使用google提供的一种快速编译方式:ninja,使用ninja编译,基本上十几秒就能快速编完一个模块,但必须注意ninja编译不会重新加载mk文件,故只适用于修改已存在的代码文件的情况,如果涉及到文件的增减、目录的重构就必须用mm/make重新编译之后,才能使用ninja快速编译新的修改。理论上所有的Makefile或者Android.mk中的module_name皆可使用ninja进行快速编译。mm 进到module目录进行编译,目录下要有Android.mk。(或者make -j24)

2025-04-07 11:51:22 360

原创 apex简单介绍

apex简单介绍_apex android-优快云博客

2025-04-04 16:54:38 111

原创 Android 10 开机广播动态注册失败

在 Android 10 及更高版本中,由于安全和隐私的考虑,应用程序的开机广播(BOOT_COMPLETED)会受到限制。这意味着应用程序无法通过开机广播来启动自己的后台服务或执行特定的操作。本文将详细介绍 Android 10 开机广播失败的原因,并提供解决方案和示例代码。

2025-03-27 16:19:04 379

原创 Android 杀进程

android.os.Process.killProcess(android.os.Process.myPid());

2025-03-27 11:10:41 258

原创 Android kill 进程的三种方式

这个方法在一个单独的线程中遍历一个包名列表,并尝试使用`ActivityManager`的`forceStopPackage`方法来停止每个包。1. **权限问题**:除非你的应用具有`KILL_BACKGROUND_PROCESSES`权限(这通常仅授予系统应用),否则`killProcess`方法可能不会起作用。2. **只能结束应用的一部分**:即使这个方法能够成功结束一个进程,它也可能只是该应用的一部分。1. **权限问题**:同样,除非你的应用具有相应的权限,否则这个方法可能不会起作用。

2025-03-27 10:54:51 420

原创 Android 获取屏幕锁定的相关信息:“无”,“滑动”,“PIN码”,“图案“,“密码“

通过LockPatternUtils类的isSecure方法和getKeyguardStoredPasswordQuality方法判断。11-02 14:37:34.748 4896 4896 D LockPatternUtilsHelp: PIN码 安全模式。11-02 14:38:10.931 4896 4896 D LockPatternUtilsHelp: 密码 安全模式。isSecure方法和!三 如何判断当前锁定方式是否为"安全密码"锁屏?二 如何判断当前锁定方式是否为"滑动"?

2025-03-20 13:46:37 286

原创 Android12将普通apk设置为launcher

【代码】Android12将普通apk设置为launcher。

2025-03-20 11:44:33 242

原创 Android Binder权限检查之clearCallingIdentity

UID和PID是IPCThreadState的成员变量, 都是32位的int型数据,通过移位操作,将UID和PID的信息保存到token,其中高32位保存UID,低32位保存PID。该方法一般是system_server进程的子线程调用远程进程时使用,而attachApplicationLocked方法则是在同一个线程中,故需要在调用该方法前清空远程调用者的uid和pid,调用结束后恢复远程调用者的uid和pid。相信到此,大都能明白这两个方法的作用,缺一不可,而且要成对出现。//博主博客也很优秀。

2025-03-19 16:48:50 923

原创 ServiceManager.getService

‌‌ 方法是 Android 系统中用于获取系统服务的一个关键方法。ServiceManager 是一个系统级别的服务管理器,负责注册和管理系统中的各种服务。通过调用方法,可以获取指定名称的服务的 Binder 对象,进而实现跨进程通信。

2025-03-19 16:44:37 331

原创 禁用MasterSwitchPreference

【代码】 禁用MasterSwitchPreference。

2025-03-14 10:53:46 250

原创 Android 13 移除下拉栏中的设置入口

因为当前项目的设置已被加密,客户不希望通过下拉窗口的设置图标进入设置,决定去掉该图标。

2025-03-14 10:51:51 361

原创 Android13默认开启电池百分比数字显示Framework

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.youkuaiyun.com/a315823806/article/details/141928001。通过,0,1 的切换,可以修改默认显示电池数字百分比,或不显示电池数字百分比的效果。修改2个地方,一个是Setting,一个是SystemUI显示。通过查阅Framework代码。终于找到了如何默认显示。查了很多平台,就是没有Android13的。有个小需求,需要实现。

2025-03-14 10:49:11 234

原创 Android 监听setting数据库的变化

【代码】Android 监听setting数据库的变化。

2025-03-14 10:47:16 85

原创 将Android项目发布成远程依赖库

气气

2025-03-03 14:27:46 73

原创 setting添加key后编译报错

使用@hide或者 m api-stubs-docs-non-updatable-update-current-api。

2025-02-28 14:44:48 102

原创 android14修改默认锁屏方式为无

我们还看到disabledByDefault,顾名思义就是默认值了,这个值由com.android.internal.R.bool.config_disableLockscreenByDefault决定,这个值位于frameworks\base\core\res\res\values\config.xml中的config_disableLockscreenByDefault。android14修改默认休眠时间为永不休眠后,依然会很快就会息屏进入休眠。解锁后或者设置系统锁屏方式为无以后,就不会再休眠了。

2025-02-28 14:44:35 619

原创 android 中调用接口发送短信

- deliveryIntent: 发送 -->中国移动 --> 中国移动发送成功 --> 返回对方是否收到这个信息 --> 后续处理 即:这个意图包装了短信是否被对方收到的状态信息(供应商已经发送成功,但是对方没有收到)。-- sentIntent:发送 -->中国移动 --> 中国移动发送失败 --> 返回发送成功或失败信号 --> 后续处理 即,这个意图包装了短信发送状态的信息。-- destinationAddress:目标电话号码。-- scAddress:短信中心号码,测试可以不填。

2025-02-28 14:43:18 937

原创 cannot find symbol config_shutdownBatteryLowTemperature

解决方法: 在frameworks\base\core\res\res\values\symbols.xml增加标记。

2025-02-27 17:55:46 80

原创 MasterSwitchPreference的使用

首先 和 SwitchPreference的区别是:switch和preference 事件分离。

2025-02-19 16:53:11 179

原创 Android日志分类及查看过滤

adb logcat ActivityManager:I *:S //仅输出标记为“ActivityManager”且优先级大于等于“Info”的日志。adb logcat -b event -v time > e://event.log (-v time表示在log中加入每条log发生的时间)adb logcat -b选项是可以复用的,因此我们抓取所有Log的命令就是复用了-b选项。kernel log属于Linux内核的log ,可以通过读取/proc/kmsg或者通过串口来抓取。

2025-02-19 13:47:19 380

原创 Android10不显示权限申请界面

然后找到packages\apps\PermissionController\src\com\android\permissioncontroller\permission\ui\handheld\ReviewPermissionsFragment.java这个文件。这个界面是在packageinstaller模块中的,一般是放在package\apps\目录下;特殊一点的也会放在源码下的platform\packages\apps\目录下。

2025-01-22 17:12:44 141

原创 New setting keys are not allowed; use getters/setters in relevant manager class [NoSettingsProvider]

编译提示报错:frameworks/base/core/java/android/provider/Settings.java:4996: error: New setting keys are not allowed (Field: RINGTONE2);在定义key的地方加上**@SuppressLint(“NoSettingsProvider”)**就可以了。Android 中 在Setting.java中添加 new setting key。按照这个格式添加就可以了。

2025-01-14 14:19:02 173

原创 android 打印调用栈

【代码】android 打印调用栈。

2025-01-09 16:02:53 132

原创 Android禁止卸载apk

【代码】Android禁止卸载apk。

2025-01-07 18:03:21 116

原创 Android修改开机动画路径

路径的定义优先查找的顺序。

2025-01-07 18:01:50 242

原创 Android 拦截power键

【代码】Android 拦截power键。

2025-01-07 18:00:03 431

原创 添加系统级res资源包

在framework/base/core/下新建名为“res_custemer”文件夹,结构如下:编写Android.mk/Android.bp文件endif"LOCAL_AAPT_FLAGS := -x3 " value 的定义需要与 "frameworks\base\libs\androidfw\ResourceTypes.cpp"中 所定义的resource ID 一致//////////],deps: ["soong",],srcs: [],

2025-01-07 16:51:04 484

原创 git 添加gitignore文件

【代码】git 添加gitignore文件。

2025-01-03 15:33:53 125 2

原创 try ‘jack-diagnose‘ or see Jack server log

----------------------------------------分割线-------------------------------------Android 7.1系统使用 jack-server 作为 Java 代码编译器,同一个端口号不能多个用户同时使用,所以不用用户要配置不同的端口号。解决办法是在主目录下执行下面执行,会自动生成 jack-report.*****.zip 日志。解决办法是需要同时下面两个文件中的 port,而且两个文件中的那个的 port 要一致,

2024-12-25 16:52:36 554

原创 Android.bp java_library_static srcs配置

报错:error: frameworks/base/services/core/Android.bp:99:1: module "services.core.unboosted" variant "android_common": module source path "frameworks/base/services/core/server_ext" does not exist。对于模块名称,前面加了:后,会在全局找该模块,并依赖,如果不加冒号,默认在当前路径下查找。

2024-12-23 16:24:05 430

原创 ERROR: ProtoLog viewer config is stale. To update it, run

【代码】ERROR: ProtoLog viewer config is stale. To update it, run。

2024-12-23 16:06:10 180

原创 invalid package ID 0x0a. Must be in the range 0x7f-0xff

o path 指定输出文件路径,若是不设置--dir directory,只是传了单个文件的path(path的需要严格按照这个格式path/resource-type[-config]/file存放,否则编译时会提示“bad resource path”),那么-o 后面的path设置为目录,若是设置--dir,则不必要再传入单个文件的path,同时-o后面的path应设置为文件名,比如:res.zip之类。当然,此时生成的apk文件并不包含dex文件,也没有签名。

2024-12-23 15:47:46 486

原创 framework下如何引入vendor的framework模块

进入framework路径下修改Android.bp添加vendor下framework模块的名称即可。

2024-12-23 11:53:21 138

原创 如何从源码包中查看Android的版本号

【代码】如何从源码包中查看Android的版本号。

2024-12-19 13:41:34 104

原创 Android 判断按键是否为实体键

【代码】Android 判断按键是否为实体键。

2024-12-05 15:55:07 166

原创 Android json和string替换

在Android开发中,处理JSON字符串和将字符串转换为JSON对象是一个常见的任务。

2024-10-18 16:58:52 850

原创 android 菜单不显示auto time zone菜单

打印 日志发现,capability == CAPABILITY_NOT_SUPPORTED。查看哪里设置了CAPABILITY_NOT_SUPPORTED。

2024-10-08 15:51:31 455

原创 Android 计算器输入指定字符串进入指定模式的实现

在这个里面处理对应的逻辑即可。

2024-09-29 11:46:29 170

原创 Android设置WiFi全局代理

【代码】Android设置WiFi全局代理。

2024-09-29 10:36:07 312

原创 Android中使用System的setProperty()和getProperty()方法设置全局代理

1.在某个APP中setProperty的值,在其他APP中getProperty获取不到(大概由于Android中每个APP都是一个独立的Dalvik);System的Property属性很类似Android的sharedpreferences,都可以用来保存参数值。2.在某个APP中setProperty的值,即使退出后也仍然存在,不经卸载直接重装也仍会存在,除非卸。Java运行时环境规范供应商。Java运行时环境规范版本。Java运行时环境规范名称。Java运行时环境供应商。Java运行时环境版本。

2024-09-27 18:03:04 616

添加系统级res资源包

添加系统级res资源包

2025-01-08

ffmpeg源码和编译脚本

ffmpeg源码和编译脚本

2023-10-16

RK平台 Android 12 AB系统升级patch

RK平台 Android 12 AB系统升级patch

2023-10-11

Android WiFi 扫描源码

Android WiFi 扫描源码

2023-10-07

Android AB升级源码

Android AB升级源码

2023-10-07

Android 12修改usb tp触摸唤醒

Android 12修改usb tp触摸唤醒

2023-09-21

RK3588 Android12 添加HDMI和喇叭声音通道切换选项

RK3588 Android12 添加HDMI和喇叭声音通道切换选项

2023-09-21

bsdiff bsdiff bsdiff

bsdiff bsdiff bsdiff

2023-04-14

Android恢复出厂流程

Android恢复出厂流程

2022-09-02

空空如也

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

TA关注的人

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