如何使用Android Studio开发调试Android源码

如何使用Android Studio开发调试Android源码,第1张

一、修改Android

Studio(以下简称AS)的内存配置

因为在导入源码时需要消耗大量内存,所以先修改IDEA_HOME/bin/studiovmoptions中-Xms和-Xmx的值。文档中使用的是748m,

可自行修改。

二、配置AS的JDK、SDK

在IDE中添加一个没有classpath的JDK,

这样可以确保使用源码里的库文件

三、生成导入AS所需配置文件(ipr)

①编译源码(为了确保生成了java文件,如Rjava;如果编译过,则无需再次编译)

②检查out/host/linux-x86/framework/目录下是否有idegenjar

如果idegenjar不存在,执行:

mmm

development/tools/idegen/

在501的源码中会生成resjava的文件夹,导致idegenjar运行时抛FileNotFoundException,这是idegen的代码不够严谨造成的。

我的分享里有修改这个bug的patch,或者直接使用我分享的idegenjar。

③执行

development/tools/idegen/idegensh

等待出现类似下面的结果:

Read

excludes:

5ms

Traversed

tree:

44078ms

这时会在源码的根目录下生成androidipr和androidiml两个IntelliJ

IDEA(AS是基于IntelliJ

IDEA社区版开发的)的配置文件

④在AS中打开源码根目录下新生成的androidipr

四、解决源码中跳转错误问题

①为当前工程设置正确的SDK和JDK

②设置'Modules'的依赖

先将所有依赖删掉,只留下上图'1'所指向的两个(注意:这里删除全部只是为了方便。如果确实用到了jar,在将它们的路径添加进来就可以了

如:501的ContactsCommon用到了geocoder-29jar和libphonenumber-62jar)

点击上图中'2'指向的'+'并选择上图'3'指向的'Jars

or

directories'选项,依次将frameworks和external文件夹添加进来

五、DEBUG源码

可以通过给刚导入的工程在'Modules'中添加'Android

Framework'来让AS将它作为一个Android工程,从而方便调试代码

在d出的选择进程(Choose

Process)对话框中,勾选显示所有进程,选择要DEBUG的代码所在的进程,点击OK即可

六、其它

代码中很多地方提示Call

requires

API

Level

x

出现这个问题是因为AS将工程当做安卓应用程序工程了,且源码中没有指定minSdkVersion

只需在源码根目录加一个声明minSdkVersion的AndroidManifestxml文件即可(分享了一个AndroidManifestxml)。

也可以考虑使用buildgradle来解决该问题。

你要是找那种第三方的im sdk来直接接入他们的接口就比较简单,例如即构科技,他们家做这块都有20年了,你只需要根据它们提供的一整套搭建即时通讯的示例源码以及详细的搭建流程来 *** 作就可以了,而且还支持Android、iOS、Windows、macOS、Web、小程序、Flutter、uniapp等平台。

以前初学时,花了三天学了一下Java基础,了解了大部分的概念和用法,java小程序是在eclipse下跑的。想着手Android开发时,问了一下前辈,前辈推荐eclipse加adt,理由只有一个,网上相关的教程多,年幼无知的我就入了配置环境的坑,eclipse版本老,相关插件为更新,sdk manger还得**使用,安装adt 、sdk等……前后纠结了很久,吃了不少苦头,今天又被一个奇怪的错误阻碍了学习进度,于是下定决心,告别eclipse。

刚上手Android Studio ,这和eclipse根本不是一个级别的爽,eclipse像老爷爷,AS像是时髦轻盈的少女,爱不释手。初学者不要把宝贵的光阴浪费在看不懂的配置各种环境,安装各种插件上了~~而且Android studio的教程也不少嘛,极客学院上有视频,优酷也有,此外第一行代码的第二版也是使用的AS的IDE,所以,为什么还要继续入eclipse的坑呢?

Android studio,google亲自 *** 刀研发的,亲儿子,功能强大。当然,刚开始用,还是需要花一些时间学习的,另外google不再支持eclipse插件更新,当然eclipse可以了解,熟悉会用就行,日常开发还是用AS。

慢就先不说了额,有时候这种慢是致命的,慢到死,慢到要启用任务管理器来关闭

快捷键不方便,比如重要的代码提示和关文件

界面比较混乱

文件系统把简单的搞复杂化了,眼花缭乱对项目资源不太好管理,一次只能打开一个项目在eclipse,项目是任我摆布,到了as,我是被项目搞来搞去

网上对android studio的吹捧似乎都如出一辙,缺乏生命力,好像是机器人般的千篇一律的声音

无非就是界面漂亮,漂不漂亮这是个人看法好不好,我就觉得ducula好难看一片乌漆摸黑找不着北还有说提示强大,它那提示按键都不好使,只能回删等他出现要不就是慢慢打生怕打快了错过提示也有说管理好,一次打开一个---这,你确定要说是个优点吗至于中间字提示这个优势确实是个优势(其实eclipse也可以通过号模糊查询)

界面改动是比较大,但是漂亮我就不敢苟同了

其实很多人就是跟风,怕别人嘲笑自己out,或者为了装得自己比较前卫具有发现的眼光,所以也傻傻地跟着起哄,又或者有的写手为了赚取点击量而毫无节 *** 地吹捧,就怕你们无动于衷殊不知无形中不知是被自己催眠了还是被谷歌催眠了,eclipse是开源的免费的,是孤儿,而android studio是含着金钥匙出生豪门,有着个IT巨头超级富豪的老爸为它撑腰贴金推广造势为的就是要夺取平台新天下

其实我想说的是:为什么大家都不敢说android studio 垃圾,而是一片的吹嘘拍马的声音,这本身就不正常

我的态度是,既然现在两个都可以用,何不按自己习惯继续用着eclipse呢,假如以后eclipse败给android studio了,用不了了再用也不迟啊,转换个开发工具也要不了多久时间,而且那时候就没有这些选择的困难与矛盾了事实上,安卓平台会不会衰落还是个热门话题呢,搞不好安卓都没了,谁还关心android studio呢但是据我的估计,安卓不至于强大到完全淘汰eclipse而达到一统天下的局面

对于想用android studio的人来说,我表示鼓励,你们是拥抱新事物的人,尽管去尝试就好;

而对于不想用的人来说,完全不用有压力,如果eclipse killed android studio,那正好,如果反之,那说明你所使用的安卓技术在IT界的权重上升了,也不失为一件好事~

先忘掉快捷键,找个快速入门教程,写几个小程序找下感觉,用个两三天就会觉得还可以,然后慢慢熟悉下菜单和快捷键,我eclipse用了3年多了,现在用android studio几个月了,整体感觉还是相当不错的,值得花精力。

从另一个角度说,android studio是大趋势,估计迟早是要转过来的,现在studio的完成度已经相当高了,大功能上的缺陷也就还不支持ndk,一般的应用开发我觉得已经可以尝试用studio了。

以上就是关于如何使用Android Studio开发/调试Android源码全部的内容,包括:如何使用Android Studio开发/调试Android源码、android studio实现聊天功能难吗、Android初学者是选择eclipse还是Android studio等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9664253.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存