工作学习
文章平均质量分 81
小雷Ryan
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
DroidPlugin代码分析(一) 背景知识
前段时间360在github上公开了DroidPlugin的代码,工作中也正好要用到类似的技术,于是打算花点时间研究一下。 在开始之前,首先需要了解一个概念:Java动态代理。这是实现hook的一个关键技术,在代码里被大量运用。那么什么是Java动态代理呢?下面以一个小例子进行说明。 首先我们定义一个IFruit接口,里面只有一个方法,用来打印水果的名字: [ja转载 2016-12-07 11:02:10 · 399 阅读 · 0 评论 -
DroidPlugin代码分析(二) Hook机制
接上篇,这篇来看一下Droid Plugin的hook机制。Droid Plugin的官方文档提到了下面三点: 动态代理实现函数hookBinder代理绕过部分系统服务限制IO重定向 我们一项一项地来看。 一、动态代理实现函数hook 这部分实现主要在hook/proxy/和hook/handle里。先上一张类图: 首先定义了一个基转载 2016-12-07 11:07:42 · 383 阅读 · 0 评论 -
DroidPlugin代码分析(三) 占坑、动态注册
接上篇,这一篇分析一下“占坑”部分。既然是占坑,先看一下DroidPlugin都占了哪些坑? 扫一眼AndroidManifest.xml可以发现,除了主进程意外,还注册了”:PluginP01” ~ ”:Plugin08”这8个进程,所以一共9个进程。 每个进程里注册了30个activity,1个service,和一个content provider: • .stub.A转载 2016-12-07 11:17:55 · 515 阅读 · 0 评论 -
DroidPlugin代码分析(四) 进程管理
之所以单列一篇写进程管理,是因为看到注释上写“这是一个复杂的进程管理程序”,但是仔细看了一下好像也没那么“复杂”... 这一篇通过分析代码试图搞清楚以下3个问题: • 插件进程是如何被hook住的? • 插件进程die是如何被检测到的? • 插件进程是如何被管理的? 一、插件进程是如何被hook住的? 在写宿主程序的时候,我们知道需要在Application的o转载 2016-12-07 11:19:51 · 422 阅读 · 0 评论 -
Android中shape属性详解和selector和layer-list的说明
一、简单使用 刚开始,就先不讲一堆标签的意义及用法,先简单看看shape标签怎么用。 1、新建shape文件 首先在res/drawable文件夹下,新建一个文件,命名为:shape_radius.xml 内容是这样的:(先不需要理解,先看shape怎么用) xml version="1.0" encoding="utf-8"?> shape x转载 2017-03-28 15:46:20 · 711 阅读 · 0 评论 -
解决IllegalStateException: Can not perform this action after onSaveInstanceState--commit不能写在onstart中
今天使用Fragment的时候,出现了这个错误 IllegalStateException: Can not perform this action after onSaveInstanceState: [java] view plain copy print? E/AndroidRuntime(12747): Caused by: java.l转载 2017-03-21 17:22:07 · 287 阅读 · 0 评论 -
Android SHA1值获取方式(开发模式和发布模式)
一.eclipse怎么查看SHA1值 1.第一种方式: 看下图,一看就知道了,打开eclipse ---->window---->preferences---->Android---->Build就可以查看到了,这里所看到的是开发模式(debug)下的SHA1值 2.第二种方式: 使用keytool获取,参照以下步骤 输入命令定位到转载 2017-03-29 11:51:04 · 1198 阅读 · 0 评论 -
viewPager+fragment实现分页切换,跳转至别的页面改变数据,fragment没有改变
通过网上查找相关资料,有必要加强对viewpager及相关Adapter的理解 项目分页显示未付款,已付款,全部三个页面, 实现方式是,viewpager进行页面切换控制,而里面具体的页面为fragment,通过FragmentPagerAdapter进行设置; 现在需要点击未付款页面内的付款按钮,切换至支付页面,付款成功后,自动刷新viewpager里面全部数据,并切换 至已付款页面,但原创 2017-03-23 10:05:29 · 771 阅读 · 0 评论 -
app全fragment混少量Activity的切换逻辑
希望页面切换时,一直保留底部导航栏,而底栏含有一个home键,点击无论当前在哪个界面,必须回到首页,Activity无法满足需求,就需要使用Fragment了 那么,最关键的问题,我总结了一下几点: 1.Fragment和Fragment切换逻辑及数据传递 2.Fragment和Activity切换逻辑及数据传递 3.界面返回键逻辑 4.手机返回键逻辑 5.底栏HOME键逻辑 6原创 2017-03-23 16:24:37 · 501 阅读 · 0 评论 -
Android进程保活
Android线程保活关键点: 1.提供进程优先级,降低进程被杀死的概率 2.在进程被杀死后,进行拉活 /***********************************************进程优先级*********************************************************/ 重要性自左到右依次递减 前台进程--->可见进程-原创 2017-03-15 12:42:29 · 926 阅读 · 0 评论
分享