開發(fā)工具總結(jié)(1)之圖文并茂全面總結(jié)上百個(gè)AS好用的插件(上)

說明:

本篇文章已授權(quán)微信公眾號(hào)碼個(gè)蛋獨(dú)家發(fā)布

俗話說得好,工欲善其事,必先利其器。做開發(fā)時(shí)間長(zhǎng)了,總想找一些快捷方法,只有擁有好用的工具,才能節(jié)省開發(fā)時(shí)間,提高工作效率。我就是一個(gè) 追(喜)求(歡)高(偷)效(懶) 的開發(fā)人員,正好趁著國(guó)慶假期,把平日用到的一些 Android Studio開發(fā)插件 整理了一下,分享給大家。
??有人會(huì)問了,網(wǎng)上也有很多博客在講Android Studio的插件總結(jié),為什么你還要弄一篇博客呢?我可以告訴大家,網(wǎng)上講的那些很多都是文字,要么就是給你一個(gè)鏈接,有些還是過時(shí)的,有些博客講的比較全面,可是并沒有分門別類去區(qū)分,很雜亂;有的博客做了分類,但是都是文字和鏈接,打開某些鏈接只是一些簡(jiǎn)單的圖片,很簡(jiǎn)單。

簡(jiǎn)單看幾個(gè)圖就知道網(wǎng)上的博客寫的大概是什么樣的(我并沒有針對(duì)誰,只是說我們寫博客給別人看一定要注意一目了然):

  1. 有這樣的:標(biāo)題是鏈接,介紹就一句話,沒有具體用法,圖片看不到。


    有這樣的
  2. 有這樣的:介紹就一句話,沒有具體用法,但是有下載地址和文檔地址(我還要去打開文檔去看,有些是英文的,還需要去翻譯)。


    有這樣的
  3. 有這樣的:標(biāo)題是鏈接,點(diǎn)進(jìn)去有的鏈接已經(jīng)失效,介紹用法是全英文的,我還要去翻譯。


    有這樣的
  4. 有這樣的:這個(gè)稍好一些,標(biāo)題是鏈接,有介紹,沒有圖片講解,需要點(diǎn)擊標(biāo)題鏈接進(jìn)去。


    有這樣的
  5. 有這樣的:全部是文字,沒圖片,雜亂,類型不知道,哪個(gè)好用也不知道,還要自己一個(gè)一個(gè)的去下載試試看。


    有這樣的

我是一個(gè) 追(自)求(娛)極(自)致(樂) 的技術(shù)宅,那些博客看的我想砸了電腦,為啥不講清楚一些,讓人可以知道是干嘛用的?這也是我整理這篇博客的原因。

首先,我分門別類,按類型把功能類似的的都放在一起。

其次,我對(duì)每一個(gè)插件做了一個(gè)很精確的講解,圖文并茂。另外把一些注意事項(xiàng),以及優(yōu)缺點(diǎn)都寫的清清楚楚,這是我自己使用中總結(jié)出來的(極個(gè)別的除外)。

再次,制作對(duì)比圖片,以及截圖補(bǔ)充說明。網(wǎng)上的有些動(dòng)圖要么太模糊,要么版本太舊,要么就是速度太快看不清。所以我把很多插件的用法自己做了一個(gè)錄屏,做成gif動(dòng)圖。另外自己也做了一些圖片對(duì)比圖,方便別人查看插件使用前后的區(qū)別。(有些圖片用的是網(wǎng)上的或者官方的,在此感到抱歉,因?yàn)槟切﹫D片能夠解決問題,也沒什么大的問題,所以暫時(shí)借用了。)

好了,言歸正傳,下面看一下今天的 目錄,由于內(nèi)容太多,分為上下兩篇介紹,這里是上篇,下篇可以點(diǎn)擊鏈接查看 開發(fā)工具總結(jié)(8)之圖文并茂全面總結(jié)上百個(gè)AS好用的插件(下)

一、生成java文件,xml布局和生成資源文件有關(guān):
1.SmartFindViewById
2.GenerateFindViewById(很完美的一個(gè)插件)
3.LayoutCreator
4.Android Code Generator
5.Android Studio Prettify
6.AndroidAccessors
7.Android Layout ID Converter
8.BorePlugin
9.Exynap
10.MVPHelper
11.InnerBuilder

