昨天面试爱奇艺二面的时候,面试官提到了使用静态Handler。而实际中自己在工程中确实没有想到这个方法。所以这里来再次总结下为了防止Handler内存泄漏有哪些手段? 文章目录1. Handler为什么会造成内存泄漏?2. 预防Handler内存泄漏?2.1 使用静态Handler2.2 清空消息队列2.3 使用静态Handler+弱引用WeakReference3. 最终版本 1. Handle            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-15 10:16:59
                            
                                126阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # Android防止Hook技术指南
作为一名经验丰富的开发者,我很高兴能帮助你了解如何实现Android防止Hook。Hook技术在Android开发中是一种常见的技术手段,但有时我们也需要防止应用被Hook,以保护应用的安全。以下是实现Android防止Hook的步骤和代码示例。
## 1. 理解Hook技术
首先,我们需要理解什么是Hook技术。Hook技术是一种动态拦截系统或应用程            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-07-30 08:00:42
                            
                                336阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            由于近几年来移动应用变得火热,呈突发式激增。数据以及软件也面临各种安全挑战。软件保护,数据保护也成为了一个热门话题。今天就专门对Android移动软件中的ELF文件的保护进行简要说明。主要是针对ELF方面的保护进行框架描述。若以后有机会希望能整理成书,为大家提供精神食粮。 很多ELF的保护方案大部分是从windows PE文件的方案中继承下来的。总体上来说就是破坏调试以及增加调试的难度。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-30 08:41:29
                            
                                51阅读
                            
                                                                             
                 
                
                             
         
            
            
            
              上一篇我们讲了apk防止反编译技术中的加壳技术,如果有不明白的可以查看我的上一篇博客。接下来我们将介绍另一种防止apk反编译的技术-运行时修改字节码。这种方法是在工作中在实现app wrapping时,看到国外的一篇关于android 安全的介绍实现的并且独创。下面我们来介绍一下这种方法。                    
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-13 08:52:27
                            
                                94阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # Android 防止被 Hook 的方法指导
在 Android 开发中,安全性常常是一个重要的考量,尤其是在防止应用被 Hook(即意图修改应用行为的技术)。接下来,我将指导你了解如何实现这一目标。我们将通过一个流程和具体的代码实现这一防御机制。
## 流程概述
我们可以把整个防止 Hook 的流程分为几个步骤,如下表所示:
| 流程步骤         | 具体操作            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-10-28 04:38:53
                            
                                517阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一.背景项目中需要一个获取验证码的倒计时,需要应用被杀死,再次进入能继续倒计时。如果使用系统提供的倒计时CountDownTimer,在杀死进程后,就必须重新创建对象,倒计时被清空。因此,需要自己实现倒计时,并且不能使用对象来保存时间数据,必须是持久化的,例如使用SharedPreferences来保存。二.方案思路方案一:使用系统时间保存倒计时完成的时间stopTime,每过一秒,计算一次完成时            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-27 00:32:35
                            
                                348阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1、概述在逆向过程中,Frida是非常常用的Hook工具,这个工具在日常使用的过程中,有很多通用方法又借鉴了部分网友的代码,我在这里整理记录一下,方便以后直接查阅及使用,部分函数使用的时候,可能需要稍微修改一下,本文记录是Android的方法,不涉及其他的,主要是搬迁的一下参考文章的片段:Frida官方文档Android逆向之旅—Hook神器家族的Frida工具使用详解看雪 Frida官方手册 -            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-09 09:56:33
                            
                                250阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、首先我们要找到Hook的点1. 分析我们先大概看下activity的启动流程(图片来自Android 插件化开发指南)image当我们调用startActivity的时候,AMS对我们要启动的Activity进行检查,是否在AndroidManifest中声明过,如果没有就报没有在AndroidManifest的错误。这个时候需要欺骗AMS,我们需要hook,要它去检查一个我们预配置的Acti            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-18 11:25:42
                            
                                0阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # Android内存Hook实现指南
