首先,我们可以了解,Android程序可以由一个或者多个Activity组成,每个Activity之间并没有很紧密的联系。

我们可以在自己的程序中调用其他的Activity,特别是自己的代码之外生成的其他Activity。

比如,Android提供的发短信、打电话的Activity:

//打电话

startActivity(new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+phonenumber));

//发短信

startActivity(new Intent(Intent.ACTION_SENDTO,Uri.parse("smsto:"+phonenumber));

从这一点上看,其实Android程序是由多个Activity按照一定得到次序拼装起来的,并通过一些后台的数据传递,让Activity之间比较好的衔接起来了。

说了这么多呢,其实想想表示的是,Android没有像java、c那样具有main函数来作为程序的入口,Android程序提供的是入口Activity,而不是入口函数。

|

当我们新建一个Android Project的时候,系统会默认新建一个MainActivity,它实际就是入口Activity了,从哪里可以看出来呢?

AndroidManifest.xml 文件中定义了程序中所有Activity:

package="com.dys.test">

android:allowBackup="true"

android:icon="@drawable/ic_launcher"

android:label="@string/app_name"

android:theme="@style/AppTheme">

android:name=".MainActivity"

android:label="@string/app_name">

从上面的代码中可以看出,action节点中的 android.intent.action.MAIN 表明它所在的Activity是整个程序的入口,而category中的 android.intent.category.LAUNCHER 意思是把这个Activityg归属到加载器类,即把这个Activity标注为自动会加载和启动的Activity,这样程序启动时候就先加载这个Activity了。

Android的main方法,Android程序没有main函数,那Android程序的执行入口在哪儿?相关推荐

  1. android导航实现方法研究现状,地图匹配算法设计 - 基于Android的车载导航系统的研究与设计...

    3.2 地图匹配算法设计 地图匹配以某个车辆位置点或某段车行轨迹曲线作为待匹配样本,以该点或该轨迹曲线附近的所有道路上的位置点或道路曲线作为模板,通过待匹配样本或模板间的匹配,选择相似度最高的匹配样本 ...

  2. vue组件加载完成之后执行方法_Vue.js实现ready函数加载完之后执行某个函数的方法...

    Vue.js实现ready函数加载完之后执行某个函数的方法 发布于 2020-7-10| 复制链接 摘记: vue.js 教程Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面 ...

  3. android wear升级方法,LG G Watch官方工具包刷Android wear5.1.1教程(附刷机包)

    Android wear5.1.1版本已经开始推送更新了,不过很多LG G Watch的用户已经迫不及待想要升级到5.1.1版本了,下面小编就为大家介绍一下LG G Watch官方工具包刷Androi ...

  4. 微信小程序利用云函数获取小程序码(二维码) 将buffer流转换为图片

    最近在做毕设,有一个获取小程序码绘制分享海报的需求,因为需要小程序码的数量较多的业务场景,所以只能采用后端生成返回给前端调用或者云开发调用. 生成小程序码的两种方式 HTTPS调用 需要后端生成返回给 ...

  5. 微信小程序引用php函数,微信小程序Page中data数据操作和函数调用详细介绍

    这篇文章主要介绍了微信小程序 详解Page中data数据操作和函数调用的相关资料,需要的朋友可以参考下 微信小程序 详解Page中data数据操作和函数调用 Page() 函数用来注册一个页面.接受一 ...

  6. python统计程序运行时间-如何方便地统计 Python 程序每一个函数、每一行代码执行所花的时间?...

    当然是用 line_profiler 堪称神器 贴个官方例子片段 这个功能应该是你想要的吧: Line # Hits Time Per Hit % Time Line Contents ======= ...

  7. 漫画:程序员太难了!为什么 Java 中的 main 方法必须是它?

    作者 | 漫话编程 来源 | 漫话编程(ID:mhcoding) 在 Java 中,想必所有人都不会对 main 方法感到陌生,main 方法是 Java 应用程序的入口方法.程序运行时,要执行的第一 ...

  8. .NET Core 控制台应用程序使用异步(Async)Main方法

    C# 7.1 及以上的版本允许我们使用异步的Main方法. 一.新建一个控制台应用程序 二.异步Main方法 我们直接将Main方法改为如下: static async Task Main(strin ...

  9. 错误: 在类中找不到 main 方法, 请将 main 方法定义为:public static void main(String[] args)否则 JavaFX 应用程序类必须扩展javafx.ap

    最近在使用eclipse编写java程序时遇到这样一个问题: 错误在类中找不到main方法,请将main方法定义为 public static void main(String[] args)否则 J ...

  10. 今天终于搞懂了:为什么 Java 的 main 方法必须是 public static void?

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 来源:suo.im/6v9d64 为什么 main 方法是 ...

最新文章

  1. WhatsApp用户数突破10亿 每天发送消息420亿条
  2. adc量化单位_单片机外围模块漫谈之二,如何提高ADC转换精度
  3. Xamarin.Forms单元控件Cell
  4. mysql数据导入、导出
  5. ACM-ICPC 2018 南京赛区网络预赛 L. Magical Girl Haze 最短路+分层图
  6. m4a录音文件损坏修复_电脑录音软件哪个好?分享这款录音软件,供你参考!
  7. XML能否替换HTML,XML DOM
  8. NAU8810相关问题
  9. 样条 开源_成年人在开源社区中是什么样的?
  10. hashmap扩容机制_图文并茂,HashMap经典详解!
  11. 昨晚做了个flash
  12. sql lab 爆库 心得
  13. A1086. Huffuman树
  14. 容器技术Docker K8s 35 容器服务ACK基础与进阶-应用与发布管理
  15. cad插入块_CAD施工制图常见问答(一)
  16. MindSpore:自然语言处理(NLP)—分词技术
  17. 解决鼠标右键失效(响应极慢)
  18. java 模拟库存管理系统
  19. 去掉SecureCRT菜单栏上的打印按钮
  20. 泽风大过:改过自新;坎为水:坦然面对

热门文章

  1. python3注册全局热键
  2. 1.投骰子的随机游戏
  3. 小福利,通过python利用百度ai实现图片识别
  4. 学编程需要什么基础?
  5. AlphaGo 超快棋遍虐人类高手(职业棋手讲解及大量网友评论)
  6. adb install 时 日志输出Performing Streamed Instal 一直卡着不动,处理方法
  7. html表格纵向变横向,html表格,表头竖向固定,横向滚动的例子
  8. 简单几步解决ie打不开闪退的问题 亲测有效
  9. 笔记本计算机屏幕亮度暗,笔记本屏幕100%还是暗,win10电脑亮度调节失灵
  10. 谷歌人工智能产生自我意识了!聊天记录曝光!机器真的只是机器吗?