二、資源文件的管理和自動(dòng)生成有關(guān):
1.svgtoandroid
2.Android Holo Colors Generator
3.Android Drawable Importer(36M,有點(diǎn)大) 快速批量導(dǎo)入不同大小的drawable文件
4.Android Material Design Icon Generator 是一個(gè)可以生成【Material Design圖標(biāo)】的插件。
5.Android Styler 根據(jù)xml自動(dòng)生成style樣式(有點(diǎn)復(fù)雜,不實(shí)用)
6.android-strings-search-plugin
7.color-manager
8.AndroidPixelDimenGenerator
9.android-selector-intellij-plugin
下面這幾個(gè)不常用,作為了解:
DimenGenerator 命令行生成dimen
android-selector-chapek
Strings-xml-tools

三、格式化xml布局工具:
1.LayoutFormatter
2.LayoutFormat

四、權(quán)限有關(guān):
PermissionsDispatcher plugin

五、序列化工具:
1.Android Parcelable code generator自動(dòng)生成Parcelable序列化
2.Android Parcelable code generator(for kotlin)使用kotlin開發(fā)時(shí)自動(dòng)生成Parcelable序列化。
3.GenerateSerialVersionUID自動(dòng)生成Serializable序列化。
4.SerializableParcelable Generator自動(dòng)生成Serializable序列化

六、翻譯有關(guān):
1.ECTranslation
2.AndroidLocalizationer
3.TranslationPlugin
4.ReciteWords

七、第三方注解,事件和依賴注入庫(kù)可視化工具:
1.Android ButterKnife Plugin Plus
2.Android ButterKnife Zelezny
3.Remove ButterKnife
4.eventbus3-intellij-plugin
5.dagger-intellij-plugin dagger
6.otto-intellij-plugin otto
7.databinding-support


一、生成java文件,xml布局和生成資源文件有關(guān):

1.SmartFindViewById

  • 作用: 重構(gòu)了GenerateFindViewById 項(xiàng)目的所有代碼,使得在一定程度上可以更方便地進(jìn)行后期擴(kuò)展。并在GenerateFindViewById 項(xiàng)目基礎(chǔ)上新增了智能查找布局文件,優(yōu)化了展示界面,增加了 I18N 國(guó)際化支持等功能。

  • 說明:
      該插件可以依次通過以下6種方式來逐一嘗試獲取目標(biāo)布局文件名,優(yōu)先級(jí)從高到低,一旦有一個(gè)方法獲取到了有效的布局文件名, 就會(huì)展示對(duì)應(yīng)布局文件的所有擁有 id 的 View 控件,然后可以選擇生成對(duì)應(yīng)的 findViewById 和 onClick 點(diǎn)擊事件代碼。

    1.選中布局文件名,如選中代碼段 setContentView(R.layout.activity_main); 中的 activity_main
    2.檢測(cè)當(dāng)前光標(biāo)所在行是否包含布局文件名(通過 R.layout. 前綴判斷)
    3.Activity setContentView(R.layout.xxx) 方法布局文件參數(shù)
    4.Fragment(包括 support_v4 fragment) 中 onCreateView 方法中 inflate(R.layout.xxx... 布局參數(shù)
    5.RecyclerViewAdapter 中 onCreateViewHolder 方法中 inflate(R.layout.xxx... 布局參數(shù)
    6.彈輸入框提示手動(dòng)輸入

  • 注意事項(xiàng):如果是Activity,必須要有oncreate方法,如果是fragment,必須要有onCreateView方法,如果是適配器里面的布局,必須要有onCreateViewHolder 方法。也就說,必須要有布局參數(shù)。

  • 快捷鍵: Ctrl + Alt + S

  • 用法:

    1.在一個(gè) Activity, Fragment, RecyclerViewAdapter(包含直接或間接子類)甚至一個(gè)一般的類文件中,如果對(duì)應(yīng)代碼中已存在布局文件名,
    可以對(duì)著類文件右鍵選擇Generate,選擇 SmartFindViewById 菜單(或是 Ctrl + Alt + S, 或者
    點(diǎn)擊菜單欄Code 選擇 SmartFindViewById ), 這時(shí)就會(huì)自動(dòng)查找布局文件,然后彈出一個(gè)展示目標(biāo)布局
    文件下的所有有 id 的 View 控件列表,如果你的布局文件不是寫在 setContentView(R.layout.xxx) 等常見代碼中,
    你可以手動(dòng)選定目標(biāo)布局文件名或?qū)⒐鈽?biāo)定位到目標(biāo)布局文件名所在的代碼行, 最后還可以手動(dòng)輸入。

    2.在彈出的 View 控件列表彈框中,默認(rèn)選中還沒有編寫 findViewById 代碼的 View 控件,當(dāng)然也可以手動(dòng)選中或取消。

    3.可以根據(jù) View 控件是否有 android:clickable=true 屬性或是 Button 類控件,自動(dòng)勾選自動(dòng)生成 onClick 點(diǎn)擊事件代碼。

    4.可以編輯 View 控件生成類成員變量的變量名,View 成員變量名生成默認(rèn)規(guī)則類似于: android:id="@+id/btn_submit_info"
    對(duì)應(yīng)的成員變量名為 mSubmitInfoBtn

    5.對(duì)于 Fragment 等需要 rootView.findViewById, 可以勾選 RootView 選項(xiàng),同時(shí)可以設(shè)置該 RootView 的變量名,默認(rèn)為 itemView,
    對(duì)于非 Activity 類該選項(xiàng)默認(rèn)勾選

    6.點(diǎn)擊確認(rèn)生成

  • 演示圖如下:

