在网易云阅读App上看到了插件管理功能,刚好自己也需要以插件的模式来扩展已有的功能,于是研究了一下,下面是一张网易云阅读App提供的插件模式,只需下载相应的插件就扩展了相应的功能,非常方便。



     在插件下载完成了之后还有一个安装过程,这一个安装过程误导了我很久,一开始以为Android SDK已提供了相应的插件功能,经过google一番发现压根就没有提供该功能。接着以为是网易自己实现了插件功能,遂想偷师。反编译了代码,拿过来一看,混淆的比较严重,压根就不能看,没办法只有硬着头皮去寻找相关的代码,经过一番查找,终于找到了关键代码,发现往 /data/data/packagename/plugin/pdf目录下存了一些东西,于是在该目录下发现以下一些文件


 

     记得以前看到过一篇文章,在Android中也可以动态的去加载class文件,http://android-developers.blogspot.com/2011/07/custom-class-loading-in-dalvik.html ,由于自己的英语比较挫,看得不是很真切,不过农民伯伯有篇类似的文章http://www.cnblogs.com/over140/archive/2012/03/29/2423116.html ,并阅读提供的扩展阅读博文很好的解决了本人的需求 探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法 

     记得以前看到过一篇文章,在Android中也可以动态的去加载class文件,http://android-developers.blogspot.com/2011/07/custom-class-loading-in-dalvik.html ,由于自己的英语比较挫,看得不是很真切,不过农民伯伯有篇类似的文章http://www.cnblogs.com/over140/archive/2012/03/29/2423116.html ,并阅读提供的扩展阅读博文很好的解决了本人的需求 探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法 

     不过在实践的过程中也发现一些问题,如果直接去加载 SDCard中的apk文件并不能成功,具体的异常这里就不贴了,自己可以去实践下。还有就是发现如果去加载直接dex文件的话也不能成功,报的异常是"unable to open 'dex' file",通过阅读API文档发现并没有提及可以直接加载dex文件,只是说可以去加载包含classes.dex文件的jar包和apk文件

     以上遇到的问题还望大家能够指点一下~

     最后还是希望大家能够仔细阅读下面的参考博文中的内容~

     参考博文



 




Android Application plugin的更多相关文章

  1. Failed to apply plugin [id 'com.android.application'] 和 Could not find com.android.tools.build:gradle:2.XX的最正确的解决方法

    发现android studio是真的可爱啊,上一秒还没问题可以build运行,下一秒就出错...好,你任性,你牛逼.. 说下今天又遇到的两个问题:Failed to apply plugin [id ...

  2. Plugin with id 'com.android.application' not found.

    构建报错: Error:(1, 0) Plugin with id 'com.android.application' not found. <a href="openFile&quo ...

  3. AS导入项目报错:Plugin with id 'com.android.application' not found.

    从github或第三方Demo中获取的项目导入到AndroidStudio中报错Plugin with id 'com.android.application' not found.:今天导入一个讯飞 ...

  4. android 编译错误 Error:(1, 0) Plugin with id 'com.android.application' not found.

    在导入一个项目时,由于它本身的gradle版本比较高,你试用比较旧版本的gradle时就报出Plugin with id 'com.android.application' not found.的错误 ...

  5. Error:(1, 0) Plugin with id 'com.android.application' not found

    Error:(1, 0) Plugin with id 'com.Android.application' not found.Open File 这个错误是build.gradle造成的,我们打开文 ...

  6. android studio - 导入工程报错[Plugin with id 'com.android.application' not found]

    出错现象: 大概意思是找不到:com.android.application 插件,以上现象对于初学者来说会经常碰到,下面分析下产生的原因. 原因分析 首先来看看导入后的工程结构: 对于此工程结构,是 ...

  7. The android gradle plugin version 2.3.0-beta2 is too old, please update to the latest version.

    编译项目的时候,报如下错误: Error:(, ) A problem occurred evaluating project ':app'. > Failed to apply plugin ...

  8. Android Application的Gradle说明

    //引入插件 apply plugin: 'com.android.application' android { compileSdkVersion 29 buildToolsVersion &quo ...

  9. Gradle之Android Gradle Plugin 主要 Task 分析(三)

    [Android 修炼手册]Gradle 篇 -- Android Gradle Plugin 主要 Task 分析 预备知识 理解 gradle 的基本开发 了解 gradle task 和 plu ...

随机推荐

  1. zoj 1107 FatMouse and Cheese(记忆化搜索)

    题目链接:点击链接 题目大意:老鼠从(0,0)出发,每次在同一个方向上最多前进k步,且每次到达的位置上的数字都要比上一个位置上的数字大,求老鼠经过的位置上的数字的和的最大值 #include<s ...

  2. Vue ES6

    Vue ES6 Jade Scss Webpack Gulp   一直以来非常庆幸曾经有翻过<代码大全2>:这使我崎岖编程之路少了很多不必要的坎坷.它在软件工艺的话题中有写到一篇:“首先是 ...

  3. 与众不同 windows phone (14) - Media(媒体)之音频播放器, 视频播放器, 与 Windows Phone 的音乐和视频中心集成

    原文:与众不同 windows phone (14) - Media(媒体)之音频播放器, 视频播放器, 与 Windows Phone 的音乐和视频中心集成 [索引页][源码下载] 与众不同 win ...

  4. 关于iptables的u32匹配

    前面一篇文章----阐释了iptables最新的bpf match,说它将多个matches并成了一个经过编译的解释型bytecode bpf match,早在bpf match之前,u32 matc ...

  5. HOW TO: How to import UUID function into Postgre 9.3

    1. Open a command console and go to the directory where you installed Postgre server. e.g. D:\Progra ...

  6. ThinkPHP运算符 与 SQL运算符 对比表

    ThinkPHP运算符 与 SQL运算符 对比表 TP运算符 SQL运算符 样例 实际查询条件 eq = $map['id'] = array('eq',100); 等效于:$map['id'] =  ...

  7. WinRarHelper帮助类

    WinRarHelper帮助类 关于本文档的说明 本文档使用WinRAR方式来进行简单的压缩和解压动作,纯干货,实际项目这种压缩方式用的少一点,一般我会使用第三方的压缩dll来实现,就如同我上一个压缩 ...

  8. cannot load supported formats intellij 解决的方法

    http://stackoverflow.com/questions/20797443/intellij-idea-subversion-checkout-error http://stackover ...

  9. URAL 1963 Kite 四边形求对称轴数

    题目链接: http://acm.timus.ru/problem.aspx?space=1&num=1963 题意,顺时针或逆时针给定4个坐标,问对称轴有几条,输出(对称轴数*2) 对于一条 ...

  10. [ACM] hdu 4405 Aeroplane chess (概率DP)

    Aeroplane chess Problem Description Hzz loves aeroplane chess very much. The chess map contains N+1 ...