Android插件的1234....

0.问题抛出

在Android里我们说的插件到底指的是什么,表达是否准确?

1.Android插件的种类

a.Android Studio插件

针对Android Studio这个IED的插件,一般可以帮你写代码或格式化等,与你编译或打包时的代码没关系

个人觉得好用的11个插件推荐:

  • 1.GsonFormat:快速将json字符串转换成一个Java Bean,免去我们根据json字符串手写对应java Bean的过程。
  • 2.Android ButterKnife Zelezny:配合ButterKnife实现注解,从此不用写findViewById,想着就爽啊。在Activity,Fragment,Adapter中选中布局xml的资源id自动生成butterknife注解
  • 3.Android Code Generator:根据布局文件快速生成对应的Activity,Fragment,Adapter,Menu。
  • 4.Android Parcelable code generator:JavaBean序列化,快速实现Parcelable接口。
  • 5.Android Methods Count:显示依赖库中得方法数
  • 6.Lifecycle Sorter:可以根据Activity或者fragment的生命周期对其生命周期方法位置进行先后排序,快捷键Ctrl + alt + K
  • 7.CodeGlance:在右边可以预览代码,实现快速定位
  • 8.findBugs-IDEA:查找bug的插件,Android Studio也提供了代码审查的功能(Analyze-Inspect Code…)
  • 9.ADB WIFI:使用wifi无线调试你的app,无需root权限(也可参考以下文章:http://www.jianshu.com/p/21d1b65d92a4)
  • 10.AndroidPixelDimenGenerator:Android Studio自动生成dimen.xml文件插件
  • 11.JsonOnlineViewer:在Android Studio中请求、调试接口

b.Gradle插件

针对单个项目的插件,一般不会帮你写代码,但是编译时会帮你生成代码,常见的提现方式:(在项目的build.gradle下添加插件作为 classpath)

buildscript {    
    dependencies {        
        classpath 'com.android.tools.build:gradle:3.6.3'
        ...
    }
    ...
}

然后在app的build.gradle下

apply plugin: 'com.android.application'

 

c.APP的插件

针对APP的,将一个apk根据业务功能拆分成不同的子apk(也就是不同的插件),每个子apk可以独立编译打包,最终发布上线的是集成后的apk。在apk使用时,每个插件是动态加载的,插件也可以进行热修复和热更新,与组件化的区别是:组件化的单位是module,插件化的单位是apk。模块化、组件化、插件化细分可以看文章下面的一次搞懂—模块化、组件化与插件化

个人比较推荐360的Replugin,RePlugin是一套完整的、稳定的、适合全面使用的,占坑类插件化方案,也是业内首个提出”全面插件化“(全面特性、全面兼容、全面使用)的方案

另外比较热门的还有阿里的atlas,滴滴的VirtualAPK

 

参考资料:

Android Studio实用插件集合

Gradle插件开发指南

一次搞懂—模块化、组件化与插件化

 

 

 

 

你可能感兴趣的:(AS,android插件理解,android插件)