這是無布局參數(shù)生成的效果(看看有多麻煩就知道了):

SmartFindViewById 使用_無布局參數(shù)

這是有布局參數(shù)生成的效果:

SmartFindViewById 使用_有布局參數(shù)

2.GenerateFindViewById(很完美的一個(gè)插件)

  • 快捷鍵:Ctrl+Alt+E

  • 作用:

    1)可輸入布局字段、可選中布局文件字段,自動(dòng)生成有id控件相應(yīng)的代碼(如果鼠標(biāo)只是放在布局上,按下快捷鍵,會(huì)彈出輸入框,提示輸入布局;
    鼠標(biāo)雙擊布局,就不會(huì)有彈窗讓你輸入布局了)
    2)自動(dòng)生成onCreate/onCreateView方法
    3)可編輯變量名
    4)可選擇是否生成OnClick代碼
    5)可選擇是否LayoutInflater類型
    6)支持ButterKnife用法(跟ButterKnife原始用法有區(qū)別,慎用)

  • 用法(用途很多,下面就簡(jiǎn)單的來幾張圖演示一下):

Activity如果沒有onCreate方法,會(huì)先生成onCreate方法,再重新操作一次才生成有id控件相應(yīng)的代碼。如下圖所示:

GenerateFindViewById 在 Activity 的使用

Fragment如果沒有onCreateView方法,會(huì)先生成onCreateView方法,再重新操作一次才生成有id控件相應(yīng)的代碼。如下圖所示:

GenerateFindViewById 在 Fragment 的使用

3.LayoutCreator

  • 作用:可以讓你在Activity/Fragment中自動(dòng)生成findViewById等布局相關(guān)初始化代碼,或者在Adapter中自動(dòng)生成ViewHolder代碼。

  • 用法:鼠標(biāo)放在布局文件上,按快捷鍵alt + Insert(或點(diǎn)右鍵選擇Generate / 或點(diǎn)擊菜單Code → Generate ),右鍵選擇LayoutCreator,選擇要生成的變量以及其他設(shè)置,點(diǎn)擊confirm就可以了。

下面這個(gè)圖是以Activity生成代碼作為演示:

LayoutCreator 使用

【缺點(diǎn)】

1) 控件id是什么,用這個(gè)插件生成的控件命名就是什么,命名不規(guī)范。  

2) EditText之類的可以編輯的控件,獲取數(shù)據(jù)的時(shí)候,用的是id名字獲取的,要手動(dòng)改一下。(請(qǐng)看示例圖上有一處報(bào)錯(cuò)的,那個(gè)就是。)  

4.Android Code Generator

  • 用法: 找到布局文件名稱,右鍵,選擇Generate Android Code → 選擇要生成的類型(默認(rèn)是6種類型可供選擇), 選擇生成的代碼存放的路徑以及包名,如果有多個(gè)module或者lib,默認(rèn)的包名是第一個(gè)module的包名(比如我的第一個(gè)module是app,包名是 com.lzw.logutilsdemo )
使用步驟
  • 使用圖解如下:
Android Code Generator 生成 Activity 的代碼
Android Code Generator 生成 Menu 的代碼
  • 【優(yōu)點(diǎn)】根據(jù)布局文件快速生成對(duì)應(yīng)的Activity,F(xiàn)ragment,Adapter,Menu類,點(diǎn)擊Android Studio菜單的file --> setting--> Android Code Generator,可以快速生成文件,也可以復(fù)制代碼到剪切板,很方便。

  • 【缺點(diǎn)】

    (1) 生成的menu需要自己復(fù)制粘貼,很麻煩。
    (2) 每次都要手動(dòng)設(shè)置路徑和包名,很麻煩。
    (3) 生成的點(diǎn)擊事件需要自己去導(dǎo)包,很麻煩。
    (4) 生成的控件如果是button之類的,是這種格式 findViewById(R.id.btn).setOnClickListener(this); 其他的都是很標(biāo)準(zhǔn)的,
    看起來很不美觀,建議改善。
    (5) 生成的類名不規(guī)范,比如我的xml是activity_main2.xml,生成的Activity名字是ActivityMain2Activity,這顯然是多此一舉,
    應(yīng)該把前面那個(gè)Activity去掉,并且調(diào)整一下順序,如果是MainActivity2就對(duì)了。


