日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android Studio 插件开发详解一:入门练手

發布時間:2024/9/30 Android 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android Studio 插件开发详解一:入门练手 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載請標明出處:http://blog.csdn.net/zhaoyanjun6/article/details/78112003
本文出自【趙彥軍的博客】

系列目錄

Android Gradle使用總結
Android Studio 插件開發詳解一:入門練手
Android Studio 插件開發詳解二:工具類
Android Studio 插件開發詳解三:翻譯插件實戰
Android Studio 插件開發詳解四:填坑
Android Gradle 自定義Task 詳解
Android Gradle 自定義Task詳解二:進階

一:概述

相信大家在使用Android Studio的時候,或多或少的會使用一些插件,適當的配合插件可以幫助我們提升一定的開發效率,更加快樂。例如:

https://github.com/zzz40500/GsonFormat 可以幫助我們從Gson轉化為實體類
https://github.com/avast/android-butterknife-zelezny 可以幫助我們更加方便的使用butterknife
https://github.com/Skykai521/ECTranslation 可以幫助在IDE里面完成英文->中文的翻譯

其他更多好用的插件詳見 Android Studio 常見插件收藏

有句話叫做授人以魚不如授人以漁,不能一直跟隨著別人的腳步去使用插件了,有必要去學習編寫插件,當自己有好的創意的時候,就可以自己實現了。今天的內容就是:自己編寫一個Android Studio插件。

二:前期準備

在正式動工之前,我們需要做一些準備工作,否則后面的內容難以展開。

1、 安裝 jdk ,配置環境變量。安裝過程這里不細說,直接搜索即可。

2、 你需要了解 groovy 的相關知識,包括 groovy 環境搭建,groovy 開發工具了解,groovy 語法了解,這些不在這里細說,具體的知識點可以參考我的博客 Groovy 使用完全解析

三:Android Studio Plugin 開發工具

開發工具我們選擇用 IntelliJ IDEA

下載地址: https://www.jetbrains.com/idea/

在官網中 IntelliJ IDEA 有兩個版本 Ultimate 、Community。Ultimate 是收費版,Community 是免費版。對于收費版有經濟能力的可以考慮,但是我們的插件開發用免費版 Community 就可以了。

IntelliJ IDEA 的安裝過程,這里不細說。

四、新建Plugin Project

在打開的IntelliJ IDEA 中選擇 File | New | Project

groovy 我們暫時不勾選,點擊 Next

最后輸入項目名稱確定,點擊 finish 完成創建

五、配置插件項目

創建好的 Plugin 項目中,會默認生成一個 plugin.xml 的配置文件
其中可以修改該插件項目的相關配置信息,比如插件名稱、插件版本號等,如下圖

各標簽意義具體為:

  • [ id ] 插件id,類似于Android項目的包名,不能和其他插件項目重復,所以推薦使用com.xxx.xxx的格式

  • [ name ] 插件名稱,別人在官方插件庫搜索你的插件時使用的名稱

  • [ version ] 插件版本號

  • [ vendor ] 插件發布者信息,可以添加郵箱鏈接

  • [ description ] 插件描述信息,在這里可以介紹你的插件內容,支持HTML標簽

  • [ change-notes ] 插件版本變更日志,支持HTML標簽

  • [ idea-version ] 對IntelliJ IDEA軟件支持本插件版本號
    分為since-build最低版本 和 until-build最高版本,兩個屬性可以任選一或者同時使用
    官網有詳細介紹 www.jetbrains.org/intellij/sd…
    大體規則為 since-build <= 支持版本 < until-build

  • [ extensions ] 自定義擴展,暫時用不到

  • [ actions ] 具體的插件動作,后面會介紹

配置中填寫的信息,會在別人搜索你插件的時候展現介紹,在 File | Settings | Plugins 中查看已有插件,或者再點擊 Browse respositories 中瀏覽插件中心里其他人發布的插件。當選中一個插件時,右側就可以看到plugin.xml中配置的信息了,同樣這里也可以進行插件的刪除和添加安裝操作,每次操作都需要重啟軟件后才能生效。