内存Hook在Android开发中可能有着广泛的应用,例如游戏逆向、调试与分析等。然而,对于刚入行的小白来说,实现内存Hook有一定的难度。在这篇文章中,我将为您详细讲解实现Android内存Hook的流程,并给出相关代码示例。
## 流程概述
首先,我们将整个内存Hook的实现流程进行归纳,使用表格的形式展示步骤:
| 步骤编号 | 步骤描述            
                
         
            
            
            
            在Android开发中,经常需要与布局打交道,最近在开发中遇到一个问题,水平方向有多个控件,从左到右依次为ImageView(图标)、TextView(歌曲名)、ImageView(VIP标签)、TextView(作者)、ImageView(播放状态)。并且歌名和歌手字段单行显示,最终的实现效果如下:如果用LinearLayout或者RelativeLayout来布局,那么效果可能是这样: 出现V            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-22 12:19:01
                            
                                318阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            保护app组件保护app组件的途径有两条:1.正确使用AndroidMenifest.xml文件 2.在代码层面上强制进行权限检查AndroidManifest 文件加固AndroidManifest文件中的 android:exported 定义是否允许组件被其它app调用,如果app中的组件不需要被其它app调用,或者需要明确的与android系统其它部分的组件的交互隔离开的话,应该在Andr            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-03 16:06:14
                            
                                162阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            第一步、先爆项目demo照片,代码不多,不要怕 第二步、应该知道Java反射相关知识如果不知道或者忘记的小伙伴请猛搓这里,Android插件化开发基础之Java反射机制研究 第三步、应该知道Java静态代理知识如果不知道或者忘记的小伙伴请猛搓这里,Android插件化开发基础之静态代理模式  第四部、应该知道Java动态代理知识如果不知道或者忘记的小伙伴请猛            
                
         
            
            
            
            Android Charles 证书固定最近在做公司的接口全部换上了https,我们的应用也随之进行了升级,接入https。但是在使用charles进行接口抓包调试的时候就出现了一些问题。我的计划是既要能使我们的app在release和debug下都能进行charles抓包调试定位问题,还要能有效的防止其他人对应用进行抓包获取数据。网络安全性配置网络安全性配置是Android官方推荐的配置方案。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-09 12:58:16
                            
                                119阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            编写目的防内存dump比较笼统,本篇只介绍使用inotify相关实现(以BB为例)。写在前面内存dump介绍关于内存dump相关介绍,请参考如下链接:讨论android加固防内存dump的技术及vmp壳的防护强度: https://bbs.pediy.com/thread-206293.htmandroid应用反调试以及反内存dump代码收集: https://github.com/parkerp            
                
         
            
            
            
              随着Android设备上的隐私安全问题越来越被公众重视,恶意软件对用户隐私,尤其是对电话、短信等私密信息的威胁日益突出,各大主流安全软件均推出了自己的隐私行为监控功能,在root情况下能有效防止恶意软件对用户隐私的窃取,那么这背后的技术原理是什么?我带着疑问开始一步步探索,如果要拦截恶意软件对电话、短信等API的调用,在Java或者Dalvik层面是不好进行的,因为这些层面都没有提供Hook的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-09 22:46:16
                            
                                106阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            避免内存泄漏 背景 Android应用最多可以使用16MB的堆内存 因此,要做到及时地释放应用所占用的内存资源,还要避免内存的泄漏 引起内存泄漏的主要原因: Context索引的长期存在 两种类型的Context: Activity & Application UI组件在构造方法中传入Context参数的原因: Context可用于很多的操作,主要是访问应用的资源 例如:@Override            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-10 20:45:42
                            
                                143阅读
                            
                                                                             
                 
                
                             
         
            
            
            
              随着Android设备上的隐私安全问题越来越被公众重视,恶意软件对用户隐私,尤其是对电话、短信等私密信息的威胁日益突出,各大主流安全软件均推出了自己的隐私行为监控功能,在root情况下能有效防止恶意软件对用户隐私的窃取,那么这背后的技术原理是什么?我带着疑问开始一步步探索,如果要拦截恶意软件对电话、短信等API的调用,在Java或者Dalvik层面是不好进行的,因为这些层面都没有提供Hook的            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-28 00:38:58
                            
                                74阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # Android 如何防止别人 Hook 代码
在Android开发中,代码被“hook”通常意味着恶意代码通过反射或其它技术篡改了应用的行为。这种情况可能导致数据泄露、功能失效或其他安全问题。因此,保护代码不被hook是一项重要的安全措施。本文将介绍几种防止Hook的技术手段,并给出代码示例。
## 什么是 Hook
Hook通常指的是在运行时修改某个方法或类的行为。攻击者通过这种手段,            
                
         
            
            
            
            简介Github: https://github.com/ganyao114/SandHook关于 Hook,一直是比较小众的需求。本人公司有在做 Android Sandbox(类似 VA),算是比较依赖 Hook 的产品,好在 Android Framework 大量使用了代理模式。所以也不用费劲在VM层作文章了,直接用动态代理即可。 然而,VM 层的 Java Hook 还是有些需求的,除了            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-21 07:17:36
                            
                                67阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            前言:其实有看到过一模一样的文章, 不过这些文章特意把github地址去掉了, 之前的版本还是有不少问题的, 建议大家用最新版本, 有什么好的建议也可以在github或文章下方评论, 我这边会尽快完善框架. Android 按钮重复点击处理<一行代码解决>. Android hook插入自定义ClickListener, 完全无入侵.#####介绍 如果之前没看过1.            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-30 02:39:24
                            
                                17阅读