自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Android技术之家

主要分享移动互联网的相关产品和资讯,关注你将学习到更多,在互联网的当下你会赚更多的钱。

  • 博客(938)
  • 收藏
  • 关注

转载 零反射,零HooK,全动态化,插件化框架,全网唯一结合启动优化的插件化架构(三)...

上一篇公众号:Android技术之家零反射,零HooK,全动态化,插件化框架,全网唯一结合启动优化的插件化架构(二)作者:Wgllss链接:https://juejin.cn/post/7368397264026370083WXDynamicPlugin的 WX-Plugin 工程介绍AS设置里面先JDK选11,配置ANT 编译环境打开工程下 local.properties以下为我本地电脑配置...

2024-07-20 08:00:25 7

转载 零反射,零HooK,全动态化,插件化框架,全网唯一结合启动优化的插件化架构(四)...

上一篇公众号:Android技术之家零反射,零HooK,全动态化,插件化框架,全网唯一结合启动优化的插件化架构(二)作者:Wgllss链接:https://juejin.cn/post/7368397264026370083WXDynamicPlugin 全动态化框架 接入详细指南特别注意:前期没完全明白前,先按照下面的工程目录设计方式接入,等自己接入成功后,完整接入后再考虑,建议优化都可以,或...

2024-07-20 08:00:25 7

转载 零反射,零HooK,全动态化,插件化框架,全网唯一结合启动优化的插件化架构(二)...

WXDynamicPlugin上一篇公众号:Android技术之家零反射,零HooK,全动态化,插件化框架,全网唯一结合启动优化的插件化架构(一)介绍* WXDynamicPlugin是由本人自住研发的Android插件框架零反射,零HooK,全动态化,插件化框架,全网唯一结合启动优化的插件化架构示例Sample截图 与市��上其他插件框架相比,WXDynamicPlugin主...

2024-07-18 07:58:02 10

转载 零反射,零HooK,全动态化,插件化框架,全网唯一结合启动优化的插件化架构(一)...

插件化发展史对于Android 插件化思路,也已经研究了好多年了,市面上也出现了好多插件化框架,比较著名的如下:作者:Wgllss链接:https://juejin.cn/post/7347994218235363382AndroidDynamicLoader:给予 Fragment 实现了插件化框架,可以动态加载插件中的 Fragment 实现页面的切换;dynamic-load-apk:最...

2024-07-17 07:47:13 10

转载 华为鸿蒙手写ECharts

ECharts作为前端强大的图表、K线、地图等封装库可以说无比风骚。但用户和产品的需求永远是一个库满足不了的,除非产品和设计的基础是在图表库基础上进行。我们前端移动端作为产品的排面就应该让其独具特色,别具一格。所以自定义从产品设计、技术岗位、亿万用户不同需求...出发,"自定义极其重要"。一、自定义今天看了看ArkTs对绘制API的封装,可谓是和JS一模一样。大家根据官方API粗...

2024-07-15 08:02:51 13

转载 异常监控之安卓异常监控设计思路

前言 监控与优化在我们的总是在我们开发中占据着重要的地位,当我们的项目达到了一定的规模,如何去做异常监控就是一个迟早的需求。我们会在这篇文章与大家一起探讨一下安卓常用的异常监控思路。异常捕获 市面上常见的异常捕获sdk是使用腾讯的Bugly,确实是一个好用的工具,但是有些时候我们还会有很多自己的业务需求,需要做到对除了crash以外的针对业务的个性化日志存储、上报、个性化监控、crash统计等功能...

2024-07-11 07:59:22 26

转载 ArkUI进阶-状态管理

状态管理最佳实践概述在声明式UI编程范式中,UI是应用程序状态的函数,应用程序状态的修改会更新相应的UI界面。ArkUI采用了MVVM模式,其中ViewModel将数据与视图绑定在一起,更新数据的时候直接更新视图。如下图所示:图1ArkUI的MVVM模式ArkUI提供了一系列装饰器实现ViewModel的能力,如@Prop、@Link、@Provide、LocalStorage等。当自定义组件内...

2024-07-08 07:58:22 39

转载 【HarmonyOS NEXT】获取卸载APP后不变的设备ID

1. 背景在HarmonyOS NEXT中,想要获取设备ID,有3种方式UDID: deviceinfo.udid ,仅限系统应用使用https://docs.openharmony.cn/pages/v4.1/zh-cn/application-dev/reference/apis-basic-services-kit/js-apis-device-info.mdAAID: aaid.getAA...

