日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

简述APP启动流程

發布時間:2023/12/31 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 简述APP启动流程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • AMS啟動APP
  • 啟動App,通常是啟動該App的一個Activity,一般是主Activity.
  • 用戶從Launcher程序點擊應用圖標可啟動應用的入口Activity,Activity啟動時需要多個進程之間的交互
  • AMS進程實際上是SystemServer進程,因為AMS只是SystemServer啟動的一個服務而已,運行在SystemServer的某個線程中。
  • 用戶在Launcher程序里點擊應用圖標時,會通知ActivityManagerService啟動應用的主Activity,ActivityManagerService發現這個應用還未啟動,則會通知Zygote進程孵化出應用進程,然后在這個新孵化的應用進程里執行ActivityThread的main方法。應用進程接下來通知ActivityManagerService應用進程已啟動,ActivityManagerService保存應用進程的一個代理對象,這樣ActivityManagerService可以通過這個代理對象控制應用進程,然后ActivityManagerService通知應用進程創建主Activity的實例,并執行它的生命周期方法,也就是諸如OnCreadte()等方法。
  • Launcher 使用一個帶有 Intent.FLAG_ACTIVITY_NEW_TASK flag 的 Intent,調用 startActivity 方法來啟動App.
  • ActivityThread.main方法是App執行代碼的總入口點
  • 普通Activity啟動與Launcher少了第一步,Launcher程序向ams發送消息
  • 總結

    以上是生活随笔為你收集整理的简述APP启动流程的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。