5.Android Studio Prettify

  • 作用:

    1. 可以將代碼中的字符串寫在string.xml文件中,選中字符串鼠標(biāo)右鍵選擇Extract String resource
Android Studio Prettify 使用
2. 從布局文件中生成對(duì)View的聲明,這個(gè)插件幫助我們自動(dòng)生成findViewById這種代碼。  
(有兩種提示,一個(gè)是View Variables ,一個(gè)是View Fields,如下圖所示:)  
Android Studio Prettify 使用_View Variables
Android Studio Prettify 使用_View Fields

兩者的區(qū)別:View Variables是直接生成局部變量,而且是排成一排;View Fields是生成全局變量并引用。

  • 【缺點(diǎn)】

    1. 多個(gè)Module擁有同名的xml布局文件,有可能會(huì)設(shè)置到別的Module的xml布局文件中。

    2. 生成的代碼都在onCreate或者onCreateView中,可讀性差。

    3. 生成的全局變量的導(dǎo)包是在變量類型上的,而不是在類外面導(dǎo)包,很不規(guī)范。


6.AndroidAccessors 快速生成get set方法,用法: 在代碼中寫完Java Bean對(duì)象后,按下Alt+Insert后選擇AndroidAccessors即可

  • 使用圖解如下:(圖里面第一次用的是AndroidAccessors 演示的,第二次用的系統(tǒng)自帶的演示的)
AndroidAccessors 使用
  • 【缺點(diǎn)】Android Studio自帶有這個(gè)功能,沒必要下載這個(gè)插件

7.Android Layout ID Converter(這個(gè)最麻煩,不推薦使用,僅作為了解)

  • 使用:鼠標(biāo)在布局文件右鍵,在彈出來的菜單當(dāng)中選擇Convert Android layout xml,然后它會(huì)彈出一個(gè)面板,如下所示。選擇要生成的代碼的格式,按OK,這時(shí)它已經(jīng)把生成的代碼復(fù)制在你的粘貼板中,然后你在使用這個(gè)布局文件的Activity或Fragment中,按Ctrl + V 把代碼粘貼出來就可以了。
Android Layout ID Converter 使用
  • 【缺點(diǎn)】需要手動(dòng)粘貼,麻煩;另外只能設(shè)置m前綴,_前綴或者無任何前綴,擴(kuò)展性不好。

8.BorePlugin

  • Android Studio 自動(dòng)生成代碼插件(Android Studio插件搜索LayoutCreator就可以下載,具體請(qǐng)查看下文的LayoutCreator有詳細(xì)講解)

9.Exynap
Exynap 一個(gè)幫助開發(fā)者自動(dòng)生成樣板代碼的 AndroidStudio 插件。只需要一個(gè)快捷方式(Ctrl + Shift + D),輸入命令就可以生成代碼了。

Exynap使用示范

10.MVPHelper
一款I(lǐng)ntellj IDEA 和Android Studio的插件,可以為MVP生成接口以及實(shí)現(xiàn)類,解放雙手。具體請(qǐng)查看
Android Studio插件之MVPHelper,一鍵生成MVP代碼一文

  • 使用圖如下:
MVPHelper插件使用

11.innerbuilder
InnerBuilder 一款I(lǐng)ntellj IDEA 和Android Studio自動(dòng)生成內(nèi)部類Builder代碼的插件。

  • 使用:使用Shift + Alt + BAlt + Insert并選擇Builder ....選擇要包括的字段,然后按OK。
    當(dāng)構(gòu)建器已存在時(shí)生成構(gòu)建器時(shí),插件將嘗試更新它。 它將添加缺少的字段和構(gòu)建器方法,但不會(huì)刪除任何字段或方法。

  • 示意圖:

InnerBuilder 使用示意圖

二、資源文件的管理和自動(dòng)生成有關(guān):

1.svgtoandroid

  • 通過它可以完成從svg文件到Android VectorDrawable的自動(dòng)化轉(zhuǎn)換,傳統(tǒng)做法是網(wǎng)上招一個(gè)工具生成一張svg圖,然后導(dǎo)入到Android Studio。

  • 新版Android Studio自帶的svg轉(zhuǎn)VectorDrawable功能:

Android Studio自帶功能
  • 下面一張圖演示一下這個(gè)插件的用法:
用法介紹
SVG2VectorDrawable 使用

