android studio 插件
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha
Android ButterKnife Zelezny
ButterKnife是一个专注于Android系统的View注入框架,可以减少大量的findViewById以及setOnClickListener代码,可视化一键生成。PS:效果图就不贴了,打开插件下载地址和源码地址都能看见,而且据多了加载效果图蛮卡的。
插件下载地址:https://plugins.jetbrains.com/plugin/7369?pr=androidstudio
插件源码地址: https://github.com/avast/android-butterknife-zelezny
插件教程:http://blog.csdn.net/dreamlivemeng/article/details/51261170
推荐指数:五星
GsonFormat
GsonFormat是一个快速格式化json数据,自动生成实体类参数的插件。
插件下载地址:https://plugins.jetbrains.com/plugin/7654?pr=androidstudio
插件源码地址:https://github.com/zzz40500/GsonFormat
插件教程:http://blog.csdn.net/dreamlivemeng/article/details/51262538
推荐指数:四星
Android Drawable Importer
为了适应所有Android屏幕的大小和密度,每个Android项目都会包含drawable文件夹。任何具备Android开发经验的开发人员都知道,为了支持所有的屏幕尺寸,你必须给每个屏幕类型导入不同的画板。Android Drawable Importer插件能让这项工作变得更容易。它可以减少导入缩放图像到Android项目所需的工作量。Android Drawable Importer添加了一个在不同分辨率导入画板或缩放指定图像到定义分辨率的选项。这个插件加速了开发人员的画板工作。
插件下载地址:https://plugins.jetbrains.com/plugin/7658?pr=androidstudio
插件源码地址:https://github.com/winterDroid/android-drawable-importer-intellij-plugin
插件教程地址:http://blog.csdn.net/lee_sire/article/details/49684385
推荐指数:三星
android-selector-chapek / SelectorChapek for Android
根据资源自动生成相应的selector。
插件下载地址:https://plugins.jetbrains.com/plugin/7298
插件源码地址:https://github.com/inmite/android-selector-chapek
推荐指数:三星
Android Parcelable code generator
快速实现Parcelable接口的插件。
插件下载地址:https://plugins.jetbrains.com/plugin/7332?pr=
插件源码地址:https://github.com/mcharmas/android-parcelable-intellij-plugin/
插件教程地址:http://blog.csdn.net/kroclin/article/details/40902721
推荐指数:四星
Markdown
Markdown是一种可以使用普通文本编辑器编写的标记语言,通过类似HTML的标记语法,它可以使普通文本内容具有一定的格式。
插件下载地址:https://plugins.jetbrains.com/plugin/5970?pr=
插件文档地址:https://github.com/nicoulaj/idea-markdown
推荐指数:四星
Android Postfix completion
可根据后缀快速完成代码。
插件下载地址:https://plugins.jetbrains.com/plugin/7775?pr=
插件教程地址:http://blog.jetbrains.com/idea/2014/03/postfix-completion/
推荐指数:五星
AndroidAccessors
快速实现get和set方法的插件。
插件下载地址:https://plugins.jetbrains.com/plugin/7496?pr=
插件文档地址:https://github.com/jonstaff/AndroidAccessors
推荐指数:三星
Lifecycle Sorter
可以根据Activity或者fragment的生命周期对其生命周期方法位置进行先后排序。
插件下载地址:https://plugins.jetbrains.com/plugin/7742?pr=
插件源码地址:https://github.com/armandAkop/Lifecycle-Sorter
推荐指数:五星
ADB WIFI 无需root就能wifi调试。
插件下载地址:https://plugins.jetbrains.com/plugin/7856?pr=
插件源码地址:https://github.com/layerlre/ADBWIFI
推荐指数: 五星
ADB Idea
adb 调试工具,Uninstall App、Kill App、Start App、Restart App、Clear App Data、Clear App Data and Restart
插件下载地址:https://plugins.jetbrains.com/plugin/7380?pr=
插件源码地址:https://github.com/pbreault/adb-idea/
推荐指数:五星
CodeGlance
最大的用途:可用于快速定位代码。
插件下载地址:https://plugins.jetbrains.com/plugin/7275?pr=
插件源码地址:https://github.com/Vektah/CodeGlance
推荐指数:五星
JSONOnlineViewer
可实现直接在android studio中调试接口数据,可以选择请求类型,自定义请求头及请求体,json数据格式化后展示
插件下载地址:https://plugins.jetbrains.com/plugin/7838?pr=
推荐指数:四星
FindBugs-IDEA
通过FindBugs帮你找到隐藏的bug及不好的做法。
插件下载地址:https://plugins.jetbrains.com/plugin/3847?pr=
插件源码地址:https://github.com/andrepdo/findbugs-idea/tree/master
推荐指数:四星
jimu Mirror
这是一个可以让你在真实的设备上迅速测试布局的插件。jimu Mirror允许在设备上预览随同编码更新的Android布局。
插件下载地址:https://plugins.jetbrains.com/plugin/7517?pr=
插件教程地址:http://www.itnose.net/detail/6204426.html
推荐指数:四星
JavaDoc
添加注释,可自定义模板。
插件下载地址:https://plugins.jetbrains.com/plugin/?idea_ce&pluginId=7157
插件源码地址:https://github.com/setial/intellij-javadocs
推荐指数: 五星
Android strings.xml tools
可以用来管理Android项目中的字符串资源。它提供了排序Android本地文件和添加缺少的字符串的基本操作。虽然这个插件是有限制的,但如果应用程序有大量的字符串资源,那这个插件就非常有用了。
插件下载地址:https://plugins.jetbrains.com/plugin/7498?pr=
插件源码地址:https://github.com/constantine-ivanov/strings-xml-tools
推荐指数:五星
Robotium Recorder
Robotium Recorder是一个自动化测试框架,用于测试在模拟器和Android设备上原生的和混合的移动应用程序。Robotium Recorder可以让你记录测试案例和用户操作。你也可以查看不同Android活动时的系统功能和用户测试场景。
插件下载地址:https://plugins.jetbrains.com/plugin/7513?pr=
插件官方网址:http://robotium.com/
推荐指数:四星
Android Holo Colors Generator
通过自定义Holo主题颜色生成对应的Drawable和布局文件
插件下载地址:https://plugins.jetbrains.com/plugin/7366?pr=
插件源码地址:https://github.com/jeromevdl/android-holo-colors-idea-plugin
推荐指数:四星
lint-cleaner-plugin
删除未使用的资源,包括String字符串,颜色和尺寸。 这是一个Gradle插件,所以如何配置可以去github的源码上看。
插件源码地址:https://github.com/marcoRS/lint-cleaner-plugin
推荐指数:四星
codota
该网站搜集了大量的代码,号称超过700W的代码实例。提供了chrome和as插件。
插件下载地址:https://plugins.jetbrains.com/plugin/7638?pr=
插件官方网址:https://www.codota.com/
推荐指数:五星
ECTranslation
一个androidstudio上面的翻译插件(将英文翻译为中文)。 暂时只能以jar的方式安装。jar下载地址以及使用方法在github上的源码地址上都有详细描述。
插件源码地址:https://github.com/Skykai521/ECTranslation
推荐指数:四星
---
Android Studio入门到精通 - 工匠若水 - 博客频道 - CSDN.NET http://t.cn/RqgfM5E
android Studio开发调试使用
Android Studio调试其实也非常方便,一般问题直接通过AS的DDMS的Logcat就可以搞定。AS支持类似Eclipse的DDMS的所有功能。这里要说的是疑难问题的调试方式,即断点调试。
首先先编译好要调试的程序。
如上图2所示在行号处点击设置断点。然后如1所示点击开启调试会话。
如上图所示,IDE下方出现Debug视图,1指向的是现在调试程序停留的代码行,2区域是程序的方法调用栈区。在这个区域中显示了程序执行到断点处所调用过的所用方法,越下面的方法被调用的越早。由此顺序想必有些Android深入功底了解一点Android系统启动流程的就知道这几个方法咋回事,怎么到Activity的onCreate的。哈哈,说到系统了。不扯了。3是一些调试按钮,快捷键放在上面直接会显示。4和5是一些变量观察区。
上图中:
点击1指向的按钮,程序向下执行一行,如果当前行有方法调用,这个方法将被执行完毕返回,然后到下一行。
点击2指向的按钮,程序向下执行一行。如果该行有自定义方法,则运行进入自定义方法(不会进入官方类库的方法)。
点击3钮在调试的时候能进入任何方法。
点击4的作用是如果在调试的时候你进入了一个方法(如debugFunc),并觉得该方法没有问题,你就可以使用4跳出该方法,返回到该方法被调用处的下一行语句。值得注意的是,该方法已执行完毕。
点击5指向的按钮后,你将返回到当前方法的调用处重新执行,并且所有上下文变量的值也回到那个时候。只要调用链中还有上级方法,可以跳到其中的任何一个方法。
----
我在家,怎么远程操作公司的电脑?
回家好好看,好好做笔记。 到公司就用电脑不停的练习实验测试。
不要在公司,做那些看呀,搜索啊 什么的事。
---
Android Studio构建系统基础
基础知识
项目创建成功后会自动下载Gradle,这个过程特别慢,建议FQ。下载的Gradle在Windows平台会默认在 C:\Documents and Settings\<用户名>.gradle\wrapper\dists目录,这个目录下有个gradle-x.xx-all的文件夹,。也可以自己手动到Gradle官网下载对应的版本,然后将下载的.zip文件(也可以解压)复制到上述的gradle-x.xx-all 文件夹下。
每一个Module都需要有一个gradle配置文件,语法都是一样,唯一不同的是开头声明的是apply plugin。注意区分不同位置的build.gradle文件。
AS的工程根目录下的build.gradle文件:
buildscript { //设置脚本的运行环境
repositories { //支持java依赖库管理(maven/ivy等),用于项目的依赖
//mavenCentral() //仅仅是不同的网络仓库而已
jcenter() //推荐使用这个仓库
}
//依赖包的定义。支持maven/ivy、远程、本地库、单文件,前面定义了repositories{}jcenter库,使用jcenter的依赖只需要按照
//类似于com.android.tools.build:gradle:1.0.0-rc2,gradle就会自动的往远程库下载相应的依赖。
dependencies {
classpath 'com.android.tools.build:gradle:1.0.0-rc2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
//多项目的集中配置,多数构建工具,对于子项目的配置,都是基于继承的方式。Gradle除了提供继承方式设置子项目,还提供这种配置
allprojects {
repositories {
jcenter()
}
}
AS的工程根目录下的settings.gradle文件:
include ':app' //module
include ':my_lib' //module(build as lib)
AS的工程根目录下的Module的build.gradle文件(此处以一个简单的Lib module的gradle为例):
//plugin在AS里取值一般为'com.android.library'或者'com.android.application'
apply plugin: 'com.android.library' //构建为lib
android {
compileSdkVersion 17 //编译需要SDK版本
buildToolsVersion "19.1.0" //SDK Manager确定本地安装该版本才可以
defaultConfig {
minSdkVersion 8 //最小版本
targetSdkVersion 17 //目标版本
}
buildTypes { //编译项
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies { //依赖支持
compile 'com.android.support:support-v4:18.+'
}
Gradle打包APP签名
默认情况下,debug被配置成使用一个debug keystory。debug keystory使用了默认的密码和默认key及默认的key密码。debug构建类型会自动使用debug签名配置。在你的Module的build.gradle文件中添加:
android {
......
signingConfigs {
myConfig{
storeFile file("yanbober.keystore")
storePassword "gradle"
keyAlias "gradle"
keyPassword "gradle"
}
}
buildTypes{
release {
runProguard true
zipAlignEnabled true
// 移除无用的resource文件
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.myConfig
}
}
}
虽然经常使用项目根目录的相对路径作为keystore的路径,但是也可以使用绝对路径,尽管这并不推荐(除了自动创建出来的debug keystore)。运行gradle clean gradle build即可生成签名混淆对齐的app。
Gradle构建Android应用多渠道包(批量打包)
Android应用的发布需要面对各种各样的市场,我们称之为渠道。通常作为开发者我们需要知道应用是从哪个渠道下载的。这种统计信息一般常用的是百度统计或者友盟统计。这里举例时使用友盟统计为例说明问题。原理是Gradle的Manifest Merger。
在AndroidManifest.xml里配置所谓的PlaceHolder。
<meta-data
android:name="CHANNEL"
android:value="${CHANNEL_VALUE}" />
在模块build.gradle文件的defaultConfig加上PlaceHolder,作用是声明CHANNEL_VALUE是可替换值的PlaceHolder,同时为其设置yanbober默认值。
android {
......
defaultConfig {
......
manifestPlaceholders = [ CHANNEL_VALUE:"yanbober" ]
}
}
在模块的build.gradle文件里添加ProductFlavors配置。ProductFlavors其实就是可定义的product特性,与Manifest Merger使用就可以在一次编译过程中产生多个具有自己特性配置的版本。下面这个配置的作用就是为每个渠道包产生不同的CHANNEL_VALUE的值。
android {
......
defaultConfig {
......
manifestPlaceholders = [ CHANNEL_VALUE:"yanbober" ]
}
productFlavors {
yanbober{}
wandoujia{}
xiaomi{}
baidu{}
}
productFlavors.all { flavor ->
flavor.manifestPlaceholders = [ CHANNEL_VALUE:name ]
}
}
批量生成多渠道包:进入工程目录下运行gradlew assembleRelease。可以看到编译一共产生了4个apk,分别对应在productFlavors段定义的4个渠道。反编译打开AndroidManifest.xml就会发现CHANNEL这一段的配置已经被修改。
生成单个渠道包:打开AS的Gradle Tasks面板模块有很多任务,直接双击对应的耽搁渠道任务生成对应的apk。用命令行单独生成xiaomi渠道使用gradlew assemblexiaomiRelease就好了。
好了,Gradle的基本情况就说到这,具体可以阅读官网或者查阅其他资料,Gradle的使用需要经验的积累。
-----------