预备工作
去GitHub搜索replugin工程,下载replugin源码,解压如下,光标选中的部分是我们要修改的地方。

1.1.20 为什么要修改Gradle
因为Replugin原生的默认生成activity坑位都是竖屏的,而车机是横屏的,导致插件activity 实际效果与预期不相符,另外,在插件manifest中的activity标记横屏是无效的。

1.1.21Gradle插件分类介绍
Gradle的插件一般有这么两种,一种是直接在项目中的gradle文件里编写,这种方式的缺点是无法复用插件代码,在其他项目中还得复制一遍代码(或者说说复制一遍文件)另一种是在独立的项目里编写插件,然后发布到中央仓库,之后直接引用就可以了,优点就是可复用。所以我们选择第二种方式,必过我做的是发布到本地仓库。
1.1.22Gradle修改详细步骤
1.新建一个Android项目
2.新建一个Android Module(replugingradle)类型选择Android Library,如下图所示:

3.module中在main目录下新建groovy文件夹和resources文件夹

4.打开replugin源码的replugin-host-gradle,在androidstudio中展示如下

源码中的groovy下的“com”包直接复制到“replugingradle”的module下的groovy下,如下图所示

5.修改module中build.gradle文件,见下图修改前后对比

建议是直接将build.gradle 中原有内容清空,然后将如下内容全部粘贴进去