2.Android Holo Colors Generator

  • 通過自定義Holo主題顏色生成對(duì)應(yīng)的【Drawable】和【布局文件】,點(diǎn)擊導(dǎo)航欄的藍(lán)色的 H 符號(hào),就可以了。各種右鍵,各種菜單欄都找了,找不到使用方式,找了半天最后在導(dǎo)航欄有個(gè)藍(lán)色的H符號(hào),太坑了,官方也沒有講解怎么使用。
Android Holo Colors Generator 使用

3.Android Drawable Importer(36M,有點(diǎn)大) 快速批量導(dǎo)入不同大小的drawable文件。

  • 它導(dǎo)入Android圖標(biāo)與Material圖標(biāo)的Drawable ,批量導(dǎo)入Drawable,多源導(dǎo)入Drawable(即導(dǎo)入某張圖片不同分辨率的圖片到對(duì)應(yīng)的drawable目錄下)它可以減少導(dǎo)入圖像到Android項(xiàng)目所需的工作量。

  • 下面看幾張截圖:
    點(diǎn)擊任意一個(gè)文件,右鍵New,然后看最后4 個(gè)選項(xiàng),這就是該插件的4個(gè)功能

點(diǎn)擊任意一個(gè)文件,右鍵New,然后看最后4 個(gè)選項(xiàng),這就是該插件的4個(gè)功能

每個(gè)功能的具體演示

每個(gè)功能的具體演示

4.Android Material Design Icon Generator(14M,這個(gè)插件比較大) 是一個(gè)可以生成【Material Design圖標(biāo)】的插件 ,使用方式,右鍵項(xiàng)目,選擇Material Design Icon,可以選擇icon圖標(biāo),大小,路徑等

*點(diǎn)擊任意一個(gè)文件,右鍵New,選擇Material design icon,示意圖如下:

Android Material Design Icon Generator 使用
  • 選擇設(shè)置要生成的內(nèi)容,點(diǎn)OK
Android Material Design Icon Generator 使用

5.Android Styler 根據(jù)xml自動(dòng)生成style樣式(有點(diǎn)復(fù)雜,不實(shí)用)

*用法:選中要生成樣式的內(nèi)容,復(fù)制到styles.xml里面,右鍵Paste Style或按快捷鍵 Ctrl + Shift + D,然后輸入一個(gè)style的名字,最后在xml里面引用這個(gè)樣式。

Android Styler 使用

6.android-strings-search-plugin
一個(gè)可以通過輸入文字找到strings.xml資源的插件

  • 官方的示意圖如下:
官方的示意圖
  • 【缺點(diǎn)】不能輸入中文,即使是values-cn里面的strings.xml里面的中文也不能識(shí)別
不能識(shí)別中文

7.color-manager
顏色管理

  • 使用也很簡(jiǎn)單:選擇要放置的文件,從顏色面板選一個(gè)顏色,拖動(dòng)到您要復(fù)制顏色名稱/標(biāo)簽的位置。

  • 示例圖:

    1.在xml中使用顏色

在xml中使用顏色

2.不在xml中使用顏色

不在xml中使用顏色

8.AndroidPixelDimenGenerator
根據(jù)輸入的像素來自動(dòng)生成Android項(xiàng)目的dimen.xml文件,主要是為了適配國(guó)產(chǎn)Android TV盒子的各種分辨率。 這個(gè)插件參考自 DimenGenerator

  • 用法:

    1.點(diǎn)擊Tools菜單 → AndroidPixelDimenGenerator
    2.根據(jù)提示輸入分辨率的取值范圍和分辨率
    3.文件生成路徑默認(rèn)在當(dāng)前項(xiàng)目的res,如果有多個(gè)module一般會(huì)在第一個(gè)的res中,如果遍歷不到res文件夾,文件生成路徑為當(dāng)前項(xiàng)目的根目錄。

  • 示意圖:

示意圖

9.android-selector-intellij-plugin
插件生成normal,press和按下水波紋顏色

  • 使用方式:

    1.首先在 res/values/colors.xml添加顏色
    2.res目錄中右鍵選擇New → 選擇 Android Selector(或Ctrl+ N快捷鍵)。
    3.選擇文件名,顏色,press按下顏色和按下水波紋(pressed-v21 )的顏色。

  • 示例圖:

android-selector-intellij-plugin示例圖

下面這幾個(gè)不常用,作為了解:

DimenGenerator
命令行生成dimen

android-selector-chapek

  • 通過資源文件命名自動(dòng)生成 Selector 文件,已經(jīng)4年沒更新,使用過程會(huì)報(bào)錯(cuò)。按照慣例,還是來一張效果圖:
android-selector-chapek的使用

Strings-xml-tools
管理Android項(xiàng)目中的字符串資源,它提供了排序Android本地文件和添加缺少的字符串的基本操作。(3年沒更新了,這個(gè)工具對(duì)Android Studio1.2+以上的都不支持,不推薦使用,僅作了解)


