外掛程式化(android)

來源:互聯網
上載者:User

標籤:android   style   blog   http   strong   檔案   2014   問題   

外掛程式化設計概述(android)

一、             模組劃分

  1. Basic模組包括:初始化介面、外掛程式載入介面、外掛程式更新介面和埋點介面。

a)         初始化介面:完成一些必要的初始化工作。

b)         外掛程式載入介面:包括驗證外掛程式和載入外掛程式的工作。

c)         外掛程式更新介面:與服務端通訊更新指定外掛程式。

  1. Marketing模組:依賴Basic模組,實現具體的商務邏輯。

                       

介面組件 圖1

 

外掛程式活動 圖2

 

Sdk載入序列 圖3

二、             具體設計

  1. 外掛程式資訊規劃

重點考慮外掛程式載入機制,更新、安全防護和後續版本相容等事項,需要考慮的點有,外掛程式資訊寫入的位置,外掛程式資訊欄位規劃,欄位名稱與資訊加密方式。

 

 

1)外掛程式資訊寫入位置

  在jar中添加一個檔案包括外掛程式資訊

  將外掛程式資訊寫入zip檔案格式內

2)外掛程式資訊防止篡改

  以非對稱式加密的方式,服務端以私密金鑰加密外掛程式資訊,用戶端以公開金鑰解密

 

欄位名稱

欄位意義

是否可選

 

PluginName

外掛程式名稱

 

PluginVer

外掛程式版本

 

TargetLibVer

對應的lib版本

主要為了外掛程式與lib的相容性

MinLibVer

所需的lib最低版本

Entry

外掛程式的進入點

後續如果實現自啟動所需要的進入點配置

DexMD5

外掛程式對應dex的md5

防止dex被篡改

Extra

額外資訊索引值對

 

 

  1. 外掛程式校正流程

 

外掛程式校正流程 圖4

  1. 外掛程式載入流程

見圖3

 

  2. 外掛程式更新流程

在sdk調起的時,儘快發起外掛程式更新要求(建議在另外的進程進行更新防止正在運行邏輯出問題,造成更新無進行)。請求外掛程式時應用的基本資料,外掛程式資訊,使服務端能按照一定條件,下發外掛程式(後期可以加入灰階更新).

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.