热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Windows下Eclipse导入android系统源码

这里说的导入系统源码是android整个系统源码,而不仅仅是sdk源码,下面会讲两种导入方式,其中方式1作为我个人是非常熟悉的,就是经常关联sdk源码的方式,不过实际操作,发现方式一成功后

  这里说的导入系统源码是android整个系统源码,而不仅仅是sdk源码, 下面会讲两种导入方式, 其中方式1作为我个人是非常熟悉的,就是经常关联sdk源码的方式, 不过实际操作, 发现方式一成功后, 并不能查看android系统源码. 但下面仍然会讲方式一, 至于为什么, 在本文的结尾会有说明.


方式一:

1, 在Eclipse的android工程中, 找到用来编译项目的sdk的jar文件, 如下图:


2, 右击上图中的jar, 会出来一个菜单栏, 如下图:



3, 点击Properties, 会出现如下图:



4, 到这里基本上是差不多了, 点击External Folder, 然后找到系统源码的文件夹就OK了. 但是这种方法关联后, 不一定能够看到系统源码. 因此不建议使用这种方法.  这种方法通常是用来关联SDK源码.




方式二:

1, 在使用第二种方式前, 首先要做一件事, 在android系统源码中找到.classpath文件, 然后再把这个文件拷贝到android系统源码的根目录中.  classpath文件的具体路径是 android-5.0.1_r1\development\ide\eclipse. 如图:




2, 在eclipse里面创建一个java工程, 创建工程时, 把Use default location这个选项去掉, 如下图:


3, 然后点击Browe, 找到电脑上android 系统源码所在位置, 点击确定, 再接着把这个工程创建出来, 那么完整的android系统源码就成功的导入到eclipse里面了. 因为操作简单. 具体就不截图了.




总结:  回到文章开头的问题, 当我按照方式一来关联Android系统源码, 关联成功后, 在我自己创建的Android工程中, 我去查看Android系统源码, 并不能看到, 那么这种方式不管用吗? 于是我放弃了方式一, 转而着手方式二, 直接创建java项目, 然后把Android系统源码 导入到Eclipse里面, 导入成功后, 这个时候要看Android系统源码, 那么就可以在这个java工程中看到了. 可是, 在这个时候, 当我在我自己的andorid工程中看源码的时候, 忽然发现能够看到整个android系统源码了. 那么也就是说方式一并非没有用. 而是要在完成方式二后, 方式一才有用. 那么也就是说, 上面的方式一和方式二, 在实际操作中, 应该把方式二放在第一步, 把方式一放在第二步, 那么这样就能够在我们自己创建的android工程中看到Android系统源码, 也可以在自己创建的java项目中查看Android系统源码


推荐阅读
  • Android中将独立SO库封装进JAR包并实现SO库的加载与调用
    在Android开发中,将独立的SO库封装进JAR包并实现其加载与调用是一个常见的需求。本文详细介绍了如何将SO库嵌入到JAR包中,并确保在外部应用调用该JAR包时能够正确加载和使用这些SO库。通过这种方式,开发者可以更方便地管理和分发包含原生代码的库文件,提高开发效率和代码复用性。文章还探讨了常见的问题及其解决方案,帮助开发者避免在实际应用中遇到的坑。 ... [详细]
  • 本文详细介绍了如何在Java Web服务器上部署音视频服务,并提供了完整的验证流程。以AnyChat为例,这是一款跨平台的音视频解决方案,广泛应用于需要实时音视频交互的项目中。通过具体的部署步骤和测试方法,确保了音视频服务的稳定性和可靠性。 ... [详细]
  • 本文旨在解决 MySQL 无法连接到 localhost 的常见问题,并提供详细的步骤来确保 MySQL 服务正确启动和配置。 ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • 解决Only fullscreen opaque activities can request orientation错误的方法
    本文介绍了在使用PictureSelectorLight第三方框架时遇到的Only fullscreen opaque activities can request orientation错误,并提供了一种有效的解决方案。 ... [详细]
  • 在分析Android的Audio系统时,我们对mpAudioPolicy->get_input进行了详细探讨,发现其背后涉及的机制相当复杂。本文将详细介绍这一过程及其背后的实现细节。 ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • 如何在Eclipse中配置不同文件类型的默认打开方式
    在Eclipse中配置不同文件类型的默认打开方式是一项常见的需求。本文将指导您如何轻松地修改Eclipse中各种文件类型的默认打开方式。具体步骤如下:首先,启动Eclipse,然后依次点击【Window】--【Preferences】进入设置界面。接下来,您可以根据需要选择相应的文件类型,并指定其默认打开的编辑器或工具。通过这些设置,您可以显著提升开发效率和工作便捷性。 ... [详细]
  • 在探讨Hibernate框架的高级特性时,缓存机制和懒加载策略是提升数据操作效率的关键要素。缓存策略能够显著减少数据库访问次数,从而提高应用性能,特别是在处理频繁访问的数据时。Hibernate提供了多层次的缓存支持,包括一级缓存和二级缓存,以满足不同场景下的需求。懒加载策略则通过按需加载关联对象,进一步优化了资源利用和响应时间。本文将深入分析这些机制的实现原理及其最佳实践。 ... [详细]
  • Java测试服务器调试指南详细介绍了如何进行远程调试,并深入解析了Java Xdebug参数的使用方法。本文首先概述了Java内置的调试功能,重点介绍了JDB这一类似于GDB的强大调试工具。通过实例演示,读者可以掌握在测试环境中高效调试Java应用程序的技巧,包括配置远程调试环境和优化调试参数,以提高开发效率和代码质量。 ... [详细]
  • Netty框架中运用Protobuf实现高效通信协议
    在Netty框架中,通过引入Protobuf来实现高效的通信协议。为了使用Protobuf,需要先准备好环境,包括下载并安装Protobuf的代码生成器`protoc`以及相应的源码包。具体资源可从官方下载页面获取,确保版本兼容性以充分发挥其性能优势。此外,配置好开发环境后,可以通过定义`.proto`文件来自动生成Java类,从而简化数据序列化和反序列化的操作,提高通信效率。 ... [详细]
  • C盘无法格式化的原因及解决方法
    本文探讨了C盘无法格式化的原因,并提供了详细的解决方案,帮助用户顺利进行系统维护。 ... [详细]
  • Amoeba 通过优化 MySQL 的读写分离功能显著提升了数据库性能。作为一款基于 MySQL 协议的代理工具,Amoeba 能够高效地处理应用程序的请求,并根据预设的规则将 SQL 请求智能地分配到不同的数据库实例,从而实现负载均衡和高可用性。该方案不仅提高了系统的并发处理能力,还有效减少了主数据库的负担,确保了数据的一致性和可靠性。 ... [详细]
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
  • 在使用SSH框架进行项目开发时,经常会遇到一些常见的问题。例如,在Spring配置文件中配置AOP事务声明后,进行单元测试时可能会出现“No Hibernate Session bound to thread”的错误。本文将详细探讨这一问题的原因,并提供有效的解决方案,帮助开发者顺利解决此类问题。 ... [详细]
author-avatar
yu2531958135
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有