三、格式化xml布局工具:

1.LayoutFormatter 一鍵格式化你的 XML 文件,并且調(diào)整Android布局XML文件屬性順序,并且會(huì)將默認(rèn)屬性調(diào)整到前面,并在行的末尾使用自定義屬性。

用法入下:  

1\. 選擇布局文件右鍵,或者直接在布局文件里面右鍵  -> Refactor -> Reformat Layout XML.  

2.  快捷鍵: ctrl+alt+F  

使用效果對(duì)比圖如下所示:

使用LayoutFormatter前后對(duì)比圖

2.LayoutFormat 快速格式化xml代碼(因?yàn)榭旖萱I和LayoutFormatter 一樣,不建議同時(shí)安裝這兩個(gè)插件)

功能有兩個(gè):

  • 1.批量去格式化layout.xml,點(diǎn)擊layout目錄,右鍵Refactor,選擇LayoutFormat(快捷鍵Ctrl +Alt + F)
layout format 批量格式化xml
  • 2.修改某一個(gè)layout.xml硬編碼,點(diǎn)擊布局名字右鍵Refactor(或者打開布局,鼠標(biāo)放在布局內(nèi)容任意地方
    右鍵Refactor),選擇LayoutFormat(快捷鍵Ctrl +Alt + F)
layout format 使用
  • 使用中可能會(huì)遇到的問題,在導(dǎo)入插件時(shí),windows下可能會(huì)出現(xiàn)插件加載失敗的情況。會(huì)報(bào)下面的錯(cuò)誤:
    cannot create class "com.shang.layoutformat.LayoutFormat" [Plugin: com.shang.android.layoutformat]  
     com.intellij.diagnostic.PluginException: cannot create class "com.shang.layoutformat.LayoutFormat"  
     [Plugin: com.shang.android.layoutformat]...后面還有一大串,在此省略  

解決方式:這是使用的android studio 的運(yùn)行時(shí)的jdk版本低于插件的jdk,換成最新的jre1.8就OK了
( 查看android studio 的 java 版本是在:菜單欄 > Help > About)


四、權(quán)限有關(guān):

PermissionsDispatcher plugin 自動(dòng)生成動(dòng)態(tài)權(quán)限的代碼

  • 用法:

    1. 第1步.打開項(xiàng)目modle里面的build.gradle 右鍵 Generate -> Add PermissionsDispatcher dependencies,添加依賴

    2. 第2步.打開 Activity/Fragment,右鍵 Generate -> Generate Runtime Permissions... 選擇要設(shè)置的權(quán)限,
    輸入注解的方法名,點(diǎn)擊Generate 按鈕

  • 示范圖如下:

PermissionsDispatcher plugin 使用

五、序列化工具:

1.Android Parcelable code generator 自動(dòng)生成Parcelable序列化

Android Parcelable code generator使用

2.Android Parcelable code generator(for kotlin) 使用kotlin開發(fā)時(shí)自動(dòng)生成Parcelable序列化,用法和上述類似。

3.GenerateSerialVersionUID 自動(dòng)生成Serializable序列化。

【注意】默認(rèn)情況下Intellij IDEA是關(guān)閉了繼承了java.io.Serializable的類生成serialVersionUID的警告。如果需要ide提示生成serialVersionUID,那么需要做以下設(shè)置:

  1、setting -> Inspections -> Serialization issues,將其展開后將 serialzable class without "serialVersionUID"打上勾;  
SerializableParcelable Generator的使用
2、將光標(biāo)放到類名上,按 atl+enter 鍵,就會(huì)提示生成serialVersionUID了  

4.SerializableParcelable Generator 自動(dòng)生成Serializable序列化


六、翻譯有關(guān):

1.ECTranslation

  • 這是一個(gè)可以對(duì)AndroidStudio中的英文進(jìn)行翻譯的一個(gè)插件,以后看源碼的時(shí)候,就不用再去查字典了,方便多了,也可自定義快捷鍵,具體的可查看其使用說明。

  • 使用:選擇 Edit -> Translate或者按下Alt + I,即可翻譯。(默認(rèn)的是Meta + I ,windows上沒有這個(gè)快捷鍵,我就改成了Alt + I, 點(diǎn)擊菜單欄File -> Settinigs -> Keymap -> 搜索Translate - > 右鍵 add Keyboard Shortcut. 輸入你想要的快捷鍵即可 )

使用方式
翻譯結(jié)果

2.AndroidLocalizationer
可用于將項(xiàng)目中的 string 資源自動(dòng)翻譯為其他語(yǔ)言

