AndroidStudio 插件

       使用Android studio或者idea開發的朋友確定都安裝了許多插件,好比咱們經常使用的GsonFormat、ButterKnife等,那麼咱們如何編寫本身的插件呢,固然也能夠發佈到官網全部人均可以查找到你開發的插件,那麼咱們這邊文章爲你們講解Android studio插件開發之插件開發helloworld。html

1.下載開發工具 

開發studio插件咱們使用的工具是idea,尚未idea的朋友,可移步之idea官網http://www.jetbrains.com/,下載完成直接安裝便可。 android

2.新建項目

 打開idea,新建項目,選擇IntelliJ Platform Plugin,第一次新建須要設置sdk的位置,選擇位置便可 
api


點擊Next,輸入項目名稱,點擊finish等待項目建立完成
bash


項目建立完成後,目錄結構以下所示
ide


接下來,咱們主要看plugin.xml中的內容
工具


id即爲插件的id開發工具

name爲插件的名稱測試

version爲插件的版本號ui

vendor中的內容爲你的郵箱以及公司名稱、官網等idea

這些信息在用戶下載插件時都會展現給用戶的

第二部分 如圖


description即爲插件的描述,也就是插件時幹什麼的,change-notes時產檢更新說明

第三部分 如圖



extensions即爲產檢的擴展註冊 action就是動做註冊,也就是說咱們安裝完這個插件後,在哪裏使用快捷鍵是什麼,在哪一個菜單下 

3.新建Action

 右擊src目錄選擇新建(建議先新建包在包內新建action避免出現null的錯誤),選中action(idea版本不一樣action的位置可能不一樣),我使用的是2016,以下圖:


以後填寫先關配置信息,groups這裏選擇的是code,也就是插件出如今code菜單下

設置快捷鍵的時候,儘量不和經常使用的快捷鍵衝突,個人設置以下圖所示:


設置完成後點擊ok

咱們首先在Action中的代碼中編寫以下代碼,讓選中文字以後彈出dialo,代碼以下:

@Override
public void actionPerformed(AnActionEvent e) {
    // TODO: insert action logic here
    // 獲取選中內容
    final Editor mEditor = e.getData(PlatformDataKeys.EDITOR);
    showDialog(mEditor, "這是一個測試插件", 5);
}
 
public static void showDialog(final Editor editor, final String result, final int time) {
    ApplicationManager.getApplication().invokeLater(new Runnable() {
        public void run() {
            JBPopupFactory factory = JBPopupFactory.getInstance();
            factory.createHtmlTextBalloonBuilder(result, null, new JBColor(new Color(116, 214, 238), new Color(76, 112, 117)), null)
                    .setFadeoutTime(time * 1000)
                    .createBalloon()
                    .show(factory.guessBestPopupLocation(editor), Balloon.Position.below);
        }
    });
}

複製代碼

接下來咱們點擊run按鈕,會自動打開一個新的idea窗口,咱們在生成的新的idea窗口中,選中code菜單,咱們看到在第一行有一個hello的按鈕就是咱們的插件。 咱們選中點擊hello,能夠看到彈出一個小框框,顯示出了信息,那麼說明helloworld這個插件就測試成功了,圖下圖所示:


4.生成jar插件

咱們能夠將插件生成jar

點擊build,選中生成插件,以下圖所示


以後咱們能夠看到項目目錄下生成了hello.jar,咱們在android中選擇plugins菜單,選擇本地安裝插件選擇生成的jar,就能夠在android studio中使用咱們的插件了。 那麼咱們發佈咱們的插件讓全部用戶均可以使用呢,咱們繼續往下看。

 5.發佈插件

 發佈插件能夠參照官方文檔 

www.jetbrains.org/intellij/sdk/docs/basics/getting_started/publishing_plugin.html  

此外,你們確定也好奇爲何彈出框那樣寫,其實他也是有本身的一套開發api的,可根據本身需求自行查看 www.jetbrains.org/intellij/sd…

像一些翻譯或者是已經有的插件就不必循序漸進的模仿了,若是你們在開發途中,忽然想到若是該有一款**插件該多好啊,那麼能夠和我取得聯繫,讓咱們一塊兒創造更加便捷的插件。

相關文章
相關標籤/搜索