zoukankan      html  css  js  c++  java
  • Android程序的入口点是什么,不是Main()吗

     

    很多初入Android开发的网页可能不知道Android程序的入口点是什么,不是main()吗,当然我相信回复onCreate的在字面上不算错,但是你们想的是Activity中的onCreate 方法吧,其实真正的入口点entrypoint是什么。

      Android使用Google Dalvik VM,相对于传统Java VM而言有着很大的不同,在Sun的Java体系中入口点和标准c语言一样是main(),而每个Android程序都包含着一个Application 实例,一个Application实例中有多个Activity、Service、ContentProvider或Broadcast Receiver。因为大部分的应用都包含Activity所以,说很多人认为是Activity的onCreate,但是你没有发现你的工程中有多个 Activity吗? 你可能没有见过没有Activity的Android应用吧。

       其实在android.app.Application这个包的onCreate才是真正的Android入口点,只不过大多数开发者无需重写该类,他的继承关系如下图:

    java.lang.Object
       ↳ android.content.Context
         ↳ android.content.ContextWrapper
           ↳ android.app.Application

    android.app.Application类包含了4个公开的方法

    void  onConfigurationChanged(Configuration newConfig)
    void  onCreate()  //这里才是真正的入口点。
    void  onLowMemory()
    void  onTerminate()

      所以真正的Android入口点是application的main,你可以看下androidmanifest.xml的包含关系就清楚了,并不是每个应用都必须有Activity的。

  • 相关阅读:
    如何开发一款浏览器[转]
    粒子滤波实现物体跟踪的算法原理:
    Canny边缘检测(转)
    [转载] 图像处理常用边缘检测算子总结
    [转载]Sobel边缘检测
    Android读取手机联系人信息
    【Android】动态注册广播接收器
    Android对话框的生成
    C语言基础丨(六)程序结构——顺序结构【1】
    C语言丨指针基础知识详解
  • 原文地址:https://www.cnblogs.com/u0mo5/p/4154581.html
Copyright © 2011-2022 走看看