版权声明:欢迎转载,转载请注明出处;http://blog.csdn.net/angcyo

上一篇,我们成功导入并运行了 贝壳单词 项目. 
这篇文章, 带大家一起读一读源码.


打开 贝壳单词 项目,定位到文件 AndroidManifest.xml

我们今天的一切,都从这里开始;(这个文件是项目的入口)

1–>首先注意到的是权限: 
这里大致可以了解到,项目会进行一些什么操作; 
比如网络访问啊, 读写磁盘啊, 调用振动器啊, 等

2–>其次看到一个application标签 
这个标签就代表,整个android应用程序, 其下面包含很多个Activity(活动),就表示应用程序中,有很多个活动. 
application标签,有且必须有一个; 
可以看到 android:name=”.App”;这条属性,这说明程序自定义了application;(这很关键, 因为程序运行的时候,会首先调用这个类….所以我们有必要先查看一下究竟..看看这个类,都做了啥).

很简单, 只是定义了一个全局的Context 对象; private static Context sContext; 
但是…App是继承LitePalApplication类的, public class App extends LitePalApplication ; 
所以我们还必须看一下LitePalApplication做了什么:

这是一个库项目中的类, 我们无法查看. 没关系,这里我们只要知道,他使用到了库中的application就行了.

继续回到 AndroidManifest.xml 文件:

可以看到: 静态声明了5个Activity, 2个广播接收器receiver, 1个服务service 
其中.ui.SplashActivity 就是程序最主要的入口Activity:

因为他有2个过滤器:

            <intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
  • 1
  • 2
  • 3
  • 4

以后,大家看到这2个过滤器,就要知道,这是程序的 主要Activity入口, 就是桌面上点击启动之后,看到的第一个界面.

3–>程序主界面

进行了初始化操作, 访问网络操作, 最后跳转到了:MainActivity.class 类中;

显然,接下来要查看MainActivity.class类了:

到这里, 我们已经知道了怎么开始阅读别人的项目了.

如果需要继续学习,就需要大家按照自己的目的, 自己的想法去学习了

阅读android项目源码的更多相关文章

  1. 如何阅读Android系统源码-收藏必备

    对于任何一个对Android开发感兴趣的人而言,对于android系统的学习必不可少.而学习系统最佳的方法就如linus所言:"RTFSC"(Read The Fucking So ...

  2. 最新app源码下载:200款优秀Android项目源码

    200款优秀Android项目源码!菜鸟必备!Android开发又将带来新一轮热潮,很多开发者都投入到这个浪潮中去了,创造了许许多多相当优秀的应用.其中也有许许多多的开发者提供了应用开源项目,贡献出他 ...

  3. Android项目源码分享

    http://blog.csdn.net/gao_chun/article/details/47263063 Android项目源码分享 给大家分享几个Android开发项目源码,大部分功能相信可以在 ...

  4. 网上的很多Android项目源码有用吗?Android开发注意的地方。

    在Android项目开发中,我们可以在网上看到很多项目源码,大部分也不是很精致, 比如 06.Android阿福多媒体播放器开发教程+源码 还有什么浏览器源码. 那么这些有用吗?  价值在哪里? 精致 ...

  5. 如何阅读android framework源码

    但如果想深入的了解Android系统, 那么可以看下我的一些简单的总结. 知识 Java Java是AOSP的主要语言之一. 没得说, 必需熟练掌握. 熟练的Android App开发 Linux A ...

  6. android项目源码

    [置顶] Android精品开源项目整理_V20140221(持续更新中..) 让我们回顾下2013年有哪些精品资源:Android精品开源项目整理_V20131115(持续更新中..) 引言:   ...

  7. [转]如何阅读android framework源码

    但如果想深入的了解Android系统, 那么可以看下我的一些简单的总结. 知识 Java Java是AOSP的主要语言之一. 没得说, 必需熟练掌握. 熟练的Android App开发 Linux A ...

  8. [转]大牛们是怎么阅读 Android 系统源码的

    转自:http://www.zhihu.com/question/19759722 由于工作需要大量修改framework代码, 在AOSP(Android Open Source Project)源 ...

  9. Android项目源码界面超级华丽的仿QQ最新版本

    这是一个我们比较熟悉的一款应用,高仿专仿最新QQ应用源码,也是一个高仿QQ最新版本的项目,界面超级华丽,使用了大量的自定义控件,项目里实现了部分功能,例如WIFI-FTP(把手机变成FTP服务端,可以 ...

随机推荐

  1. ural 1073.Square Country(动态规划)

    1073. Square Country Time limit: 1.0 secondMemory limit: 64 MB There live square people in a square ...

  2. 1.(1)编写一个接口ShapePara,要求: 接口中的方法: int getArea():获得图形的面积。int getCircumference():获得图形的周长 (2)编写一个圆类Circle,要求:圆类Circle实现接口ShapePara。 该类包含有成员变量: radius:public 修饰的double类型radius,表示圆的半径。 x:private修饰的double型变量

    //接口 ShapePara package d922B; public interface ShapePara { int getArea(); int getCircumference(); } ...

  3. Xib学习之(1)

    刚学xib就遇到一个问题 最后还是朋友帮忙解决了 就是在设置约束时,设置的是左右约束为0,可是最后弄出来却是左右边界都空出来了16 解决办法: 具体原因应该是iOS8 之后UIView又多了个属性:l ...

  4. (1)Two Sum--求数组中相加为指定值的两个数

    Given an array of integers, find two numbers such that they add up to a specific target number. The ...

  5. 制作、烧写根文件系统,使用NFS,编译使用驱动程序

    制作YAFFS2.JFFS2文件系统映象文件制作文件系统映象非常简单.① 制作YAFFS2文件系统映象文件对于YAFFS2,要用到mkyaffs2image工具,它在/work/linux/tools ...

  6. [VC++]用CTime类得到当前日期、时间、星期,格式化(详细讲解)

    用CTime类得到当前日期.时间.星期,格式化(详细讲解)2009/05/12 09:48 A.M.① 定义一个CTime类对象 CTime time; ② 得到当前时间 time = CTime:: ...

  7. leetcode83,删除有序链表中的重复元素

    Given a sorted linked list, delete all duplicates such that each element appear only once. For examp ...

  8. python常用操作

    1.进入python命令行: #python >>>... 退出python命令行 >>>exit() #... 2.运行1.py 直接运行1.py: #pytho ...

  9. 使用SQLCMD在SQLServer执行多个脚本 转载

    出处不明 概述: 作为DBA,经常要用开发人员提供的SQL脚本来更新正式数据库,但是一个比较合理的开发流程,当提交脚本给DBA执行的时候,可能已经有几百个sql文件,并且有执行顺序,如我现在工作的公司 ...

  10. android cordova h5总结

    最近项目 替换页面  把80%页面替换成h5了. 首页h5页面可以放在android本地.增加访问速度.节省用户流量 把服务器上的  js代码 压缩成zip格式  放在asset目录.当应用安装时候 ...