此文 = 网上摘抄 + 本人使用经验。
本人使用版本:Android Studio1.5。
主要用途:供本人记性不好的时候翻一翻。
****************************************************************************************
* 安装Android相关
Android SDK在线更新镜像服务器
南阳理工学院镜像服务器地址:
mirror.nyist.edu.cn 端口:80
中国科学院开源协会镜像站地址:
IPV4/IPV6: mirrors.opencas.cn 端口:80
IPV4/IPV6: mirrors.opencas.org 端口:80
IPV4/IPV6: mirrors.opencas.ac.cn 端口:80
上海GDG镜像服务器地址:
sdk.gdgshanghai.com 端口:8000
北京化工大学镜像服务器地址:
IPv4: ubuntu.buct.edu.cn/ 端口:80
IPv4: ubuntu.buct.cn/ 端口:80
IPv6: ubuntu.buct6.edu.cn/ 端口:80
大连东软信息学院镜像服务器地址:
mirrors.neusoft.edu.cn 端口:80
腾讯Bugly 镜像:
android-mirror.bugly.qq.com 端口:8080
腾讯镜像使用方法:http://android-mirror.bugly.qq.com:8080/include/usage.html
--可用2016/6/2-4 sxg
使用方法:
启动 Android SDK Manager ,打开主界面,依次选择『Tools』、『Options...』,弹出『Android SDK Manager - Settings』窗口;
在『Android SDK Manager - Settings』窗口中,在『HTTP Proxy Server』和『HTTP Proxy Port』输入框内填入上面镜像服务器地址(不包含http://,如下图)和端口,并且选中『Force https://... sources to be fetched using http://...』复选框。设置完成后单击『Close』按钮关闭『Android SDK Manager - Settings』窗口返回到主界面;
依次选择『Packages』、『Reload』。
****************************************************************************************
* Android Studio:
android-studio-bundle-141.2422023-windows.exe
Android Studio Installation Location: C:\Program Files\Android\Android Studio
Android SDK Installation Location: C:\Users\123\AppData\Local\Android\sdk
Android SDK was installed to C:\Users\123\AppData\Local\Android\sdk
Android SDK is up to date.
* Android Studio一般一个workspace里只有一个module,因为多个module时,其中一个出错了其他的也运行不了。
导入module:先新建一个module,再File| Import Module| F:\workspace_as\MyApplication\app
即可
这里不是最外层的文件夹,而是app那个文件夹
* Android Studio导入库文件
module右键| Open Module Settings| app| dependences| + -| 上网搜索、加载本地libs文件夹下的、引入module
* Android Studio导入的module,图标不是手机而是咖啡,表示有错,代码有错,软件只划红色波浪线表示。
如果报版本缺失,则新建一个正确的module,把正确module的minSdk/targetSdk/compileSdk/dependencies/等全部拷贝到错误module里即可。或者下载缺少的版本。
凡是module里的build.gradle改动了,都要try again一下,或者工具栏里点同步按钮,同步按钮提示:Sync project with gradle files。
* Android Studio 的build.gradle详细配置:Android Tools Project Site http://tools.android.com/tech-docs/new-build-system/user-guide
* Android Studio导入网上源码
** 先看AS版本号:自己新建一个project,看默认可运行module下配置:module| gradle| wrapper| gradle-wrapper.properties,位置C:\Users\Administrator\.gradle,内容:
#Wed Oct 21 11:34:03 PDT 2015
distributionBase=GRADLE_USER_HOME
--Gradle-用户名-目录:C:\Users\Administrator\.gradle,如果没这目录,自己新建此目录并去网上下好了相应文件,放到这里面。wrapper文件夹是当前存放的gradle版本。
distributionPath=wrapper/dists
--同上
zipStoreBase=GRADLE_USER_HOME
--同上
zipStorePath=wrapper/dists
--同上
distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip
--如果本地没有,就自动下载,自动下载慢,故先下好了放对应文件夹下
** 看目标源码版本号:Sublime Text编辑器
D:\android\ROS 机器人操作系统\shield_teleop-master\shield_teleop-master\gradle\wrapper\gradle-wrapper.properties,若内容不同,则改成当前as的配置。
** AS:完整的工程,导入时用import Project, 不可用import module
** AS找不到v7包:E:\Program Files\Android\gradle\m2repository,确保AS安装目录下有此目录,如果没有,去找个m2repository目录放到这里来
** xml布局无法预览,样式报错Missing styles. Is the correct theme chosen for this layout?
--预览界面Dialog| All| Black.NoTitle.Fullscreen
** AS在线下载报错Unable to access Android SDK add-on list:
E:\Program Files\Android\bin\idea.properties
追加:
disable.android.first.run=true
** AS仓库:工作空间下的build.gradle:
buildscript {
repositories {
jcenter()
--没有这个将报错。老版本源码可能是mavenCentral(),如果报错,改成jcenter()。。
}
AS导入各种包,就是从此仓库里导入,其仓库服务器 网址 https://bintray.com/bintray/jcenter/
build.gradle改变后,要同步一下,点try again或按钮Sync...
** AS老版本源码app| build.gradle:
apply plugin: 'android-library'
新版本:apply plugin: 'com.android.library'
要把android-library改成com.android.library
或android-application改成com.android.application
** AS导入包名可能一样,修改包名即可 app| build.gradle:
defaultConfig{
applicationId "sxg.com.myapplication"
--修改此处包名
}
** AS打包
1. app右键| Open module setting打开Project Structure| app| Flavors标签| + | name:填写此处即可,如baidu
360
xiaomi| Ok
2. app| build.gradle:
productFlavors{
baidu{
manifestPlaceholders (["CATEGORY" : "baidu"])
}
360{
manifestPlaceholders (["CATEGORY" : "360"])
}
xiaomi|{
manifestPlaceholders (["CATEGORY" : "xiaomi"])
}
}
改完后同步,
3. app| AndroidManifest.xml|
内,添加
同步
4. 工具栏Build| Generate Signed APK,选择module,填写签名信息,baidu、360、xiaomi都选上,即打三个包
* Android Studio导入第三方库,找不到AndroidManifest.xml
http://www.oschina.net/question/2544032_2144131
-- 未试效果
只导入library就可以用了 (6个月前) 回复
不要导入根目录,而是导入library目录下的 (6个月前)
只用这个library文件夹就行了 (6个月前)
Pisceslink把library里面的AndroidManifest.xml拷贝出来,还是只用library 这个文件夹?
* 新安装的Android studio,打开时在选择你本地SDK的位置时,可以看到有个2.25GB的SDK要下载,那是因为Studio 1.0默认要下载5.0的SDK以及一些Tools之类的,然后点击”Finish”按钮
(PS: 这个选择并下载2.25G的组件是studio的一个bug,如果网速不行想跳过这步的可以在bin目录的idea.properties增加一行:disable.android.first.run=true就行了,mac平台的右键安装包->Show Package Contents 就找到bin目录了。)
* Android Studio简单配置 http://my.oschina.net/1pei/blog/469674
** File| Settings| Appearance & Behavior| Appearance| UI Options| Override default font...
设置左侧浏览窗口的字体大小,这里设置是左侧浏览窗口、菜单栏、整个软件的系统的字体和大小,不含编辑框的。
** File| Settings| Editor| Colors & Fonts| Font| Save As "sxg", Shows only monspacesd fonts...
改编辑界面的字体和大小。Show only monospaced fonts 表示只显示等宽字体,一般来说,编程等宽字体使用较多,且效果较好。
** File| Settings| Editor| Colors & Fonts| General| Default text 改编辑器背景色
Caret row| background:当前行背景色
** 文件编码
无论是你个人开发,还是在项目组中团队开发,都需要统一你的文件编码。出于字符兼容的问题,建议使用UTF-8 。中国的 Windows 电脑,默认的字符编码为 GBK 。
可通过File-->Setting--> Editor --> File Encodings来设置。建议将 IDE Encoding 、 Project Encoding 、 Properties Fiels 都设置成统一的UTF-8编码。
** 控制一行代码长度
在Android Studio编辑区域右侧会有一条竖线。这条线是用以提醒程序员,一行的代码长度最好不要超过这条线。如果你不想显示这条线,可通过File-->Setting--> Editor --> General -->Appearance,取消勾选 Show right margin (configured in Code Style options)即可 。但建议保留这条线。
显示行号
可通过File-->Setting--> Editor --> General -->Appearance,勾选Show line numbers来设置。
显示空格
可通过File-->Setting--> Editor --> General -->Appearance,勾选Show whitespaces来设置。
** 插件
Android Studio支持插件添加或删除。Android Studio默认自带了一些插件,如果你不使用某些插件,你可以禁用它。
可通过File --> Settings --> Plugins,右侧会显示出已经安装的插件列表,取消勾选即可禁用插件。
我个人禁用了以下插件:
CVS Integration : CVS 版本控制系统,用不到。
GitHub: CVS 版本控制系统,公司内部采用Git控制系统,暂不使用GitHub。
Google Cloud Testing: Google云测试,用不到。
Google Cloud Tools For Android Studio: Google云工具,用不到。
Google Login : Google账号登录,用不到。
hg4idea : Mercurial 版本控制系统,用不到。
Subversion Integration : SVN版本控制系统,用不到。
这里需要注意的是,如果禁用了Google Cloud XXX插件选项,将导致不能使用导入官方样例功能( import sample )。
你可以在 Browse repositories 页面中,搜索插件并安装。
我个人额外安装的插件:
.ignore support : Git 版本控制系统中 .gitignore 文件管理插件。
Git Flow Integration: Git分支管理插件
** 检查更新
Android Studio支持自动检查更新。之前尚未发布正式版时,一周有时会有几次更新。你可以设置检查的类型,用以控制更新类型。
可通过File --> Settings --> Appearance & Behavior --> System Setting --> Updates, 勾选 Automatically check updates for channel ,即开通了自动检查更新。你可以禁用自动检查更新。
下面列表,是更新通道。
Stable Channel : 正式版本通道,只会获取最新的正式版本。
Beta Channel : 测试版本通道,只会获取最新的测试版本。
Dev Channel : 开发发布通道,只会获取最新的开发版本。
Canary Channel : 金丝雀预览发布通道,只会获取最新的预览版本。
以上4个通道中, Stable Channel 最稳定,问题相对较少, Canary Channel 能获得最新版本,问题相对较多。
其他还有编码风格、拼写检查、版本控制、Build Tools、Compiler、Coverage、Debugger等更多设置,可自行选择设置。
* Android Studio运行
点击菜单栏的绿色箭头直接运行,Studio 默认安装会启动模拟器,如果想让安装到真机上可以配置一下。在下拉菜单中选择 Edit Configurations 选择提示或者是USB设备:Android Application| app| Deployment Target Options| Target:...
* 常用功能:在Studio菜单栏的右边有这样几个常用的功能,如图分别是 Gradle同步、AVD Manager、SDK Manager、DDMS
Gradle同步 在你项目运行或者更改Gradle配置的时候都要点击下这个按钮,会下载相应的依赖
AVD Manager 模拟器管理
SDK Manager 就是管理你的SDK版本
DDMS 即 Dalvik Debug Monitor Service,Dalvik调试监控服务。
* SDK更新前:E:\sdk_androidstudio 4.03G,更新后6.31G,单独SDK Manager更新后6.56G,
更新:SDK Manager| Appearance & Behavior| System Settings| Android SDK| SDK Update Sites
* AS下载 http://www.android-studio.org/ (AS社区)
* 别人经验
http://stormzhang.com/devtools/2014/11/25/android-studio-tutorial1
** 出现的错误:The following SDK component was not installed: Android SDK Platform-tools安装出现这个问题怎么解决
-- 打开你的sdk manager,看一下你的Android SDK Platform-tools有没有安装。
** 模拟器 改变用 USB
** 把settings / Editor / File Encodings / 下的 IDE Encoding, Project Encoding, Default Encoding for properties files 全部设置为UTF-8
** 创建模拟器:建议在创建模拟器前把 SDK Manager 中的 Tools、Extras 都更新到最新。
点击 AVD Manager 按钮
| 点击创建按钮Create a virtual device
| 选择一个设备,Phone| Nexus 5,然后Next| 这里选择一个系统版本,Lollipop-21-armeabi-v7a-Android 5.0,由于各位的屏幕尺寸不一样,建议这里Scale一栏选择Auto,然后点击Finish接着可以看到我们已经创建好一个5.0的模拟器了,然后Next
| 运行,选择模拟器启动看下最终效果(模拟器的启动很慢,大家耐心等待)
** AS1.0官方下载地址: http://developer.android.com/sdk/index.html
如果你之前已经使用其他版本的Studio,那么直接覆盖就好了,如果是第一次使用,那么参照Android Studio系列教程一进行安装配置。
于此同时一起更新的还有SDK Tools等,打开SDK Manager进行更新就OK。如果之前有在使用RC版本的Studio,更新覆盖之后应该会出错,那是因为Stuido 1.0默认使用1.0的Gradle插件,所以只需到项目根目录的 build.gradle 更新成如下代码然后同步下就OK了
** 快捷键:Studio强大的地方在于通过设置你可以一直沿用Eclipse风格的快捷键,Settigns -> Keymap 然后就可以选择你想要的快捷键,这里不止可以选择Eclipse,还可以选择 Emacs、Net Beans 等编辑器的快捷键
** 自动导包,到 Settigns -> Editor -> General -> Auto Import -> Java 把以下选项勾上就OK了:
Insert imports on paste: Ask
Show import popup
Optimize imports on the fly
Add unambiguous imports on the fly
** 全文查找 Ctrl + Shift + F
** java.lang.ExceptionInInitializerError http://stormzhang.com/java/2014/12/14/java-lang-exceptionininitializererror/
这个错误是说变量初始化出现问题,通常出现在静态变量尤其是单例模式。
错误代码:
import java.util.HashMap;
import java.util.Map;
public class Foo {
private static Foo foo = new Foo();
private static Map test = new HashMap();
private Foo() {
test.put(1, true);
}
public static Foo getInstance() {
return foo;
}
}
如果你在别的类调用getInstance,就会报错ExceptionInInitializerError。这是因为类加载时不会为实例变量赋值,对象创建时不会为静态变量赋值。我们调用getInstance时,此类就开始加载,加载的时候不会为实例变量赋值,但是会按顺序给静态变量赋值,所以先为foo赋值,然后为test赋值即初始化。但为foo赋值时出现了个小插曲,它会调用构造方法创建一个对象。对象创建时不会为静态变量test赋值,而构造器内却已经调用test,于是报错了。
改为:
private static Map test = new HashMap();
private static Foo foo = new Foo();
构造方法里操作static的变量比较危险,需要注意本类的实例化、static代码块、static变量的加载顺序。
** 安装Gradle http://stormzhang.com/devtools/2014/12/18/android-studio-tutorial4/
那么下载的Gradle到什么地方呢?
Mac上会默认下载到 **/Users/<用户名>/.gradle/wrapper/dists** 目录
Win平台会默认下载到 C:\Documents and Settings<用户名>.gradle\wrapper\dists 目录
你会看到这个目录下有个 gradle-x.xx-all 的文件夹, 如果下载实在太慢,但是又不想的话,可以自己手动到Gradle官网下载对应的版本 http://gradle.org/gradle-download/ ,然后将下载的.zip文件(也可以解压)复制到上述的gradle-x.xx-all 文件夹下,不过还是建议让它直接下载的好。
** Gradle 基本概念 http://stormzhang.com/devtools/2014/12/18/android-studio-tutorial4/
Gradle相关的几个文件一般有如下几个:
project/app/build.gradle
project/extras/ShimmerAndroid/build.gradle
project/gradle/wrapper
project/build.gradle
project/settings.gradle
*** project/app/build.gradle:app文件夹下这个Module的gradle配置文件
// 声明是Android程序
apply plugin: 'com.android.application'
android {
// 编译SDK的版本
compileSdkVersion 21
// build tools的版本
buildToolsVersion "21.1.1"
defaultConfig {
// 应用的包名
applicationId "me.storm.ninegag"
minSdkVersion 14
targetSdkVersion 21
versionCode 1
versionName "1.0.0"
}
// java版本
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
buildTypes {
debug {
// debug模式
}
release {
// 是否进行混淆
minifyEnabled false
// 混淆文件的位置
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
// 移除lint检查的error
lintOptions {
abortOnError false
}
}
dependencies {
// 编译libs目录下的所有jar包
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:21.0.2'
compile 'com.etsy.android.grid:library:1.0.5'
compile 'com.alexvasilkov:foldable-layout:1.0.1'
// 编译extras目录下的ShimmerAndroid模块
compile project(':extras:ShimmerAndroid')
}
*** project/extras/ShimmerAndroid/build.gradle
*** project/gradle/wrapper
*** project/build.gradle
*** project/settings.gradle
****************************************************************************************
抄录过的部分网址:
http://stormzhang.com/devtools/2014/11/25/android-studio-tutorial1/
http://blog.csdn.net/maosidiaoxian/article/details/37030649