Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android Studio多渠道打包

Android Studio多渠道打包

編輯:關於Android編程

我們開發一個APP在上傳應用市場之前,有時候會遇到要根據不同平台打多個apk包的問題。由於Android的應用市場比較多,主流的應用市場就有應用寶,百度手機助手,豌豆莢等等,還不包括其他的。一個一個打包非常麻煩,但通常打多個包主要是因為有的應用市場平台對引導頁有特殊要求,或者第二屏廣告頁要加上他們的logo(申請應用市場首發的時候)所以多渠道打包是必須要做的一個任務,今天我就來講一下我學習和實現多渠道打包的過程。 1.首先新建一個小工程,並且新建一個類“TheSecondActivty(第二屏廣告頁)”和它的布局文件“activity_second”,然後打開清單文件,加上一個“meta-data”,如下圖
其中的“XIAO_GUIDANCE”就是我們後面要在代碼中用來判斷的一個依據,而“XIAO_GUIDANCE_VALUE”在下面的build.gradle文件中要用到。如果還有其他渠道的引導頁要單獨設定的話就新增一個類似的met-data即可; 2.打開app下面的build.gradle文件,注意是圖中選中的這個,而不是底部的那個: \ 打開之後,在這個配置文件中添加下面這兩段代碼,舉例如下圖: productFlavors {
渠道名稱 {}
}
productFlavors.all {
flavor -> flavor.manifestPlaceholders = [清單文件中的meta-data設置的value名稱: name]
} \ 3.打開第二屏廣告頁的類,通過ApplicationInfo獲取到這個meta-data,通過判斷meta-data是否包含“xiaomi”,這裡的“xiaomi”也就對應上面的渠道名稱,然後設置第二屏廣告頁的顯示圖片。具體代碼如下,非常的簡單:
try {
    ApplicationInfo appInfo = this.getPackageManager().getApplicationInfo(getPackageName(),
            PackageManager.GET_META_DATA);
    String reStr = appInfo.metaData.getString("XIAOMI_GUIDANCE");
    if(reStr.equals("xiaomi")) {
        rlBackground.setBackgroundResource(R.drawable.guidance_xiaomi);
    } else {
        rlBackground.setBackgroundResource(R.drawable.guidance);
    }
} catch (PackageManager.NameNotFoundException e) {
    e.printStackTrace();
}
4.代碼寫完之後就可以打包了,簡單的打包過程我之前的博客有提到,所以這裡就不說了,直接上圖,如下圖所示在Flavors一欄中出現了兩個選項,也就是我們在build.gradle裡面加的渠道: \ \ \ \ 打包完成後,工程中會出現如下圖所示的兩個Apk: \ \ 5.最後,檢驗運行,查看圖片顯示,到這裡,我們的多渠道打包就算實現了。左邊是小米的(有logo),右邊是應用寶的(沒有logo): \ \
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved