[發(fā)明專利]分身應(yīng)用程序的啟動方法、裝置、電子設(shè)備及存儲介質(zhì)在審
| 申請?zhí)枺?/td> | 201811528197.0 | 申請日: | 2018-12-13 |
| 公開(公告)號: | CN111324386A | 公開(公告)日: | 2020-06-23 |
| 發(fā)明(設(shè)計)人: | 張曉 | 申請(專利權(quán))人: | 北京奇虎科技有限公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445 |
| 代理公司: | 北京市立方律師事務(wù)所 11330 | 代理人: | 張筱寧 |
| 地址: | 100088 北京市西城區(qū)新*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 分身 應(yīng)用程序 啟動 方法 裝置 電子設(shè)備 存儲 介質(zhì) | ||
本申請實施例提供了一種分身應(yīng)用程序的啟動方法、裝置、電子設(shè)備及存儲介質(zhì)。該方法包括:在接收到對分身應(yīng)用程序的啟動請求時,攔截分身應(yīng)用程序?qū)?yīng)的預(yù)定處理消息;將預(yù)定處理消息中用于啟動分身應(yīng)用程序的組件參數(shù)替換為分身應(yīng)用程序?qū)?yīng)的原應(yīng)用程序的組件參數(shù);根據(jù)替換后的組件參數(shù)生成用于啟動原應(yīng)用程序?qū)?yīng)的活動組件;基于活動組件,調(diào)用與分身應(yīng)用程序的所需資源對應(yīng)的原應(yīng)用程序的所需資源,來啟動并運行分身應(yīng)用程序。在本申請實施例中,由于啟動分身應(yīng)用程序時會基于生成的活動組件調(diào)用原應(yīng)用程序的所需資源,進而保證了分身應(yīng)用程序可以在正常啟動。
技術(shù)領(lǐng)域
本申請涉及計算機技術(shù)領(lǐng)域,具體而言,本發(fā)明涉及一種分身應(yīng)用程序的啟動方法、裝置、電子設(shè)備及存儲介質(zhì)。
背景技術(shù)
在生活中,用戶有時候需要在一個終端設(shè)備中開啟某個應(yīng)用程序的分身,來實現(xiàn)同時可以登錄某個應(yīng)用程序的不同賬號,在實現(xiàn)這一功能時,對于應(yīng)用Android(安卓)系統(tǒng)的終端設(shè)備來說,首先需要將真實Activity替換為分身應(yīng)用程序的坑位Activity,然后再將坑位Activity還原為真實Activity來實現(xiàn)分身應(yīng)用程序的啟動。
現(xiàn)有技術(shù)中,對于使用Android O系統(tǒng)的終端設(shè)備來說,將坑位Activity還原為真實Activity時需要通過hook ActivityThread(UI線程)中的消息處理流程,改變Activity的啟動消息,但是隨著將Android O系統(tǒng)升級為Android P系統(tǒng),由于Android P系統(tǒng)中的framework(框架)層對Activity生命周期方面的代碼做了重構(gòu),導(dǎo)致原來需要攔截的消息被整合到其它消息中,進而造成分身應(yīng)用程序無法啟動。
發(fā)明內(nèi)容
本申請的目的旨在至少能解決上述的技術(shù)缺陷之一。本申請?zhí)峁┑募夹g(shù)方案如下:
第一方面,本申請實施例提供一種分身應(yīng)用程序的啟動方法,該方法包括:
在接收到對分身應(yīng)用程序的啟動請求時,攔截分身應(yīng)用程序?qū)?yīng)的預(yù)定處理消息;
將預(yù)定處理消息中用于啟動分身應(yīng)用程序的組件參數(shù)替換為分身應(yīng)用程序?qū)?yīng)的原應(yīng)用程序的組件參數(shù);
根據(jù)替換后的組件參數(shù)生成用于啟動原應(yīng)用程序?qū)?yīng)的活動組件;
基于活動組件,調(diào)用與分身應(yīng)用程序的所需資源對應(yīng)的原應(yīng)用程序的所需資源,來啟動并運行分身應(yīng)用程序。
在本申請實施例中,攔截分身應(yīng)用程序?qū)?yīng)的預(yù)定處理消息,包括:
采用第一鉤子函數(shù)對分身應(yīng)用程序的進程進行監(jiān)控以攔截分身應(yīng)用程序?qū)?yīng)的預(yù)定處理消息。
在本申請實施例中,將預(yù)定處理消息中用于啟動分身應(yīng)用程序的組件參數(shù)替換為分身應(yīng)用程序?qū)?yīng)的原應(yīng)用程序的組件參數(shù),包括:
基于第一鉤子函數(shù)攔截到的分身應(yīng)用程序?qū)?yīng)的預(yù)定處理消息,通過分身應(yīng)用程序的組件參數(shù)與對應(yīng)的原應(yīng)用程序的組件參數(shù)對應(yīng)規(guī)則,確定原應(yīng)用程序的組件參數(shù)。
在本申請實施例中,在接收到對分身應(yīng)用程序的啟動請求時,方法還包括:
通過第二鉤子函數(shù)監(jiān)控針對分身應(yīng)用程序的Provider(提供者)方法的調(diào)用請求。
在本申請實施例中,通過鉤子函數(shù)監(jiān)控針對分身應(yīng)用程序的Provider方法的調(diào)用請求之后,該方法還包括:
確定是否存儲有分身應(yīng)用程序的包名;
若存在,則刪除存儲的分身應(yīng)用程序的包名。
在本申請實施例中,該方法還包括:
在監(jiān)控到針對分身應(yīng)用程序的Provider方法的調(diào)用請求時,攔截調(diào)用請求,并將用于啟動分身應(yīng)用程序的目標包名作為調(diào)用請求的響應(yīng)信息。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京奇虎科技有限公司,未經(jīng)北京奇虎科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811528197.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 對虛擬化應(yīng)用程序的基于策略的訪問
- 應(yīng)用程序執(zhí)行、應(yīng)用程序提供裝置和應(yīng)用程序分發(fā)方法
- 一種軟件保護方法、裝置及系統(tǒng)
- 應(yīng)用程序的開發(fā)方法和系統(tǒng)
- 應(yīng)用程序的擴展方法及裝置
- 一種應(yīng)用程序商店的應(yīng)用程序發(fā)布方法及裝置
- 一種應(yīng)用程序的監(jiān)控方法、裝置及系統(tǒng)
- 用于對虛擬化應(yīng)用程序的基于策略的訪問的方法和系統(tǒng)
- 應(yīng)用程序控制方法、裝置、終端及存儲介質(zhì)
- 一種應(yīng)用程序安裝、卸載方法及通信終端