2024-07-04 08:21:54 58

转载 2024年Android项目开发模板开源与相关介绍

前言如果项目拆分的过于细致,层级太多导致同事看不懂代码了???? 这 ... 快救救孩子吧。其实我们优化项目架构的真实目的是为了细致化的逻辑分层,还需要顾及到多个员工协作的开发效率,还要兼顾应用产品的多变性,不是炫技,不是为了分层而分层,最终目的还是单一职责,高内聚低耦合的思想。本 Demo 基于 gradle 8.0+ 实现,compileSdk 为 34,targetSdk 为 33 ,使用 gra...

2024-07-01 08:25:08 19

转载 【HarmonyOS NEXT】手把手教你自定义装饰器实现Android中的Lifecycle组件

1. 背景在鸿蒙实际开发中,为了防止内存泄露我们有以下写法。需要手动在aboutToDisappear 中反注册,或者执行一段逻辑。此时我们会有点怀念Android JetPack中的Lifecycle 组件。1.1 事件订阅-页面关闭取消监听键盘高度变化import { Utils } from '@android/utilcode'@Componentstruct Test { pri...

2024-06-29 11:08:48 31

转载 这次要把你搞明白之 “Android字节码插桩”

作者:_Sem链接:https://juejin.cn/post/7368693416832253987问题一、什么是插桩?用通俗的话来讲,插桩就是将一段代码通过某种策略插入到另一段代码,或替换另一段代码,即在Java字节码中去插入或者修改某些代码。(这是一个统计方法耗时的案例)由此可以发挥想象:字节码插桩的好处:1、我们开发人员在大面积改动的特定位置的代码的时候不用手动去一个个改动2、添加或者...

2024-06-26 08:12:07 25

原创 HarmonyOS NEXT 开发者大会

在 6 月 21 日至 23 日的这场盛会中,亮点纷呈,可归纳为三大板块。首先,大会设置了多样化的论坛与活动,包括技术分论坛、鸿蒙公开课、Codelabs、Tech hour、极客马拉松等,华为将分享鸿蒙生态的最新发展、技术革新的方向,以及为合作伙伴和开发者提供的强大支持,并展示鸿蒙系统在各行业的落地成果。其次,在 HDC 互动展区,HarmonyOS NEXT 首次公开展示,带来六大原生体验,包...

2024-06-23 09:55:15 605

转载 升级Android项目,就用Hilt!全面解锁依赖注入的高效之道

随着Jetpack Compose正式发布,越来越多的Android开发者开始尝试在项目中使用这个现代化的UI工具箱。与传统的View System相比,Compose提供了声明式UI、无需过度操作View的API等优势。但在实际项目开发中,我们也需要处理依赖注入、异步编程等基础架构的需求。本文将介绍如何在Compose项目中使用Hilt进行依赖注入。什么是Hilt?Hilt是Google官方推出...

2024-06-17 07:56:18 79

转载 hook 微信信息撤回功能

b站刷到一位老师分享了hook pc端微信信息撤回功能的视频,跟着动手操作了一遍之后,尝试了一下hook Android端的微信,下面分享一下学习过程。视频链接:https://www.bilibili.com/video/BV1di421U7qD/?spm_id_from=333.1007.top_right_bar_window_default_collection.content.click...

2024-06-13 08:07:30 45

转载 解读Compose的项目中的知识点

本篇文章转自麦客奥德彪的博客,文章主要分享了他如何阅读Compose项目中的知识点,相信会对大家有所帮助!原文地址:https://juejin.cn/post/7377439806135795764/ 前言 /我是一个非常喜欢学习的人,在这行业中摸爬滚打这么多年,靠的就是技术栈从未落后过。然而,不幸的是,公司不允许使用kotlin, 更别提compose了。这就尴尬了,如果是我刚毕业那会...

2024-06-13 08:07:30 25

转载 如何构建Android应用动态图标?

揭开 Android 中动态应用图标的秘密, 通过本分步指南彻底改变应用的用户体验!简介你是否曾瞥一眼手机屏幕, 发现某个应用的图标看起来焕然一新, 与众不同? 这不仅仅是视觉上的炫耀, 而是动态应用图标的魔力在发挥作用. 这项迷人的功能允许 Android 应用动态更改图标, 而无需从 Play Store 进行更新! 这是一种微妙而强大的策略, 可以吸引用户并为你的应用增添活力. 虽然这看似高...

2024-06-03 07:59:38 32

转载 深入研究Android内存优化(上)- 至少解决 APP 中 90 % 的内存异常问题

前言:每个意念都是一场祈祷。内存优化大纲一、概述内存作为计算机程序运行最重要的资源之一,需要运行过程中做到合理的资源分配与回收,不合理的内存占用轻则使得用户应用程序运行卡顿、ANR、黑屏,重则导致用户应用程序发生 OOM(out of memory)崩溃。如果需要在各种设备资源上保持流畅性和稳定性,内存优化是性能优化中最重要的一环。内存问题普遍是大问题,每一行代码都涉及到内存申请以及回收等过程,但...

2024-05-21 07:51:40 56

转载 我又发现了Android13的一个bug

问题回顾之前处理了一个SDCard格式化的问题,最后定位到是底层的原因,让底层同事排查去了,底层同事排查完,没发现什么问题,最近这个问题又转到我的手里了,于是我又深入看了一下流程梳理之前已经梳理过了SDCard格式化的代码流程,这里只贴一个简单的流程图在Settings -> Storage页面点击SDCard格式化,最终请求vold完成格式化。格式化完毕后,再直接访问UnixFileSys...

2024-05-20 07:50:27 43

转载 Android 车载应用开发指南 - CAN Bus 协议详解

一 概述1.1 背景汽车工业蓬勃发展,汽车的电子控制单元逐渐增多。各电控单元之间的信号交换导致汽车线束的级数增加,复杂粗大的线束与汽车有限的布线空间之间矛盾越来越突出,繁多的线束导致电气系统可靠性下降,同时增加了重量。CAN Bus 将汽车内部各电控单元之间连接成一个局域网络,实现了信息的共享,大大减少了汽车的线束,如下图所示:CAN Bus 可以满足子系统数据传输的需求,可以实现汽车内互联系统由...

2024-05-20 07:50:27 230

转载 大厂Android端可视化埋点的实现

客户端埋点是数据收集的最基本手段,对于一款APP来说,代码埋点(就是在业务代码中,在需要埋点的view的点击事件回调处做点击上报的处理,当此view被点击时,进行相应事件的上报)是最为常见的埋点方式,但由于业务迭代速度很快,手动埋点方案虽然灵活多变,但是极大的增加了客户端开发人员的工作量。开发完成业务功能需要花费很大的精力处理埋点事宜,而且随着迭代版本,新的需求增加,埋点的数量会越来...

2024-05-16 08:00:56 91

转载 记一个 Android 14 适配引发的Android 存储权限问题

出处:https://www.cnblogs.com/joy99/p/17809113.html一、bug 背景项目中有下面这样一段代码,在 Android T 版本运行正常,现在适配到 Android U 上之后,运行时 crash 了。。。。...values.put(MediaStore.Images.Media.DATA, file.absolutePath)values.put(Me...

2024-05-08 08:49:08 1045

转载 [安全] 聊聊App中的加解密

作者:snwrking链接:https://juejin.cn/post/7360961068166332457I. 前言之所以写这文章, 主要是有两个原因1). 移动平台上的安全技术一直在变化. 这种变化就让一些网上的资料变得不再有用, 但少接触这块的人就不知道哪些没用, 为何没用, 以及要用什么新方法. 以Android为例, 先是Android 4.0 引入了KeyChain, Andro...

2024-04-29 08:30:04 81

转载 Android TextView的颜色和字体自适应

前言最近比较忙,没有时间去梳理一些硬核的东西,今天就来分享一些简单有意思的技巧。拿TextView来说,平时我们都会在特定的场景去设置它的字体颜色和字体大小。那么有没有一种办法能够一劳永逸不用每次都去设置,能让TextView自己去根据自身的控件属性去自适应颜色和大小呢?当然是有的,这里可以简单的分享一些思路。1. 字体大小自适应TextView可以根据让字体的大小随着宽高进行自适应。设置大小自适...

2024-04-28 08:18:14 158

转载 双进程交互实现App自动重启

背景你可能会好奇,有些手游(比如王者荣耀)是怎么实现资源更新后自动重启的?这个体验确实不错,因为不需要用户手动点击桌面图标重启App,在一些数据恢复备份的场景中,很实用。比如,从云端拉取SQLite数据库db文件或一些prefs配置文件后,会直接覆盖到本地,但进程不重新启动的话,是不会生效的。思路基本思路其实很简单,利用Android应用对多进程的天然支持,来实现双进程互拉。有的朋友一看见“双进程...

2024-04-25 07:57:01 37

转载 Android 15 可能最终修复了底部黑色导航栏问题

长期以来, Android 系统一直存在一个问题: 手势栏/药丸/三键导航下面有一个可笑的黑条. 我曾找过相关的截图, 但要么截图太旧, 要么截图不清晰. 因为我一直在使用各种方法来隐藏它.这就是手势栏, 它并不那么碍事. Android 系统也有三键导航功能, 如果你打开它, 黑条就会变得非常大.这是因为在早期的 Android 系统中, 屏幕上的导航按钮是用来取代实体按键的. 但老实说, ...

2024-04-25 07:57:01 156

转载 在 Android 设备上运行自己的 AI 聊天机器人

你是否厌倦了每次与 AI 助手互动时都不得不将个人数据交给大型客机公司?好消息是,你可能在你的Android 智能手机或平板电脑上直接运行强大的语言模型,这一切都始于llama.cpp。在这个教程中,我将指导你如何在 Android 设备上设置llama.cpp,让您能够亲身体验本地 AI 处理的自由和可定制性。不再依赖于远程服务器,也不必担心您的数据会被泄露。是时候重新掌控局面,释放现在机器学习...

2024-04-15 07:55:16 492 1

转载 Android 车载应用开发指南 - CarService 详解

一 概述CarService 是车载 Android 操作系统 Android Automotive OS(下文简介 AAOS)的核心服务之一,所有车载相关的应用都需要通过 CarService 来查询、控制整车的状态,不仅仅是车辆控制,实际上 CarService 几乎就是整个车载 Framework 最核心的组件。二 CarService 架构2.1 简介AAOS 并没有大刀阔斧的改变 And...

2024-04-11 08:01:38 732

转载 Android如果被放弃,我们何去何从?

由于鸿蒙的爆火,为了赶上时代先锋。到目前为止也研究过很长一段时间。作为一名Android的研发人员,免不了对其评头论足,指导文档如何写才算专业?页面如何绘制?页面如何跳转?有没有四大组件等等。而HarmonyOS我们只要去熟悉它的所有API特性,然后再去适配我们的业务。但最近在HarmonyOS社区发现,对于学习这个NEXT新版本,好多初学者都很难快速进入沉浸式学习当中,特此在这里分享一些自己的学...

2024-04-08 08:01:05 66

转载 Android Root环境下动态注入Java和Native代码的实践

背景在Android逆向开发中,我们通常会使用Frida工具在命令行中动态注入JavaScript代码到目标应用,编写JavaScript对Android新手来说可能会有些困难,假如能用Java代码Hook Java层方法,c/c++代码Hook native层函数指令,用起来可能会更顺手。 在Android正向开发中,我们往往需要在Release包上进行性能诊断或复杂问题的分析,然而,这并不是一...

2024-04-03 08:28:33 131

转载 Android 系统开发 - 进程管理之内存的回收

前言内存是系统中非常宝贵的资源,即便如今的移动设备上,内存已经达到4G甚至6G的级别,但对于内存的回收也依然重要,因为在Android系统上,同时运行的进程有可能会有几十甚至上百个之多。如何将系统内存合理的分配给每个进程,以及如何进行内存回收,便是操作系统需要处理的问题之一。本文会讲解Android系统中内存回收相关的知识。对于内存回收,主要可以分为两个层次:进程内的内存回收:通过释放进程中的资源...

2024-04-01 08:25:48 176

转载 Android 双屏异显自适应Dialog

一、前言Android 多屏互联的时代,必然会出现多屏连接的问题,通常意义上的多屏连接包括HDMI/USB、WifiDisplay,除此之外Android 还有OverlayDisplay和VirtualDisplay,其中VirtualDisplay相比不少人录屏的时候都会用到,在Android中他们都是Display,除了物理屏幕,你在OverlayDisplay和VirtualDisplay...

2024-03-29 08:26:06 290

转载 Android分屏功能原理(基于Android12L)

Android分屏功能原理(基于Android12L)分屏功能目的是为了提高用户的生产效率,提高多应用使用的便捷性;Android 很早版本就已经提供了分屏功能,不过随着版本的迭代,特别是Google开始关注Android大屏设备的用户使用体验,内部的实现逻辑也和以前有很大的差别值得注意的是原生Android分屏功能只允许在任务管理器中选择分屏应用,如果应用未打开过,就无法分屏Android13上...

2024-03-28 08:23:27 1356

转载 某APPsign签名参数分析

分析该APP的包请求,在Fiddler中发现一个请求包:想把其中的签名弄清楚,然后用python去模拟协议。原始返回的数据是protobuf的格式,通过修改请求头Accept,可以让服务器返回json的数据格式。具体操作步骤为:直接将请求头中的Accept: application/x2-protostuff; charset=UTF-8,更改为:Accept: application/json;...

2024-03-25 07:58:58 90

转载 Android配置抓包证书的原理

作者:Onlyxiu 链接:https://bbs.kanxue.com/thread-280944.htm?style=1一、数字证书的常见格式数字证书有多种格式,其中一些常见的格式包括:X.509证书:X.509是最常见的数字证书标准,它定义了公钥证书的格式和相关的验证流程。X.509证书通常使用DER编码或PEM编码。DER (Distinguished Encoding Rules):D...

2024-03-21 07:55:12 115

转载 常见的Hook技术方案总结

本文为看雪论坛精华文章看雪论坛作者ID:随风而行aa一前言最近一段时间在研究Android加壳和脱壳技术,其中涉及到了一些hook技术,于是将自己学习的一些hook技术进行了一下梳理,以便后面回顾和大家学习。本文第二节主要讲述编译原理,了解编译原理可以帮助进一步理解hook技术。本文第三节主要讲述NDK开发的一些基础知识。本文第四节主要讲述各类hook技术的实现原理。本文第五节主要讲述各hook技...

2024-03-20 08:17:01 84

转载 HarmonyOS开发:超详细介绍如何开源静态共享包,实现远程依赖

前言当我们开发了一个独立的功能,想让他人进行使用,一般的方式就是开源出去,有源码的方式,也有文件包的形式,当然了也有远程依赖的方式,比如在Android中,我们可以提供源码,也可以打包成一个aar,当然了也可以maven仓库形式的远程依赖。无论是内部多项目形式的开发,还是开源供他人使用,无疑远程依赖的方式是最方便的,有了更改,只需变动版本号就可以了,当然了,如果是内部,仅仅是单一项目使用,大可不必...

2024-03-17 09:07:43 142

转载 深坑,谨慎用动态代理对象作为监听器

大家好,三月已到,正是退税、赏桃花、看掘金的好日子,这次给大家分享下使用动态代理对象作为监听器注入中埋藏的隐患,发生在一个业务场景中,且听我一一道来。前情回顾假设当前有一个需求,我们需要动态监听一个人一天内执行的一些动作,作为上层应用,咱们肯定是不care具体怎么实现人动作的监测,只需要找个能干活的三方的SDK,该SDK暴漏监听的方法给上层应用,上层应用只用注册个监听器给SDK就行,当人动作发生的...

2024-03-14 08:44:33 49

转载 Android adb 使用手册,机顶盒开发必看

Android 调试桥 (adb) 是一种功能多样的命令行工具,可让您与设备进行通信。adb命令可用于执行各种设备操作,例如安装和调试应用。adb提供对 Unix shell(可用来在设备上运行各种命令)的访问权限。它是一种客户端-服务器程序,包括以下三个组件:客户端:用于发送命令。客户端在开发机器上运行。您可以通过发出adb命令从命令行终端调用客户端。守护程序 (adbd) :用于在设备...

2024-03-11 08:01:32 143

转载 手机上开发Android车机应用一 预制系统apk

背景书接上回,在我的Pixel上刷上车机系统后,准备开发一个系统预制的ROOT权限的应用。# 榨干Pixel5最后的价值:编译刷写Android12L车机系统https://juejin.cn/post/7316695933739089920暂时设计了如下几个功能,目前每天下班回家开发一点,已经写了两个页面:设备信息APP信息调试功能信号模拟文件浏览网络交互想要设计的功能全部开发完毕,需要提升至...

2024-03-08 08:10:23 211

转载 Android系统启动流程

前言作为一个 Android 应用开发者,是否想过当你按下 Android 电源键打开设备,从硬件到软件会发生什么?是否会有以下疑问:当设备开机动画出现时,屏幕后面到底发生了什么?手机或者汽车等设备究竟如何加载、引导并启动 Android 操作系统?接下来的文章将会通过图文结合的方式来探索 Android 操作系统的启动流程。Android 启动流程每次 Android 设备开机时都会经过一次完整...

2024-03-03 14:39:45 106

空空如也

空空如也

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

TA关注的人

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