AndroidLocalizationer 使用

3.TranslationPlugin
又一翻譯插件,可中英互譯

  • 說明:需要注冊(cè)申請(qǐng)有道智云翻譯服務(wù),有一定的使用期限,如帳號(hào)到期或欠費(fèi),將無法使用。

TranslationPlugin 使用

4.ReciteWords

  • 這是一個(gè)androidStudio翻譯與陌生單詞記錄插件,你所翻譯的單詞會(huì)被記錄在你當(dāng)前用戶目錄下的ReciteWords.md文件中(如:C:\Users\Bolex\ReciteWords.md)。可以通過Markdown編輯器打開它進(jìn)行學(xué)習(xí)。
  • 使用很簡(jiǎn)單,選中代碼,按下 Alt+Q(也可以自己設(shè)定)。即可翻譯。效果如下:
ReciteWords 使用
  • 翻譯的單詞會(huì)被記錄在當(dāng)前項(xiàng)目的根目錄下的翻譯歷史記錄.md文件中(如:\xxxProject\翻譯歷史記錄.md)??梢酝ㄟ^Markdown打開它。as翻譯后切換Project模式可以在項(xiàng)目文件夾中直接看到。效果如下:
翻譯記錄

七、第三方注解,事件和依賴注入庫(kù)可視化工具:

1.Android ButterKnife Plugin Plus

它是基于android-butterknife-zelezny 1.6開發(fā)的,并在此基礎(chǔ)上新增了以下功能。

  • 1)可以自由選擇是否在當(dāng)前類中對(duì)ButterKnife進(jìn)行初始化,避免了原版本只要使用插件初始化控件會(huì)自動(dòng)在onCreate中進(jìn)行ButterKnife.bind(this)的尷尬。
自由選擇是否在當(dāng)前類中對(duì)ButterKnife進(jìn)行初始化

這樣就可以在基類中進(jìn)行ButterKnife的初始化,不必要每個(gè)類中都要初始化,對(duì)開發(fā)框架的搭建更加方便。

  • 2)在Android Studio的設(shè)置界面,對(duì)在當(dāng)前類中是否強(qiáng)制初始化提供了默認(rèn)值設(shè)置,這樣就可以讓插件使用更符合自己的操作習(xí)慣。
設(shè)置當(dāng)前類中是否默認(rèn)為強(qiáng)制初始化

2.Android ButterKnife Zelezny
配合ButterKnife實(shí)現(xiàn)注解,從此不用寫findViewById,想著就爽啊。在Activity,F(xiàn)ragment,Adapter中選中布局xml的資源id自動(dòng)生成butterknife注解。

使用方式:在布局右鍵Generate --> Generate ButterKnife Injections --> 選擇要命的名(或者快捷鍵Ctrl+Shift+B)  

使用Android ButterKnife Zelezny

3.Remove ButterKnife
把使用ButterKnife的注解快速批量切換成正常findViewbyId

平時(shí)使用ButterKnife的困擾:

1.ButterKnife這個(gè)第三方庫(kù)每次更新之后,綁定view的注解都會(huì)改變,從bind,到inject,再到bindview,  
搞得很多人都不敢升級(jí),一旦升級(jí),就會(huì)有巨量的代碼需要手動(dòng)修改,非常痛苦  

2.當(dāng)我們有一些非常棒的代碼需要拿到其他項(xiàng)目使用,但是我們發(fā)現(xiàn),那個(gè)項(xiàng)目對(duì)第三方庫(kù)的使用是  
有限制的,我們不能使用butterknife,這時(shí)候,我們又得從注解改回findviewbyid  

針對(duì)上面的兩種情況,如果view比較少還好說,如果有幾十個(gè)view,那么我們一個(gè)個(gè)的手動(dòng)刪除注解,  
寫findviewbyid語(yǔ)句,簡(jiǎn)直是一場(chǎng)噩夢(mèng)(別問我為什么知道這是噩夢(mèng))  

所以,這種有規(guī)律又重復(fù)簡(jiǎn)單的工作為什么不能用一個(gè)插件來實(shí)現(xiàn)呢?于是就有大神寫了RemoveButterKnife這個(gè)插件幫你解決這些煩惱。  
  • 使用很簡(jiǎn)單: 點(diǎn)擊菜單欄 Edit → RemoveButterKnife
Remove ButterKnife的使用

4.eventbus3-intellij-plugin
EventBus 導(dǎo)航插件,引導(dǎo) EventBus 的 post 和 event,是在eventbus-intellij-plugin基礎(chǔ)上修改的,支持EventBus 3.X,并且修復(fù)了原插件eventbus-intellij-plugin的bug,使用起來更方便。

eventbus3-intellij-plugin 使用.gif

