Android中的多渠道打包之友盟統計篇(二)
上篇簡單瞭解了Android中的多渠道打包,這篇主要說正事了---》 如何多渠道打包:
首先,多渠道打包最重要的是可以統計不同渠道下的應用的情況,比如下載量,日活量等等..
關於統計的話國內有兩個比較出名的第三方統計工具吧:友盟統計和百度移動統計
這篇說的是用友盟,如果想要看百度移動統計的點此處..
友盟的使用步驟:
1 、 首先上友盟官網,登入(沒有賬號的註冊一個,不麻煩),建立一個新的應用,獲取友盟分配給這個應用的一個Appkey。
因為我們做的是app,所以選擇的是應用統計,
然後點立即使用,再建立新應用
這時候應用就得到一個appkey,
然後開始整合友盟,看文件,根據文件來做就行了
根據文件在manifest.xml檔案中配置相關許可權和 meta-data :
上面渠道號的value中的$是一個佔位符,後{}裡面是佔位符的名字,如果你只有一個渠道的話,不用寫佔位符,這個value就直接寫你的渠道名字,這樣打出的包都是這個渠道下的,這裡用佔位符的話是因為如果不止一個渠道,等下就動態的替換裡面的渠道名字,這就是用佔位符的意義。
好了,以上只是簡單的如何使用友盟統計,和多渠道打包前的準備工作,下面才開始講解多渠道打包。。。
編寫多渠道打包的指令碼:
開啟應用的gradle檔案,在defaultConofig中新增manifestPlaceholders:
manifestPlaceholders 這裡就是如果不配置啥渠道的話就預設打包的是umeng 這個渠道號的(不懂的可以參考這篇
編寫buildTypes的部分(真正開始多渠道了打包配置了!!):
其實多渠道打包不是什麼高大上的東西,簡單的:
在buildType裡面加個productFlavors,有多少個渠道號就在productFlavors 裡面配置就行了,如圖:
比如有兩個,小米的渠道號xiaomi ,豌豆莢的渠道號wandoujia (xiaomi和wandoujia 這名字是自己取的),比如
表示用xiaomi這個渠道號代替 manifest.xml中UMENG_CHANNEL_VALUE的值(上面說過不配置這個就預設是umeng),類似的你可以配置其他渠道...
配置完就開始打包吧,打包過程都懂吧,不懂的話就自己百度,打包過程的最後一步:
會讓你選擇渠道,顯示的就是你在gradle配置的渠道號,你想打包哪個就打包哪個,全都要就全選---》finish
這樣就能得到兩個不同渠道下的apk了
其實在productFlavors下,不止可以配置多渠道,還可以為每個渠道下配置不同的資源比如顏色主題等。。。比如設定主題不一樣,這樣就可以實現比如在小米市場下的apk和在豌豆莢市場下載的apk 安裝後同樣的apk但是主題卻不一樣的效果==