开发者社区> 问答> 正文

Android中是否有类似于C / C ++中“ int main”的函数,其中包含程序的主循环?

通常,在C或C ++程序中,通常会有一个主循环/函数int main ()。我可以在android Java开发中使用类似的功能吗?

展开
收起
Puppet 2020-01-20 09:11:46 440 0
1 条回答
写回答
取消 提交回答
  • 就Android程序而言,没有main()。操作系统运行一个UI循环,该循环调用您在程序中定义或覆盖的方法。这些方法可能是在onCreate(),onStart(),onResume(),onReStart(),onPause(),onStop()或onDestroy()中定义的。所有这些方法都可能在您的程序中被覆盖。

    根本问题是,该操作系统旨在在资源受限的环境中运行。每当操作系统需要更多内存(这是一个多任务操作系统)时,您就需要准备停止它的程序,甚至完全停止它。为了处理您的程序,需要具有上面列出的所有功能。

    活动生命周期最能说明这一点(您的程序是一个或多个活动,将活动视为屏幕):

    http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle

    底线:您的程序通过onResume()在onCreate()处启动,但操作系统正在运行循环。您的程序向操作系统提供回调,以处理操作系统发送给它的任何内容。如果您在程序中的任何地方放置了较长的循环,由于操作系统(特别是UI线程)无法获得一小段时间,它似乎会冻结。使用线程进行长循环。

    2020-01-20 09:11:55
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
使用C++11开发PHP7扩展 立即下载
GPON Class C++ SFP O;T Transce 立即下载
GPON Class C++ SFP OLT Transce 立即下载