5.dagger-intellij-plugin
dagger可視化輔助工具,有了它可以讓@Inject對(duì)象與創(chuàng)建它的@Provides方法之間有一個(gè)很清晰的可視化過程?!揪唧w能不能兼容最新的dagger2,還沒研究,博主對(duì)這個(gè)用的少,有興趣的小伙伴歡迎去嘗試,有結(jié)果之后別忘了在博客下面留言告訴我一聲,感謝大家?!?/p>

dagger-intellij-plugin 使用圖解

6.otto-intellij-plugin
otto事件導(dǎo)航工具

  • 從 @Produce 跳轉(zhuǎn)到 @Subscribe 過程
otto-intellij-plugin使用1
  • 從 Event 跳轉(zhuǎn)到 @Subscribe
otto-intellij-plugin使用2

7.databinding-support
一個(gè)可以快速實(shí)現(xiàn)databinding的插件,自從谷歌推出databinding框架以來,有不少人都在使用這個(gè)框架開發(fā),一般情況下在xml里面手寫一些代碼很麻煩,有了這個(gè)插件就要方便很多了,并且可以快速跳轉(zhuǎn)到具體類。

快捷鍵:alt + enter

具體功能如下所示:

  • 雙擊根布局,按alt + enter,選擇 Convert to databinding layout ,布局就被包裹在<layout></layout> 標(biāo)簽里面

    databinding-support plugin1.gif

  • 鼠標(biāo)放在命名空間上,按alt + enter,選擇Add <data> tag, 即:添加<data></data>標(biāo)記

    databinding-support plugin2.gif

  • 雙擊一個(gè)屬性值,按alt + enter,右鍵選擇Wrap with@{} , 即:包裹在@{}里面

    databinding-support plugin3.gif

  • 雙擊一個(gè)屬性值,按alt + enter,右鍵選擇Wrap with@={} , 即:包裹在@{}里面

    databinding-support plugin4.gif

  • 雙擊一個(gè)屬性值,按alt + enter,選擇 Switch to...,在 @{} 和 @={} 之間切換(字母太多,不打了,選擇最后一個(gè)就是的,具體的請(qǐng)看圖),

    databinding-support plugin5gif.gif

  • 在 <data> 標(biāo)簽里面,按alt + enter,右鍵選擇Add <import> tag,就可以添加 <import> 標(biāo)簽

    databinding-support plugin6.gif
    ?imageMogr2/auto-orient/strip)

  • 在 <data> 標(biāo)簽里面,按alt + enter,右鍵選擇Add <variable> tag,就可以添加 <variable> 標(biāo)簽

    databinding-support plugin7.gif

  • 從類跳轉(zhuǎn)到layout布局,這個(gè)很通用,一看就知道。

    databinding-support plugin8.gif


查看下篇可以點(diǎn)擊鏈接查看 開發(fā)工具總結(jié)(8)之圖文并茂全面總結(jié)上百個(gè)AS好用的插件(下)


本文部分內(nèi)容參考文章如下:

  1. 拿走不謝!22 個(gè) Android Studio 優(yōu)秀插件匯總
  2. Android Studio插件整理
  3. Android Studio插件整理
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,401評(píng)論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,011評(píng)論 3 413
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,263評(píng)論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,543評(píng)論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,323評(píng)論 6 404
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 54,874評(píng)論 1 321
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,968評(píng)論 3 439
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,095評(píng)論 0 286
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,605評(píng)論 1 331
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,551評(píng)論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 42,720評(píng)論 1 369
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,242評(píng)論 5 355
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 43,961評(píng)論 3 345
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,358評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,612評(píng)論 1 280
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,330評(píng)論 3 390
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 47,690評(píng)論 2 370

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,579評(píng)論 25 707
  • 現(xiàn)在Android的開發(fā)者基本上都使用Android Studio進(jìn)行開發(fā)(如果你還在使用eclipse那也行,畢...
    零寬度接合閱讀 1,647評(píng)論 0 11
  • Android開發(fā)工具 Android Studio Android開發(fā)環(huán)境,基于IntelliJ IDEA,谷歌...
    奈何心善閱讀 2,351評(píng)論 1 18
  • 作者: Remind博客: https://ydmmocoo.github.io/ 現(xiàn)在Android的開發(fā)者基本...
    菜刀文閱讀 3,577評(píng)論 7 29
  • 內(nèi)觀是一種古老的修行方法,訓(xùn)練心的方法。佛經(jīng)中的《大念住經(jīng)》講的就是佛陀的這種修行方法。這也是引導(dǎo)釋迦摩尼佛開悟的...
    宋瑩驛站閱讀 4,458評(píng)論 0 2