首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
[置顶] 滴滴插件化VirtualAPK框架原理解析(二)之Service 管理
】的更多相关文章
[置顶] 滴滴插件化VirtualAPK框架原理解析(二)之Service 管理
在前一篇博客滴滴插件化框架VirtualAPK原理解析(一)之插件Activity管理 中VirtualAPK是如何对Activity进行管理的,本篇博客,我们继续来学习这个框架,这次我们学习的是如何去管理Service. Service工作原理分析 说道如何对Service进行插件化,肯定得先了解Service的工作过程,不然何谈插件化?所以我们先一起学习Service的工作原理. Service分为两种形式:以startService启动的服务和用bindService绑定的服务:其实这两种…
[置顶] 滴滴插件化框架VirtualAPK原理解析(一)之插件Activity管理
上周末,滴滴与360都开源了各自的插件化框架,VirtualAPK与RePlugin,作为一个插件化方面的狂热研究者,在周末就迫不及待的下载了Virtualapk框架来进行研究,本篇博客带来的是VirtualAPK原理解析的第一篇Activity管理,博客只是自己的理解,小弟才疏学浅,可能有很多理解不对的地方,欢迎各位大神指出.(看博客之前,请大家先下载VirtualVirtualAPKapk的项目,https://github.com/didi/VirtualAPK) Hook Activit…
插件化 VirtualAPK 简介 体验 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina.com 插件化 VirtualAPK 简介 体验 MD 目录 目录简介基本使用宿主项目的配置插件项目的配置构建插件时可能出现的问题相关知识VirtualAPK 的特性主流插件化框架的对比为什么选择 VirtualAPK如何选择适合的插件化框架VirtualAPK 原理简介已知约束目前暂不支持的特性…
小白也能看懂的插件化DroidPlugin原理(二)-- 反射机制和Hook入门
前言:在上一篇博文<小白也能看懂的插件化DroidPlugin原理(一)-- 动态代理>中详细介绍了 DroidPlugin 原理中涉及到的动态代理模式,看完上篇博文后你就会发现原来动态代理真的非常简单,只不过就是实现一个 InvocationHandler 接口重写一下 invoke 方法而已.不错,其实很多看似 high level 的技术都并没有想象中的那么晦涩难懂,只要你肯下定决心去了解它,去认识它,去学习它你就会发现,原来都是可以学得懂的.本篇博文将介绍 DroidPlugin 框架…
滴滴插件化方案 VirtualApk 源码解析
那么其中的难点很明显是对四大组件支持,因为大家都清楚,四大组件都是需要在AndroidManifest中注册的,而插件apk中的组件是不可能预先知晓名字,提前注册中宿主apk中的,所以现在基本都采用一些hack方案类解决,VirtualAPK大体方案如下: Activity:在宿主apk中提前占几个坑,然后通过“欺上瞒下”(这个词好像是360之前的ppt中提到)的方式,启动插件apk的Activity:因为要支持不同的launchMode以及一些特殊的属性,需要占多个坑.Service:通过代理…
[置顶] JQuery插件学习教程
这是JQuery其它常用插件的视频教程,包括validate插件,.comet插件等.同时有大量实例项目,如果你是喜欢JQuery的童鞋千万不要错过. 教程的内容有: 1_validate插件(1) 2_validate插件(2) 3_validate插件(3) 4_validate插件(4) 5_validate插件(5) 6_comet(1) 7_comet(2)_基于长连接流的方式实现 8_comet(3)_基于长轮询的方式实现 9_comet(4)_服务器端的实现方式 10_comet(…
[置顶] cJSON库(构建json与解析json字符串)-c语言
一.c语言获取json中的数据. 1.先要有cJOSN库,两个文件分别是cJSON.c和cJSON.h. 2.感性认识 char * json = "{ \"json\" : { \"id\":1, \"nodeId\":11, \"deviceId\":111, \"deviceName\":\"aaa\", \"ieee\":\"01212\…
[置顶] Android学习系列-Android中解析xml(7)
Android学习系列-Android中解析xml(7) 一,概述 1,一个是DOM,它是生成一个树,有了树以后你搜索.查找都可以做. 2,另一种是基于流的,就是解析器从头到尾解析一遍xml文件. 基于流的目前有两种比较有名, (1)是SAX, sax的原理是解析器解析过程中通过回调把tag/value值等传给你,你可以比较.操作. (2)PULL 而pull的原理是它只告诉你一个tag开始或者结束了,至于tag/value的值是什么需要你自己去向parser问,所以叫做pull,而sax…
轮播插件unsilder 源码解析(二)
$.fn._active = function(className) { //当前的添加class,相邻元素去除class return this.addClass(className).siblings().removeClass(className); }; self.stop = function() { //轮播结束,清除定时器 clearTimeout(self.interval); return self; }; self.destroyArrows = function() { /…
[置顶] Cocos2d-x 实例源码分析之二 小实例的主框架
这篇文章是分析第一个小实例ActionTest的源码.其实所有实例程序的结构都是一样的,只有特定方法里的代码不同,大的框架都是一样的.也就是说看完这篇文章你就可以自己开始分析其他源码了. 废话不多说,咱们接着上一篇文章开始讲.上一篇文章最后我们讲到开启下个场景的代码 void TestController::menuCallback(CCObject * pSender) { // 获取被点击的子菜单项, CCMenuItem* pMenuItem = (CCMenuItem *)(pSende…