<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                如果站在四大組件的角度來看,AMS就是Binder中的Server。 AMS全稱是ActivityManagerService,看字面意思是管理Activity的,但其實四大組件都歸它管。估計是Android底層開發人員先寫了ActivityManagerService用來管理Activity,后來寫Service、Receiver、CP的時候發現代碼都差不多,于是就全都用ActivityManagerService,但是卻忘記改名字了——我也是猜的,純屬八卦。 由此而說到了插件化,我記得16年和Lody、張勇、林光亮一起吃夜宵的時候,我當時問了困惑已久的兩個問題: * 1)App的安裝過程,為什么不把apk解壓縮到本地,這樣讀取圖片就不用每次從apk包中讀取了——這個問題,我們放到PMS那一節再詳細說。 * 2)為什么Hook永遠是在Binder Client端,也就是四大組件這邊,而不是在AMS那一側進行Hook。 這里要說清楚第二個問題。就拿Android剪切板舉例吧。前面說過,這也是個Binder服務。 AMS要負責和所有App的四大組件進行通信,也真夠他忙的。如果在一個App中,在AMS層面把剪切板功能給篡改了,那會導致Android系統所有的剪切板功能被篡改——這就是病毒了,如果是這樣的話,Android系統早就死翹翹了。所以Android系統不允許我們這么做。 我們只能在AMS的另一側,Client端,也就是四大組件這邊做篡改,這樣即使我們把剪切板功能篡改了,也只影響篡改代碼所在的App,在別的App中,剪切板功能還是正常的。 關于AMS我們就說這么多,下面介紹四大組件時,會反復提到四大組件和AMS的跨進程通信。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看