hook的定义 hook,钩子。勾住系统的程序逻辑。 在某段SDK源码逻辑执行的过程中,通过代码手段拦截执行该逻辑,加入自己的代码逻辑。 实用价值 hook是中级开发通往高级开发的必经之路。 如果把谷歌比喻成 安卓的造物主,那么安卓SDK源码里面就包含了万事万物的本源。 中级开发者,只在利用万事万
热修复方案按照是否必须重启分为两类:重启生效 / 即时生效。按照实现方式可以分为3类:Java层的实现 / Native层的实现 / Java Native混合实现 阿里AndFix 方案(已弃用) AndFix 是 无需重启 的 Native层 的实现。但是,AndFix目前已经3年多没维护更新
AOP介绍 OOP(Object Oriented Programming ,面向对象编程),把功能封装在一个类中,使用的时候创建该类的对象,调用对象的方法或者使用其属性即可,OOP具有可重用性、灵活性和扩展性。 尽管OOP具有很多好处,但是如果在软件开发领域只使用OOP,在某些情况下也会使程序变
背景描述 当我们在使用第三方库,或者自己封装库,如果需要需要用到Context时,一般做法就是将初始化方法暴露给调用方,让调用方在初始化类库时,传入Context。 publi class App extends Application { /** * 是否是Debug环境
什么是 Activity 劫持 Android 为了提高用户的用户体验,对于不同的应用程序之间的切换,基本上是无缝。举一个例子,用户打开安卓手机上的某一应用例如支付宝,进入到登陆页面,这时恶意软件检测到用户的这一动作,立即弹出一个与支付宝界面相同的 Activity,覆盖掉了合法的 Activity
源码安全检测工具:Fortify Fortify Source Code Analysis Suite是目前在全球使用最为广泛的软件源代码安全扫描,分析和软件安全风险管理软件。 注意事项 APP回退后台提示,建议在APP退出后台时给用户风险提示,以防用户敏感信息被盗 Activity防止劫持 H
在Android编译过程中,往字节码里插入自定义的字节码,称为字节码插桩或函数插桩。 函数插桩可以帮助我们实现很多手术刀式的代码设计,如无埋点统计上报、轻量级AOP等。应用到在Android中,可以用来做用行为统计、方法耗时统计等功能。 字节码实战 需求分析 需求:在Android应用中,记录每个
(1)在Android Studio中安装ASM Bytecode Outline插件 (2)安装后,在Android Studio中,选中代码行,点击右键,选择Show Bytecode outLine (3)在ASM标签中选择ASMified,即可在右侧看到当前类对应的ASM代码(可以忽略Lab
Transform API是在1.5.0-beta1版开始使用,利用Transform API,第三方的插件可以在.class文件转为dex文件之前,对一些.class文件进行处理。Transform API简化了这个处理过程,而且使用起来很灵活。 使用Transform API 使用Transf
创建Gradle Module Android Studio中是没有新建类似Gradle Plugin这样的选项的,那我们如何在Android Studio中编写Gradle插件,并打包出来呢? (1) 首先,新建一个Android Project (2) 然后再新建一个Module,名称为myp
因上传用户手机号触犯隐私政策 被拒描述 APK REQUIRES VALID PRIVACY POLICY Your app is uploading users' phone number information to https://api.appblog.cn without post
前言 随着Android Studio 3.6的正式发布,Gradle插件升级到3.6.0,ButterKnife报错,日志如下: Attempt to use @BindView for an already bound ID 0 on 'mTvText'. 回退Gradle
参考: https://developer.android.google.cn/guide/navigation/ https://developer.android.google.cn/guide/navigation/navigation-getting-started https://blog
添加Gradle依赖 // Use the most recent version of CameraX, currently that is alpha04 def camerax_core_version = "1.0.0-beta03" def camerax_versio
本文使用的CameraX版本为1.0.0-beta03,包含CameraX的简单拍照保存、图像分析(可用于二维码识别等用途)、缩放、对焦等相关内容 基础使用 xml布局 <androidx.camera.view.PreviewView android:id="@+id/v