![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
技术
文章平均质量分 82
dragon-Zjl
目标--进托邦
展开
-
mac环境下Android 反编译
一、需要的工具apktool:反编译APK文件,得到classes.dex文件,同时也能获取到资源文件以及布局文件。 dex2jar:将反编译后的classes.dex文件转化为.jar文件。 jd-gui:用于将.jar文件转换成java代码。二、反编译步骤第一步:使用apktool工具对APK进行反编译1.下载apktool下载apktool2. 把下载好的apktool脚本和apktool.jar文件移动到 /usr/local/bin 文件夹下菜单栏点击「.转载 2021-09-07 10:22:36 · 501 阅读 · 0 评论 -
XPosed基本使用 Activity生命周期拦截
文章目录核心类核心类上一篇说到如何集成Xposed框架,接下来就是要实现相关功能,初步了解基本使用核心接口:IXposedHookInitPackageResources–>应用加载完成初始化资源时调用IXposedHookLoadPackage -->加载应用时调用IXposedHookZygoteInit --> 系统启动是加载XposedHelpers -->构造帮助类,辅助通过反射获得实体类,方法,属性并对其进行操作demo场景:为方便测试,本文原创 2020-08-07 14:28:43 · 1549 阅读 · 1 评论 -
Xposed初步使用
文章目录XposedDemo开发环境准备一、Xposed简介Xposed工作原理创建一个工程调试XposedDemo开发环境准备 AS4.0 手机api 19 root工具:360超级ROOT 相关补充资源: https://pan.baidu.com/s/1sN3Ux0wpbzZqD6AtE_bBpQ 提取码: pkcp [各种系统版本的XPosed框架资料下载](http://www.95bmf.com/archives/288)一、Xposed简介Xp原创 2020-08-05 14:55:41 · 382 阅读 · 0 评论 -
IActivityController实现app启动监听
文章目录理解IActivityController一 IActivityController.aidl简介二代码实现理解IActivityController一 IActivityController.aidl简介IActivityController.aidl是系统自带的aidl,在Am的内部类MyActivityController有实现这个aidl接口,主要用于app状态监听控制。对于应用开发者来说,此接口为给我们提供了各种可能性,比如统计每个app启动次数,crash次数等。这里我们先看下他的原创 2020-07-28 15:11:05 · 1294 阅读 · 0 评论 -
桌面app启动crash监测开发思路笔记
使用场景分析功能定位:监听桌面icon点击 以及启动app启动和crash思路分析1.使用AccessibilityService 无障碍服务提供一些列的辅助监听服务,优点:提供音频,视频,手势,指纹等(onTouchEvent无法监听),可以模拟动作问题:在点击回调时,只能捕获当前toActivity的Event宿主,也就是在app启动前的上下文对象,因此在此期间捕获的对象不是目标对象2.使用hook ActivityManangeService–>startActivity()拦截原创 2020-07-24 23:52:30 · 125 阅读 · 0 评论 -
8.0系统framework.jar反编译 未进行源码编译笔记
使用场景:8.0系统framework.jar反编译 未进行源码编译笔记目的查看源码字节码使用工具baksmali-2.4.0.jarsmali-2.4.0.jar资源下载地址反编译framework.jar[注]源码编译后framework.jar文件所在输出位置–>/out/target/product/tb8788p1_64_bsp/system/framework/framework.jar(版本有差异,大体流程位置相似)本人使用的是未进行编译的版本,framework.ja原创 2020-07-24 23:21:32 · 534 阅读 · 0 评论 -
AccessibilityService无障碍服务日常笔记
文章目录android:accessibilityEventTypes参数判断服务是否开启#AccessbilityService1. 辅助服务辅助服务设计的初衷是提供给无法和界面进行交互的残疾用户,用来协助帮助他们进行一些用户交互。后来被开发者用来进行插件开发、监听第三方应用的插件。继承关系:|public abstract class AccessibilityServicejava.lang.Object继承 android.content.Contextandroid.conten原创 2020-07-16 10:54:51 · 1790 阅读 · 0 评论 -
泛型概述一
# 泛型概述1. 为什么要用泛型: 泛型在定义方面与定义接口,方法,类很相似,区别在于参数. 方法接口类使用形参-->用值 泛型使用类型参数-->类型### 泛型的优点 1.在编译期间强类型检查,把代码检查提前至编译时:Java编译器将强类型检查用于通用代码,如果代码违反类型安全就会报错 2.消除类型转换```//需要类型转换ArrayList list=new ArrayList();list.add("add");String str=...原创 2020-06-29 22:56:41 · 122 阅读 · 0 评论 -
MAC【Android studio】Gradle download:kotlin-compiler-embeddable-1.3.70.jar下载太慢
采用策略去Maven仓库下载资源,更新到本地进行加载1.进入仓库网址链接:Maven点击下载如图:2.配置下载jar文件到.gradle文件中文件路径:/Users/"用户名"/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-embeddable/1.3.70/7c2...原创 2020-03-18 15:23:38 · 8500 阅读 · 0 评论 -
Looper类和Handler类小结
Looper类和Handler类分析工作原理有一个消息队列,可以往这个消息队列中投递消息有一个消息循环,不断从消息队列中取出消息,然后处理.事件源添加待处理的消息,一般是在队尾添加如果有优先级高的消息,按照优先级越高位置越靠前.事件源提交消息:通过 按键,触屏 等物理时间产生,也可以是 系统或应用 本身发出的请求Looper类class LooperThread ext...原创 2019-09-30 16:15:25 · 163 阅读 · 0 评论 -
设计模式之装饰者模
Composite概述可以使用一种对客户端***透明的方式***来动态的扩展对象的功能是***继承关系***的替代方案之一定义动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式相比生成子类更为灵活使用场景需要透明且动态的扩展类功能时装饰模式的UML图Component 抽象组件可以是一个接口或者抽象类,作为被装饰的原始对象ConcreteComponent...原创 2019-09-29 17:19:55 · 105 阅读 · 0 评论 -
设计模式之代理模式
概述定义:为其他对象提供一种代理,以控制对这个象的访问.使用场景:无法或不想直接访问某个对象,或存在访问某个对象发生困难时,可以通过一个代理对象来简洁访问.为保证客户端使用的透明性,委托对象和代理对象要实现相同的接口.静态代理代理类以及被代理类实现有相同的实现,通过引用方式调用被代理类写死在代码中,接口不同就需要重新定义不同的代理类定义接口public inter...原创 2019-09-27 18:10:05 · 109 阅读 · 0 评论 -
关于ConstraintLayout自适应高度遇到的坑
关于ConstraintLayout自适应高度遇到的坑 记录下来android:layout_height="wrap_content"为了缩减嵌套层及采用了ConstraintLayout作为dialog布局,但是发现dialog下边的确定按钮总是被盖一部分线上问题代码:<?xml version="1.0" encoding="utf-8"?><android...原创 2019-06-27 18:30:08 · 8518 阅读 · 0 评论 -
JavaScript 对象的继承
文章目录5.4模块的放大模式#JavaScript 对象的继承javascript 继承不通过class 而是通过’原型对象’(prototype)实现###1.原型对象概述####1.1构造函数的缺点JavaScript 通过构造函数生成新对象,因此构造函数可以视为对象的模板。实例对象的属性和方法,可以定义在构造函数内部。function Cat (name, color) { ...原创 2019-07-01 16:40:33 · 116 阅读 · 0 评论 -
ListView 与RecycleView对比
文章目录#ListView 与RecycleView对比###内存回收机制比较public final class Recycler {final ArrayList mAttachedScrap = new ArrayList();private ArrayList mChangedScrap = null;final ArrayList mCachedViews = new Arr...转载 2019-06-21 11:37:33 · 169 阅读 · 0 评论 -
设计原则(一)
文章目录开闭原则迪米特原则-更好的扩展性开闭原则单一职责原则英文名Single Responsibility Principle,缩写SRP定义:就一个类而言,应该仅有一个引起它变化的原因,简单来说,一个类中应该是一组相关性很高的函数,数据的封装.(界限因情况而定)public class ImageLoader { LruCache缓存功能 public class O...原创 2019-05-29 11:40:05 · 85 阅读 · 0 评论 -
常用平台包名
最近在做调用支付类功能,找到一些常用平台的包名及信息分享一下。资源原文链接 http://www.infocool.net/kb/Android/201701/275571.html应用包名 类名微信好友 com.tencent.mmcom.tencent.mm.ui.tools.ShareImgUI微信收藏 com.tencent.mmcom.tencent.mm原创 2017-06-12 11:33:47 · 3277 阅读 · 0 评论 -
Android延迟执行
android App开发在某些情况下需要有延时功能。常用的三种方法:一、线程[html] view plain copy1. new Thread(new Runnable(){ 2. public void run(){ 3. Thread.sleep(XXXX); 4.原创 2017-09-28 11:19:38 · 294 阅读 · 0 评论 -
Android Studio使用Kotlin时Execution failed for task ':app.compileDebugKotlin'.问题
最近在接触kotlin编写android,有些坑必须得踩。kotlin插件依赖添加成功以后,突然爆一个Execution failed for task ':app.compileDebugKotlin'google了一下有说是插件版本不一致导致的。studio插件版本在AS菜单File—>Setting—>Plugins中,查找Kotlin插件如图build...原创 2018-10-10 09:28:04 · 9951 阅读 · 1 评论 -
vue.js跨域设置
刚刚接触vue.js 探寻的路上有很多坑,今天想接一个三方数据源测试,结果总是报错Access to XMLHttpRequest at 'https://news-at.zhihu.com/api/4/news/latest' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Con...原创 2018-12-27 18:25:37 · 222 阅读 · 0 评论 -
Fragment 简述(一)
Fragment生命周期Android3.0引入一个新的核心类Fragment声明周期onInflate()回调如果碎片是由正在扩充的布局内的<Fragment>标记定义的(通常是在activity调用setContentView()来设置主要布局),碎片将调用自己的onInflate()回调。这过程传入一个AttributeSet(包含来自<fragment&...原创 2019-02-11 22:18:19 · 353 阅读 · 0 评论 -
vue.js 设置bootstap以及vue-cli3设置
设置bootstrapvue init webpack “项目名称”生成项目是要是npm .? Project name vuestrap? Project description A Vue.js project? Author 省略? Vue build standalone? Install vue-router? Yes? Use ESLint to lint...原创 2019-02-20 08:55:52 · 200 阅读 · 0 评论 -
android JNI开发初探
JNI 概念JNI(java native interface:java) 本地开发接口JNI是一个协议,这个协议用来沟通java代码和外部的本地代码(c/c++),外部的c/c++也可以调用java代码优势代码效率上c/c++是本地语言,比Java更高效代码移植:c语言模块可以复用代码安全:相对c语言java更容易被反编译,一般加密算法都是用C语言编写,不容易被反编译引用类型对...原创 2019-03-13 22:37:12 · 171 阅读 · 0 评论 -
C++ namespace命名空间
C++ namespace命名空间在C++中名称(name)可以是符号常量 变量 宏 函数 结构 枚举 类和对象等等.为了避免在大规模程序的设计中,以及在程序员使用各种各样的C++库是,这些标识符的命名发生冲突,标准C++引入关键字namespace(命名空间/名字空间/名称空间/名域)可以更好的控制标识符的作用域1.C中的命名空间在C语言中只有一个全局作用域C语言中所有的全局标识共享一个...原创 2019-03-14 12:33:17 · 187 阅读 · 0 评论 -
原型模式的使用场景
文章目录原型模式的使用场景源码使用场景-Intent案例demo原型模式的使用场景(1)类初始化需要消化非常多的资源,这个资源包括数据、硬件资源等,通过原型拷贝避免这些消耗。(2)通过new一个对象需要非常繁琐的数据准备或访问权限,可以使用原型模式。(3)一个对象需要提供给其他对象访问,而且各个调用者可能需要修改其值,可以考虑使用原型模式拷贝多个对象供调用者使用,即保护性拷贝**注:*...原创 2019-05-30 14:18:56 · 9387 阅读 · 0 评论 -
ImageView 缩放 等比例裁剪显示
ImageView 缩放 等比例裁剪显示需求控件加载图片,先进行宽度等比例缩放 然后进行超出部分裁剪import android.content.Context;import android.content.res.TypedArray;import android.graphics.Bitmap;import android.graphics.BitmapFactory;impor...原创 2019-06-05 20:03:47 · 908 阅读 · 0 评论 -
android 4.3选择图片“无法加载图片问题”
图片截取失败问题原创 2017-05-19 23:15:49 · 1350 阅读 · 0 评论