Anroid Studio 教程干货
常见设置
a)在Setting中,修改主题、修改工程目录的字体大小。
b)在Setting中,显示行号:
c)设置注释模板,File–>Other Setting –> Default Setting
d)在Default Setting中,设置xml格式,全部勾选,否则换行会有点问题
e)在Default Setting中,修改编码方式
导入第三方主题
网站:http://www.ideacolorthemes.org
下载的文件是个jar包,选择File–>Import Settings 选项,然后选择对应的jar包即可
自动提示的设置
a)如下图:
b)系统提示时,修改大小写敏感,First letter是首字母大小写敏感,将鼠标处修改成None即不区分大小写
修改成Eclipse的快捷键风格
由于修改成Eclipse风格后,有少部分快捷键不能使用需要手动修改,下面是一些快捷键的修改。
a)修改Eclipse中的alt + / 的效果;在搜索框中输入:class name completion,然后选择“add keyboard shortcut”,修改快捷键为alt + / 即可。
b)Eclipse快捷键风格中,如何通过Ctrl + 左键单击 查看方法或类的源码,如下图,此处是鼠标相关的快捷键,注意!!!!!
在Click Pad 处 按住Ctrl + 鼠标左键单击即可,可以在preview看到设置好的快捷键,然后选择OK
拷入java代码的冲突提醒
做如下选择,这样当从其他地方拷入代码时,可以自动导入引用,如果有冲突,会进行询问(Ask)
使用Genymotion
a)首先需要安装Genymotion,然后需要AS中添加插件,操作:File–>Setting–>搜索plugins,在界面中点击下方的 “Browse repostories”,在弹出的窗口搜索“Genymotion”,然后安装即可。
b)Genymotion的插件安装成功后,会出现如下图标,点击打开即可,首次运行需配置
安装模拟器的路径
导入Eclipse工程
Android Studio,点击左上角File–>New–>Import Project,选择对应Eclipse工程即可。
系统会根据Eclipse工程生成一个AS的工程的副本,在生成过程中会删除一些不识别的 文件,同时会生成对应的gradle文件。
程序从运行状态,直接切换到Debug状态
点击下图所示的按钮即可。
创建和删除library
New–> New Module ,选择Android Library如下所示:
删除Module,首先应该在Project Structure中删除,然后再右键删除;否则不能删除。
导入library和jar
在Module下的build.gradle文件中的显示,如下图
同步gradle文件
每当gradle文件有所修改时,需要点击下图中的Sync Now 进行同步。
Gradle编译失败,会出现如下所示部分,可以点击Try Again重新编译
Gradle概念和介绍
一种构建工具、以Groovy为基础、主要面向Java。
build.gradle对应的图形界面就是Project Structure,导入jar包在这两个地方都可以进行,效果相同;通过这种方式导入的jar包不在libs下面,在External Libraries下
gradle文件简介:
在工程下的build.gradle墙内仓库
默认是jcenter()
jcenter对应的网址:https://bintray.com/bintray/jcenter
可以修改映射仓库的地址,改为墙内的网址:
maven{ url ‘http://maven.oschina.net/content/groups/public/‘}
修改工程目录下的gradle文件,如下图:
buildscript中的仓库是在gradle编译中需要下载的gradle依赖文件的仓库。
allprojects中的仓库是工程中的jar包下载的仓库
创建签名文件并打包
操作Build –> Generate Signed APK,然后在下图中选择“Create new”,然后按步骤操作即可
选择Next,出现如下窗口,然后选择Build Type和渠道即可。
使用Gradle命令进行打包
右击工程,选择“Open Module Setting”,配置如下信息:
注意:该窗口的所有标签对应相应Module下的gradle文件,所有操作会在对应gradle文件中生成相应代码;使用AS创建的签名文件的扩展名是jks,不再是keystore了
配置打包类型及其签名信息,如下图:
上述操作完成后,会在build.gradle中生成对应的配置代码
然后在AS自带的命令行中输入
gradlew clean (先clean)
gradlew assembleRelease进行打包
ubuntu上不能直接输入gradlew命令,需要输入 ./gradlew
点击运行按钮(绿色箭头)运行的是:assembleDebug!!!
生成的apk在build/output文件夹下,有两个文件:app-release.apk、app-release-unaligned.apk(该文件是没有经过zipalign优化的apk)
gradlew的原理
a)gradlew会调用gradle wrapper 找到系统中对应版本的gradle,如果没有该版本则进 行下载,然后执行assembleRelease,可以屏蔽gradle不同版本信息;如果需要直接使 用gradle需要配置环境变量
b)工程目录下gradle/wrapper下有gradle-wrapper.jar和gradle-wrapper.properties两个 文件,后者是一个配置文件,该文件配置了所依赖的gradle的相关信息,该文件中的 distributionUrl是对应的gradle版本信息,当程序运行是会检查该版本是否存在,如果 不存在则需要到对应网站下载该版本gradle!!!配置文件如下所示:
注意:在File–>Setting–>Gradle中配置的信息只是针对使用AS才生效,如果使用命令 行(包括AS自带的命令行)则没有效果
aar包的使用
在gradle中类型为library的Module会自动在该Module下的build\outputs\aar目录下 生成aar包
然后在AS中选择File–>New–>New Module,做如下选择,依赖的添加同library
AS中导入so库
1)、AS默认导入so文件放入哪里?
放在src/main目录下面,在 该目录下创建目录jniLibs,这个jniLibs目录就是AS默认的so文件存放的位置,不需要在gradle文件中做其他配置。
2)、jar包默认放在module根目录下的libs目录下
3)、 如果jniLibs不放在默认目录下,放在与libs同级目录下,此时需要在module下的build.gradle文件的android{}中添加如下代码:
此时设置jniLibs的目录为”jniLibs“;当前目录是module的根目录!!!
默认配置:jniLibs.srcDirs (‘src/main/jniLibs’)
65535问题
参考链接:http://blog.csdn.net/piscesq329a/article/details/49888477
多渠道打包
a)清单文件中将android:value设置成变量
b)在gradle文件中进行变量定义
c)然后直接使用命令打包即可,会在build/output目录下生成不同apk。
导入Github中的源码
1)导入之前需要查看gradle-wrapper.properties文件
查看依赖版本,可以更改成本地已经存在的版本,避免下载
2)导入工程(Import Project),此时仍然显示下载,使用任务管理器强制停止AS,到dists/gradle下面找到该工程创建的文件夹,将其中的内容删除,将其他文件夹中的内容拷入之后,再重新导入,这样就不再下载
3)导入后,可能会出现如下问题:
由于已经修改过gradle的版本,所以不会是版本问题,则应该是插件问题,
到工程根目录下的build.gradle文件中,修改dependencies中的“com.android.tools.gradle”的版本号,可参考自己工程的版本号!!改完之后,点击右上角的”Try Again“
4)接下来可能会遇到的问题:build tools的问题
修改所有Module下的build.gradle文件中的buildToolsVersion版本,改成自 己电脑中有的版本,可参考自己创建的工程;最好和compileSdkVersion一致!
5)接下来可能会遇到的问题:
解决方案:旧版本使用的仓库是:mavenCentral(),需要改成最新的jcenter()
apply plgin是标志module的类型的,不应该出现在工程根目录下 的build.gradle中,而且其格式应该使用最新的
apply from不知道什么作用,可以删除!!
删除其他不太对劲的东西
6)编译通过;Reload工程,运行程序,可能出现问题:
原因:多个module使用了相同的包名
7)接下来的问题:在该类中找不到布局文件
原因:由于res有对应的布局,所以应该是R文件的问题,上个问题中修改包名, 可能多修改了部分内容,此时应该检查R文件的引用
解决方案:修改R文件的引用
8)参考链接:
http://blog.csdn.net/onlysnail/article/details/45115093
9)总结:出现的问题大部分是gradle相关的,主要集中在build.gradle中,需要对 gradle有较为全面的理解
其他问题
AS自带命令行空指针问题:
描述:报空指针
原因:由于win10更新了命令行,导致AS无法调用,IDEA有同样问题
解决方案:
打开系统命令行,右击标题栏选择“属性”–>“选项”–>“使用旧版控制台”,然后重启系统即可
参考链接
Gradle基础:http://stormzhang.com/devtools/2014/12/18/android-studio-tutorial4/
Gradle 修改 Maven 仓库地址(一劳永逸):http://www.yrom.net/blog/2015/02/07/change-gradle-maven-repo-url/
转自:http://blog.csdn.net/piscesq329a/article/details/49473215
Anroid Studio 教程干货的更多相关文章
- Xamarin Anroid开发教程之验证环境配置是否正确
Xamarin Anroid开发教程之验证环境配置是否正确 经过前面几节的内容已经把所有的编程环境设置完成了,但是如何才能确定所有的一切都处理争取并且没有任何错误呢?这就需要使用相应的实例来验证,本节 ...
- Xamarin Anroid开发教程之下载安装Xamarin
Xamarin Anroid开发教程之下载安装Xamarin Xamarin在过去安装时都会检查系统中是否安装了前面所提供的内容.而后来,Xamarin安装时只提供安装步骤,其它内容都需要读者自己下载 ...
- Android studio教程
Android studio教程: http://jingyan.baidu.com/season/44062
- 程序员,一起玩转GitHub版本控制,超简单入门教程 干货2
本GitHub教程旨在能够帮助大家快速入门学习使用GitHub,进行版本控制.帮助大家摆脱命令行工具,简单快速的使用GitHub. 做全栈攻城狮-写代码也要读书,爱全栈,更爱生活. 更多原创教程请关注 ...
- Anroid Studio入门
转载:http://www.apkbus.com/forum.php?mod=viewthread&tid=255186&extra=page%3D1%26filter%3Dautho ...
- Android Studio教程从入门到精通
最新2.0系列文章参考: Android Studio2.0 教程从入门到精通Windows版 - 安装篇Android Studio2.0 教程从入门到精通Windows版 - 入门篇Android ...
- Ubuntu1404配置jdk-12.0.2并安装Android Studio教程
最近在学习Android Studio 移动应用程序开发,但Android Studio好像对win10不太友好,所以小帅想在Ubuntu上安装Android Studio.为此小帅还去网上找了相关教 ...
- Android Studio 教程
Android Studio 超详细安装教程 http://dkylin.com/archives/2019/android-studio-installation.html Android Stud ...
- Android Studio教程--给Android Studio安装Genymotion插件
打开Android Studio,依次[File]-[Settings] 在打开的settings界面里找到plugins设置项,点击右侧的“Browser..”按钮 在搜索栏里输入genymotio ...
随机推荐
- Mutual Information
Mutal Information, MI, 中文名称:互信息. 用于描述两个概率分布的相似/相关程度. 常用于衡量两个不同聚类算法在同一个数据集的聚类结果的相似性/共享的信息量. 给定两种聚类结果\ ...
- Codeforces 977D Divide by three, multiply by two(拓扑排序)
Polycarp likes to play with numbers. He takes some integer number xx, writes it down on the board, ...
- Go语言实现:【剑指offer】机器人的运动范围
该题目来源于牛客网<剑指offer>专题. 地上有一个m行和n列的方格.一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之 ...
- Python3(八) 枚举详解
一.枚举其实是一个类 建议标识名字用大写 1.枚举类: from enum import Enum class VIP(Enum): YELLOW = 1 GREEN = 2 ...
- [MacOS]MacOS字体文件位置
$ cd /System/Library/Fonts $ ls Apple Braille Outline 6 Dot.ttf Noteworthy.ttc SFCompactText-Regular ...
- iOS开发基础--C语言简述(一)
先占个坑,回来再补 需要的运行环境,自行搜寻,工具不止一种,不详细叙述. C语言是一门非常重要的编程语言,与硬件底层直接相关,很多语言到最后的接口封装都会选择C语言,因而C语言一直很受欢迎,也务必掌握 ...
- 常见CSS3选择器和文本字体样式汇总
常见的CSS3选择器包含:常用基本.属性.伪类.层级(组合)选择器,具体使用情况建议先阅读css选择器四大类:基本.组合.属性.伪类对于选择器的使用有一个基本了解,选择器的作用在于通过它找到元素,并且 ...
- MySQL面试笔试题集-BAT
01.MySQL技术特点? Mysql数据库软件是一个客户端或服务器系统,支持各种客户端程序和库的多线程SQL服务器.不同的后端.广泛的应用程序编程接口和管理工具 02.MySQL默认端口号? 330 ...
- kali帮助
kali help Attention 这是我N久前学习kali时自己打的东西,不保证没有纰漏啊…… 网址 kali:https://www.herojd.com/forum.php?mod=view ...
- Python123——测验1: Python基本语法元素 (第1周)程序题2总结
一.题目 二.解析 (1)官方解析 (2)个人解析 def m1(): """ 法1:暴力破解""" s1 = input('') s2 = ...