apply plugin: 'groovy'
apply plugin: 'maven'dependencies {compile 'com.android.tools.build:gradle:3.0.0'compile 'org.json:json:20160212'compile 'org.codehaus.groovy:groovy:2.4.7'compile 'com.squareup:javapoet:1.5.1'compile gradleApi()compile localGroovy()compile 'com.google.gradle:osdetector-gradle-plugin:1.2.1'compile 'net.dongliu:apk-parser:2.2.0'
}repositories {mavenCentral()
}//maven 库组id
group='com.qihoo360.replugin'
//版本号
version='1.0.0'uploadArchives {repositories {mavenDeployer {//发布到本地仓库地址repository(url:uri('C:/Users/wenpingm/Desktop/
replugin_gradle/release'))}}
}

6.修改module中resources
中新建包META_INF,然后再新建包gradle_plugins,再新建文“replugin-host-gradle.properties”,如下所示

注意“replugin-host-gradle.properties”文件的命名就是你只有使用插件的名字,

7.删除不需要的文件,下图左边是干净的,右边应该删除的都标记红色框框

修改脚本中的代码,见下图

8.点击下图右侧的红色uploadArchive

9.发布本地仓库成功后,查看本地仓库结果如下图:

最后总结:经过测试时可行的,因为车机的所有的activity都是要求横屏,所有对应上面仅仅只修改了一处,就可以了,而如果你的需求是某些activity是竖屏某些是横屏,指定关系不清楚,那就很难修改,基本要大量修改replugin类ComponentGenerator的大量脚本,并且还不一定和坑位匹配的上

关于360插件化框架Replugin竖屏修改为横屏解决方案相关推荐

  1. Android 插件化框架DroidPlugin

    上一次项目迭代中,接触到了插件化框架. 使用场景:我们的app需要集成某一直播app.即在不安装第三方直播app到手机的情况下,点击我们app内部的某一连接能跳转到直播app中,运行里面原有的所有功能 ...

  2. Shadow插件化框架设计——replugin原理(架构师进阶之旅)

    DroidPlugin原理解析 从系统设计的角度,组件和窗口的逻辑实体都存在于系统服务,比如Activity创建后,其逻辑控制主体在AMS,对于窗口,其逻辑控制主体在WMS android将逻辑主体放 ...

  3. 从零开始实现一个插件化框架

    /   今日科技快讯   / 网易科技讯 7月15日消息,据外媒报道,最新泄露的内部文件显示,电动汽车制造商特斯拉位于美国加州弗里蒙特汽车组装工厂的员工感染新冠病毒的危险激增.到目前为止,已有130多 ...

  4. [Android]用架构师角度看插件化(2)-Replugin 唯一hook点

    Replugin,为何我选择要研究这个的插件呢?很大的原因是因为它的介绍中说明,他只会有一个hook点. 一.Hook hook点是什么? 我们入门Android的时候,一定会看到过这个图,但是你确定 ...

  5. java 轻量级插件化框架_轻量级插件化框架——Small

    photo-1441716844725-09cedc13a4e7.jpg 前言 世界那么大,组件那么小.Small,做最轻巧的跨平台插件化框架. --Galenlin 这是Small作者,林光亮老师, ...

  6. 58同城Android端-最小插件化框架实战和原理分析

    目录 背景 插件化需要了解的知识 2.1 类加载过程和类加载器 2.2 ClassLoader 的 findClass.findLibrary.findResource 2.3 DexClassLoa ...

  7. 【Android 插件化】Hook 插件化框架总结 ( 插件包管理 | Hook Activity 启动流程 | Hook 插件包资源加载 ) ★★★

    Android 插件化系列文章目录 [Android 插件化]插件化简介 ( 组件化与插件化 ) [Android 插件化]插件化原理 ( JVM 内存数据 | 类加载流程 ) [Android 插件 ...

  8. 【Android 插件化】Hook 插件化框架 ( 使用 Hook 方式替换插件 Activity 的 mResources 成员变量 )

    Android 插件化系列文章目录 [Android 插件化]插件化简介 ( 组件化与插件化 ) [Android 插件化]插件化原理 ( JVM 内存数据 | 类加载流程 ) [Android 插件 ...

  9. 【Android 插件化】Hook 插件化框架 ( 从源码角度分析加载资源流程 | Hook 点选择 | 资源冲突解决方案 )

    Android 插件化系列文章目录 [Android 插件化]插件化简介 ( 组件化与插件化 ) [Android 插件化]插件化原理 ( JVM 内存数据 | 类加载流程 ) [Android 插件 ...

  10. 【Android 插件化】Hook 插件化框架 ( 加载插件包资源 )

    Android 插件化系列文章目录 [Android 插件化]插件化简介 ( 组件化与插件化 ) [Android 插件化]插件化原理 ( JVM 内存数据 | 类加载流程 ) [Android 插件 ...

最新文章

  1. shell中复制粘贴随笔
  2. 创建,修改Table格式
  3. C/S框架网介绍|.NET快速开发平台|Winform开发框架
  4. python第九天(9-33)
  5. mysql数值类型占用字节及范围_mysql数据类型及占用字节数【mysql】
  6. r语言中的或怎么表示什么不同_R经典入门 之 R语言的基本原理与概念 -- 200430
  7. 超好看的B站首页顶部景深动态特效源码
  8. flask 上传头像
  9. 空军军医大学计算机复试线,2021空军军医大学考研国家线公布时间_国家线是多少分...
  10. 解决Wireshark抓包跟踪流后http的响应正文乱码
  11. 数据库-mysql MHA集群方案测试
  12. LTP(Linux Test Project)学习(五)——LTP代码学习
  13. PPT文件不能编辑是什么原因
  14. 1.1.6 LSDB同步
  15. 水杨酸-FITC | salicylic acid-FITC|荧光素标记水杨酸
  16. 母版页的详细使用介绍
  17. 买服务器为何选择华为云?
  18. 在疫苗生产、包装、入库、放行、质量管理、电子数据采集/输入应用电子签名
  19. HTMLCSS 高级表格 合并单元格
  20. not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA

热门文章

  1. 阿里面试题 ——输入一个字符串,输出所有的排列
  2. 终极版Python打包exe文件,并修改图标,这将是你见过最详细的教程~
  3. 在三层交换机上配置Trunk并指定接口封装为802.1q
  4. [三剑客]老男孩教育-三剑客笔试题集合
  5. 美颜技术---引导滤波 Guided Filter
  6. apache 服务器的 Option Indexes,AllowOverride,Order Allow,Deny 详解
  7. Android开发:vivo企业开发者账号注册
  8. 怎么将flac转换成mp3
  9. 生活随记 - 火星梦
  10. 关于手机的MAC地址