Android插件学习总结
2011-04-08 17:27
288 查看
webkit找插件的过程
1. PluginDatabase::defaultPluginDirectories()
2. GetPluginClient()->getPluginDirectories()
3. 因为JavaBridge继承自PluginClient,所以WTF::Vector<WebCore::String>JavaBridge::getPluginDirectories()
4. 找到mGetPluginDirectories这个方法,调用java的方法getPluginDirectories
5. private String[] JWebCoreJavaBridge::getPluginDirectories()
6. String[] PluginManager::getPluginDirectories()
7. 经过一系列的包的权限等的分析,把通过筛选的路径返回。
此上只是找到合适的路径,那么打开过程呢。
1. addExtraPluginDirectory或者installedPlugins
2. bool PluginDatabase::refresh()
3. PluginPackage::createPackage
4. PluginPackage::fetchInfo()
5. // Open the library
void *handle = dlopen(m_path.utf8().data(), RTLD_NOW);
如何在java里添加extra_plugin的路径
webkit_web_settings_add_extra_plugin_directory
loadJavaClass
anp_loadJavaClass
------------------------------------------------------------------------
private Class<?> getPluginClass(String libName, String clsName)
String getPluginsAPKName(String pluginLib)
pluginManager.getPluginClass(pkgName, clsName);
可见浏览器插件是跟apk绑定到一起的。
1. PluginDatabase::defaultPluginDirectories()
2. GetPluginClient()->getPluginDirectories()
3. 因为JavaBridge继承自PluginClient,所以WTF::Vector<WebCore::String>JavaBridge::getPluginDirectories()
4. 找到mGetPluginDirectories这个方法,调用java的方法getPluginDirectories
5. private String[] JWebCoreJavaBridge::getPluginDirectories()
6. String[] PluginManager::getPluginDirectories()
7. 经过一系列的包的权限等的分析,把通过筛选的路径返回。
此上只是找到合适的路径,那么打开过程呢。
1. addExtraPluginDirectory或者installedPlugins
2. bool PluginDatabase::refresh()
3. PluginPackage::createPackage
4. PluginPackage::fetchInfo()
5. // Open the library
void *handle = dlopen(m_path.utf8().data(), RTLD_NOW);
如何在java里添加extra_plugin的路径
webkit_web_settings_add_extra_plugin_directory
loadJavaClass
anp_loadJavaClass
------------------------------------------------------------------------
private Class<?> getPluginClass(String libName, String clsName)
String getPluginsAPKName(String pluginLib)
pluginManager.getPluginClass(pkgName, clsName);
可见浏览器插件是跟apk绑定到一起的。
相关文章推荐
- Android学习——maven插件的安装以及关联源码的几种方式总结
- Android开发学习之路- Android数据存储方式总结
- 这两天在为学习Android技术搭建环境,但在eclipse3.6中ADT插件装不上。
- 学习笔记总结:Android中OpenGL ES的着色语言
- Android学习WebView交互开发总结
- Android系统学习总结3--Looper和Handler分析
- Android学习总结——文件储存
- android学习总结
- Android学习总结一:adb的使用、打电话、Button监听两种方法、发短信、ADT23.0.2版本兼容问题
- 【Android学习总结】之eclipse工程目录结构说明及使用
- Android及Robotium学习总结【环境变量,真机调试及根据id模拟按键】
- 来自知乎的Android学习总结
- Android动画学习总结---下
- android opengl es学习总结一:基础知识
- Android学习总结(二)——Service基本概念和生命周期
- Android属性动画(一) ------ 站在巨人的肩膀上学习总结
- Android画图学习总结(五)——Paint
- 小熊android学习总结:Linux内核怎样启动Android