六、開始編寫插件

項目創建好時有一個src文件夾,可以在其中File | New …新建文件,
主要有這么幾種針對插件的特殊文件類型

  • GUI Form:表單界面
  • Dialog:對話框
  • XXXComponent:作用域類,其中又分為Application、Project、Module 分為作用于不同范圍
  • Action:處理插件交互行為的類

在項目中的 src 目錄中,New | Plugin Devkit | Action

Action的創建的對話框如下:

  • Action ID: 動作ID,推薦用“插件名.XXAction”的格式
  • Class Name:編寫Action的類文件名
  • Name:動作在菜單選項中展示的名字
  • Description:動作描述
  • Groups:定義這個動作選項所屬的組,比如EditMenu就對應IDE菜單欄上的Edit,CodeMenu就對應菜單欄上的Code
  • Actions:是當前選中Groups下已有的Action動作,比如上圖示如果我們選擇CodeMenu就會展示Code中已有的幾個選項
  • Anchor:用來指定動作選項在Groups中的位置,Frist就是最上面、Last是最下面,也可以設在某個選項的上/下方
  • Keyboard Shortcuts:調用插件Action的快捷鍵,可以不填,要注意熱鍵沖突

創建好Action后,會自動在plugin.xml配置文件的actions標簽中新增一個對應的Action動作信息。

<actions><!-- Add your actions here --><action id="TestID" class="com.Test" text="Test" description="Test"><add-to-group group-id="EditMenu" anchor="first"/><keyboard-shortcut keymap="$default" first-keystroke="ctrl Q"/></action></actions>

注意

  • 這里的信息我們都可以再次修改,但是 class name 修改時要注意和類文件名匹配
  • 可以修改添加多個,即在不同菜單中都可以選擇使用
  • 同一個 group下多個 action 的 id 不能重復.

src下創建好的Action類會默認繼承 AnAction,然后實現 actionPerformed 方法,在方法中添加如下代碼,讓點擊這個 Action 的時候彈出一個輸入框。

import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.PlatformDataKeys; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.Messages;public class Test extends AnAction {@Overridepublic void actionPerformed(AnActionEvent e) {// TODO: insert action logic hereProject project = e.getData(PlatformDataKeys.PROJECT);String txt = Messages.showInputDialog(project,"What is your name?","Input your name",Messages.getQuestionIcon());Messages.showMessageDialog(project,"Hello, " + txt + "!\n I am glad to see you.","Information",Messages.getInformationIcon());} }

寫好代碼后,run運行項目,此時會自動啟動一個新的IntelliJ IDEA項目,這個新項目里就會包含我們剛編寫的插件選項了。

七、打包

比較簡單,直接在頂部主菜單欄中選擇 Build | Prepare Plugin Module XXX For Deployment 即可。

打包前要注意把 plugin.xml 配置文件中的相關信息填寫完整。

打完包后,將會生成 .Jar 包

類似于安卓打包生產的apk,這個時候你就可以把它丟給別人使用了

八、Android Studio 測試插件

在上一章中,我們已經打包好插件 Plugin.jar ,現在我們在 Android Studion 測試一下。

8.1 安裝插件

File --> Settings --> Plugins --> Install plugin from disk

8.2 測試插件

或者按快捷鍵 Ctrl + Q 啟動插件。

九、上傳插件

IntelliJ的插件也有一個市場,是官方提供的,可以在平臺上發布自己的插件
地址:https://plugins.jetbrains.com/

打開插件中心,注冊好賬號,然后選擇 Upload Plugin
將你生成的插件jar包上傳,然后選擇分類,最后確認完成上傳。

十、參考資料

【Android Studio Plugin 插件開發教程】https://juejin.im/post/599f7f546fb9a0248c2de496

下一篇:Android Studio 插件開發詳解二:工具類


個人微信號:zhaoyanjun125 , 歡迎關注
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-r6JBylxU-1604565079383)(http://o7rvuansr.bkt.clouddn.com/weixin200.jpg)]

總結

以上是生活随笔為你收集整理的Android Studio 插件开发详解一:入门练手的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。