Android Studio2.x版本无法自动关联源码的解决方法
Android Studio2.x版本无法自动关联源码的解决方法
在学习android开发过程中,对于一个不熟悉的类,阅读源码是一个很好的学习方式,使用andorid studio开发工具的SDK Manager管理工具可以十分方便的下载SDK源码,打开SDK Manager工具,下载源码界面如下图所示:

在对应的SDK版本中可以下载SDK源码。
安卓源码下载完成后,在类名上按住command键,点击鼠标左键会跳转进对应源码文件,如果是Windows系统,使用按住control键点击鼠标左键。如果android studio的版本为2.0以上,需要注意,尽管下载了源码文件,可以在跳转源码的时候,会报错误找不到源码 Sources for 'Android API 23 Platform' not found,并且会跳转类对应的class文件。如下图:

我猜想出现这样的原因是android studio2.x工具的一个小bug,下载源码后,它没有自动对源码路径进行关联,我们可以手段添加源码路径来解决这个问题。
1.检查andriod sdk源码是否下载成功:首先进入andorid sdk路径下的sources目录,如果其中有源码文件,说明andorid sdk的源码文件已经下载成功。在OS系统中,这个路径一般是:~/Library/Android/sdk/sources。
2.在android studio偏好设置jdk.table.xml文件中添加源码路径,这个文件在android studio开发工具的配置目录中,路径如下:
在Windows系统中,一般为:系统盘:\Users\username\.你的android studio名称及版本\config\options
在OS系统中,一般为:~/Library/Preferences/你的android studio名称及版本/options
打开jdk.table.xml文件后,找到对应SDK版本的源码路径配置标签,将第一步中检查的源码文件路径添加进入,如下图:

3.完全关闭android studio开发工具,重新启动,这次可以成功跳进源码了,Have fun。
Android Studio2.x版本无法自动关联源码的解决方法的更多相关文章
- Android Eclipse 里面依赖工程无法关联源码解决方案
android开发中,debug调试是一种非常实用快速定位问题的办法.eclipse中多工程依赖状态下会偶现无法debug的困扰,debug中的代码执行时会报出如下错误 The JAR of thi ...
- Win7系统Matlab2013a安装.m文件不自动关联到MATLAB.exe解决方法
1.在matlab命令行中输入以下代码: cwd=pwd; cd([matlabroot '\toolbox\matlab\winfun\private']); fileassoc('add',{'. ...
- Myeclipse如何关联源码
Myeclipse版本:Myeclipse2014 关联源码前要下载对应的源码,如本例的dom4j-1.6.1.jar,则去下载对应的源码dom4j-1.6.1.zip 如果做的是web项目,就要将该 ...
- Android Studio 关联源码问题
Android Studio 点击某个类查看源码有时候会出现如下情况 这种情况并不是每个项目都会出现这种情况,那是因为项目的编译版本不同,有的关联了Sources中的源码,而有的没有. 下面说一下具 ...
- android eclipse关联源码,以及源码(代码)以及jar查看软件
1.eclipse关联源码 步骤一:自已百度下载相应版本的源码,我这里是4.2也就是API=17的版本. 步骤二:找到你安装sdk的目录, G:\Program Files\adt-bundle-wi ...
- Android关联源码support-v4,v7,v13源码(转)
在Android实际开发过程中往往会遇到使用v4,v7或v13兼容包中的一些类如ViewPager,Fragment等,但却无法关联源码. 在网上搜索之后,有很多办法,这里只向大家介绍一种,我用的觉得 ...
- Maven引入依赖后自动下载并关联源码(Source)
好多用 Maven 的时候会遇到这样一个棘手的问题: 就是添加依赖后由于没有下载并关联源码,导致自动提示无法出现正确的方法名,而且不安装反编译器的情况下不能进入方法内部看具体实现 . 其实 eclip ...
- Android Studio -- 关联源码
1,昨天刚把SDK升级到25,然后准备开始 新的一年码代码,结果发现查看源码的时候出现了一堆的“ throw new RuntimeException("Stub!");” 网上搜 ...
- databinding在android studio2.3版本后不再默认支持使用
databinding在android studio2.3版本后不再默认支持使用,需要在项目的app-build-gradle的 dependencies 里面添加 apt 'com.android. ...
随机推荐
- HTML5之语义标签
在HTML5标准中,新加了几个用于增添页面语义的标签,这些标签有:article.section.nav和aside等.与别的大多数标签不 同,浏览器在解释渲染这些标签的时候仅仅把它作为普通的div块 ...
- 结构化查询语言(SQL)数据类型
简要描述一下结构化查询语言中的五种数据类型:字符型,文本型,数值型,逻辑型和日期型. 字符型 VARCHARVS CHAR VARCHAR型和CHAR型数据的这个差别是细微的,但是非常重要.他们都是用 ...
- 如何使用jcraft 模拟SFTP登陆
大家如果熟悉Linux系统话,对ssh,sftp,scp等命令非常熟悉.ssh是一个安全协议,用来在不同系统或者服务器之间进行安全连接.ssh 在连接和传送的过程中会加密所有的数据. 而今天我要介绍的 ...
- 省市二级联动(原生JS)
代码如下: <html> <head> <meta charset="UTF-8"> <title>省市二级联动</title ...
- Struts1 action重定向跳转 带参数
ActionForward forward = new ActionForward("kmRentalMain.do?method=view&fdId="+id);forw ...
- JavaScript-cookie是客户端本地,持久存储用户私密数据的文件
navigator:封装浏览器配置信息的对象 cookieEnabled:判断浏览器是否启用cookie cookie是什么:cookie是客户端本地,持久存储用户私密数据的文件 plugins:包含 ...
- ECMAScript6的Promise对象
1. 概念 Promise对象用于异步(asynchronouss)计算,一个Promise对象代表着一个还未完成,但预期完成的操作. 2. 出现原因: 1) 如果你需要通过ajax发送多次请求,而 ...
- 第十三章:降维:主成分分析PCA
- jQuery - plugin 代码模型
1.扩展 jQuery 的全局函数,主要以 $.xxx() 的形式调用 (function($) { $.myFunction = function(array) { // code } })(jQu ...
- git 笔记
查看某个提交的修改:git show commitID 查看某个提交修改涉及的文件:git show commitID --oneline --name-status 清理掉没有入库的文件,并把修改了 ...