openatlas_architecture
2017-01-26 01:21:15 0 举报
OpenAtlas是一个开源的、多用户协同工作的地理信息(GIS)系统。其架构设计以可扩展性和灵活性为核心,支持多种数据源和多种GIS功能。OpenAtlas的主要组成部分包括数据存储、数据访问、数据处理和用户界面等模块。其中,数据存储模块负责存储和管理地理信息数据,支持多种数据格式;数据访问模块提供了一套统一的API,用于查询和操作数据;数据处理模块则负责进行地图渲染、空间分析等操作;用户界面模块则提供了直观的操作界面,方便用户进行地理信息的查看和编辑。OpenAtlas的架构设计使得它可以灵活地适应各种不同的应用场景,满足用户对地理信息处理的各种需求。
作者其他创作
大纲/内容
再回到DelegateClassLoader中的findClass()方法中,调用ClassLoadFromBundle.loadFromInstalledBundles(className)查找目标类
若插件信息从未加载,则调用Atlas.installBundle()安装插件
Framework.systemClassLoader
BundleClassLoader.dynamicImports(String[])
需要加载插件中的某个组件
BundleClassLoader.findOwnClass()
当前插件依赖的代理类
加载四大组件类完成
BundleArchiveRevision.loadDex()
宿主中的ClassLoader
DexFile.loadDex()
DelegateClassLoader.findClass()
Framework中对外开放的包
BundleClassLoader.findClass()
从可以得到一个结论:如果某个插件之前没有安装过,那么是无法直接加载其中的任何普通类(4大组件之外的类)或者直接使用其中的资源的。
当前插件的依赖包
0 条评论
下一页