一、small
1、配置build.gradle
2、新建module的包名包含:.app., .lib.或者.web
3、新建assets(宿主)
4、配置签名和依赖(宿主)
5、配置Application(宿主)
6、加载插件(宿主)
7、编译插件(宿主)
8、运行
其他:
1、activity跳转靠配置bundle.json文件,uri配置别名,pkg配置包名,默认打开pkg包名下的MainActivity文件。跳转时用?携带参数传递。
2、对模块的包名有要求
3、使用结果:跳转的时候打不开app,问题是build的时候没有clean。
4、限制:插件和宿主在同一进程中,要么内置插件,要么在启动页下载插件,不适合动态加载的SDK。
异常:
1、编译异常
解决方案:点击IDE右侧的gradle,运行clean再build
二、ACDD
1、所有Atlas的插件,都需要在build.gradle文件中指定资源分区,也就是versionName后加上[0x1, 0x7f]之间的值,使用补丁aapt进行打包。替换aapt.exe
2、宿主添加openatlascore项目为依赖
3、宿主Application继承自AtlasApp
4、插件包名以com开头,将这个module中的清单文件中关于引用v7包中的资源删除,比如主题,也就是在清单文件中删除style属性,在style.xml中删除所有主题什申明。将v4,v7包以provided形式提供(至于provided,是提供给那些只编译不打包场景的命令)。
5、在宿主清单文件中申明插件的activity
异常:
1、
1、配置build.gradle
2、新建module的包名包含:.app., .lib.或者.web
3、新建assets(宿主)
4、配置签名和依赖(宿主)
5、配置Application(宿主)
6、加载插件(宿主)
7、编译插件(宿主)
8、运行
其他:
1、activity跳转靠配置bundle.json文件,uri配置别名,pkg配置包名,默认打开pkg包名下的MainActivity文件。跳转时用?携带参数传递。
2、对模块的包名有要求
3、使用结果:跳转的时候打不开app,问题是build的时候没有clean。
4、限制:插件和宿主在同一进程中,要么内置插件,要么在启动页下载插件,不适合动态加载的SDK。
异常:
1、编译异常
解决方案:点击IDE右侧的gradle,运行clean再build
二、ACDD
1、所有Atlas的插件,都需要在build.gradle文件中指定资源分区,也就是versionName后加上[0x1, 0x7f]之间的值,使用补丁aapt进行打包。替换aapt.exe
2、宿主添加openatlascore项目为依赖
3、宿主Application继承自AtlasApp
4、插件包名以com开头,将这个module中的清单文件中关于引用v7包中的资源删除,比如主题,也就是在清单文件中删除style属性,在style.xml中删除所有主题什申明。将v4,v7包以provided形式提供(至于provided,是提供给那些只编译不打包场景的命令)。
5、在宿主清单文件中申明插件的activity
异常:
1、
W/System.err: java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.demo/com.example.mysmall.fenbei.MainActivity}: java.lang.ClassNotFoundException: Can't find class com.example.mysmall.fenbei.MainActivityinstalled bundles: Not found class com.example.m