自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 安卓搞机大全收藏

file\_type=magisk&is\_classification\_list=false&classification=systemOptimization | 微信进程清理 [(2023.8.29重制更新)这是一个微信极致省电压后台教程(无法用fcm推送的看过来) 来自 橘神ovo - 酷安](https://www.coolapk.com/feed/55086805?来自 奔腾的小猪 - 酷安](https://www.coolapk.com/feed/46564699?

2025-03-11 21:20:47 363

原创 安卓内存优化参数详情

这些内存页是进程独占的,并且已经被修改过,因此不能被其他进程共享。1. Pss Total (Proportional Set Size): 进程独占的内存 + (共享内存 / 映射次数),进程使用的内存量,按比例分配共享内存。* Heap Size 是进程分配的堆内存总量,其中 Heap Alloc 是已经使用的部分,Heap Free 是尚未使用的部分。2. 关联: SwapPss Dirty 是 PSS 的一部分,但它表示的是已经被交换到磁盘上的内存。1. 这是进程私有的脏页内存量。

2025-03-11 21:11:19 506

原创 APK结构分析

CERT.RSA:保存公钥、加密算法及其私钥加密后的内容。* assets/ 与 res/ 资源目录不同,assets/ 下的资源文件不会在 resources.arsc 中生成查询条目,且 assets/ 下的资源目录可完全自定义,业务代码获取 assets 资源和 res 资源的方式也完全不同。* classes.dex APK 中可能包含一个或多个 classes.dex 文件,应用程序内的 Java/Kotlin 源码最终会以 dalvik 字节码的方式存在于 classes.dex 文件中。

2025-03-11 21:09:33 275

原创 AMS & WMS 基础

ROM:只读存储器,里面有硬件层面写死的引导程序,断电后数据不会丢失。ROM启动后将程序加载到RAM里再运行。RAM:随机存储器,可写入,断点后数据丢失,相当于内存。启动BootLoader。BootLoader:加载操作系统,开始启动内核的第一个进程。

2025-03-11 21:04:05 333

原创 Android执行Shell命令

Android操作系统是基于Linux内核构建的,在Android上也可以使用标准的shell工具,这意味着Android设备也可以执行许多与Linux相同的Shell命令。当一个安卓应用程序执行shell命令时,系统会新启动一个独立的shell进程,该进程会运行指定的shell解释器(通常是 /system/bin/sh)在这个过程中,进程间通信(IPC)是通过标准输入(stdin)、标准输出(stdout)和标准错误(stderr)流进行的。

2025-03-11 21:01:06 1681

原创 [Android]应用前后台切换ProcessLifecycle的坑

最近开发应用有这么一个需求,需要监听app的生命周期,能够感知到用户划到后台,回到前台这些事件。Google以及帮我们实现好了,只需在项目中引入依赖 implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.4.0' implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'然后自定义一个 LifecycleObserver,在这里面实现生命周期事件对应的响应

2022-02-28 21:59:37 4051

原创 [Android]手把手带你写个权限请求工具

前言:这是一个由kotlin编写的权限请求工具,调用只需要一段代码。支持协程式回调和函数式回调。如果你只是白嫖党,请直接划到最底下进入项目地址,添加依赖并开始你的摸鱼划水之旅!背景:传统的权限申请存在许多弊端:1、在Activity中需要引入大量代码,各个模块之间藕断丝连,项目臃肿不堪。2、在Activity接收到权限申请结果回调的时候,还要与调用的地方通信,真的是非常的麻烦。实现原理:Fragment也可以进行权限申请,虽然回调在Ac...

2022-02-17 13:52:30 2375

原创 【Android】炫酷ui 带你做一个背景跟着滚动的工具

在用ViewPager配合Fragment开发的模式中,想做一个类似于桌面壁纸的背景图,可以跟着ViewPager滑动。 先说一下大体思路: 在ViewPager滑动的过程中,监听滑动百分比,再通过这个滑动的百分比来控制背景图的偏移,背景图的偏移通过背景图的尺寸和View容器的尺寸来计算。最后将这个偏移后的图片显示在ImageView或者某个View的Drawable上。(其实SurfaceView的性能会强得多,但是SurfaceView...

2021-10-24 13:42:56 3901 1

原创 PTA:7-5 堆栈模拟队列

设已知有两个堆栈S1和S2,请用这两个堆栈模拟出一个队列Q。所谓用堆栈模拟队列,实际上就是通过调用堆栈的下列操作函数:int IsFull(Stack S):判断堆栈S是否已满,返回1或0; int IsEmpty (Stack S ):判断堆栈S是否为空,返回1或0; void Push(Stack S, ElementType item ):将元素item压入堆栈S; ElementType Pop(Stack S ):删除并返回S的栈顶元素。实现队列的操作,即入队void AddQ(E

2021-06-21 14:47:40 540

原创 PTA:7-3 表达式求值_1

在一个表达式中,只有“(”,“)”,“0-9”,“+”,“-”,“*”,“/”,“^”,请求出表达式的值。(“/”用整数除法)。输入格式:共1 行,为一个算式。 (算式长度<=30 其中所有数据在 0~2^31-1的范围内)。输出格式:共一行,为表达式的值。输入样例:在这里给出一组输入。例如:1+(3+2)*(7^2+6*9)/(2)输出样例:在这里给出相应的输出。例如:258...

2021-06-21 10:34:49 1716

空空如也

空空如也

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

TA关注的人

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