- 注册时间
- 2013-4-19
- 最后登录
- 2024-9-26
- 阅读权限
- 200
- 积分
- 6404
- 精华
- 0
- 帖子
- 640
|
转载请注明:www.asysbang.com
QQ游戏大厅可以运行没有安装的应用,如连连看,五子棋等
这个是通过DexClassLoader 以及反射等方法实现的
下面是自己写的一个运行“没安装应用”的例子
这个是可以独立运行,也可以被其他应用运行的程序源代码 -- gameone.apk
这个是调用其他apk的程序,相当于QQ的游戏大厅 -- gamehall.apk
运行方法
只要把gameone.apk放在/sdcard/目录下,就可以通过gamehall.apk 来运行gameone.apk了
核心代码:
DexClassLoader loader = new DexClassLoader("/sdcard/gameone.apk", "/data/data/com.asys.gamehall", null, ClassLoader.getSystemClassLoader().getParent());
其中"/data/data/com.asys.gamehall"这个目录在最新的android版本中,不能是sdcard上的目录。。。难怪QQ游戏大厅会调整目录
两年前,研究这个问题时,还是可以保存到sdcard目录的。。。。
PS:完整的逻辑实现 onResume onRestart onDestroy 等方法都要通过反射去调用
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
|