Android應用自動化渠道打包過程分析

來源:互聯網
上載者:User

標籤:android開發   渠道   市場   市集   app   

Android應用開發完之後一般都要上傳市場。發布的時候需要面對各種各樣的市場,我們稱之為渠道。既然上傳市場,我們就可能需要每個市場的一些資料分析: 比如,哪個市場使用者下載量比較大?有時候,我們還需要知道應用是從哪個渠道下載的。再比如,我們可能有一些盈利需要和具體的渠道進行分成。這些都是統計渠道的資訊。


        如何在應用中加入渠道資訊?

        為了統計渠道資訊,就不得不在程式的某個地方加入渠道的資訊,然後針對不同的渠道打不同的包。一般可以在Manifest檔案中加入渠道編號,而不直接寫在代碼中。這樣做的好處是,可以針對不同渠道,自動化去修改Manifest檔案中的渠道編號,然後自動為該渠道打包。

       Manifest檔案支援Meta Data標籤,建議使用這種自訂標籤。例如下面的檔案片段。

<?xml version=“1.0″ encoding=“utf-8″?>

<manifest xmlns:android=“http://schemas.android.com/apk/res/android”

      android:versionCode=“X”

      android:versionName=“X.X.X”

      package=“com.XXX”>

      ……

    <application android:icon=“@drawable/icon”

            android:label=“@string/app_name”>

        ……

    <meta-data android:name=“CHANNEL” android:value=“C_001″ />

    </application>

</manifest>

在這段程式碼範例中,我們在Application節點下增加了一個meta-data標籤,名稱是CHANNEL,值是C_001,是我們規定的一個渠道的編號。

        為不同的渠道打包,就要手工或者自動化修改C_001成為C_002、C_003等等其它我們定義的渠道編號,然後再打不同的包。


        程式如何讀取打包的渠道編號?

        在程式碼中,可以讀取Manifest檔案中定義的meta-data。以下為代碼執行個體。

public static String getChannelCode(Context context) {

       String code = getMetaData(context, “CHANNEL”);

       if (code != null) {

           return code;

       }

       return “C_000″;

    }

    private static String getMetaData(Context context, String key) {

       try {

           ApplicationInfo  ai = context.getPackageManager().getApplicationInfo(

                  context.getPackageName(), PackageManager.GET_META_DATA);

           Object value = ai.metaData.get(key);

           if (value != null) {

              return value.toString();

           }

       } catch (Exception e) {

           //

       }

       return null;

    }

      如何自動化打包過程?

       這裡有兩個工具:Ant、愛加密渠道監測。

       使用Ant打包,需要注意兩點:一個是要在Ant中支援For迴圈,以自動做多次打包動作;一個是如何能夠在Ant中修改Manifest檔案,以支援不同的市場。

       1. Ant

       在Ant的核心包裡沒有相關的For迴圈的Task,要下載相應的擴充包。可以使用開源的Ant-contrib包。

       :http://ant-contrib.sourceforge.net/

       下載完成後,把ant-contrib裡的lib包複製到安裝好的Ant庫apache-ant-XXX\lib下面,就可以使用了。

       具體如何使用,可以參考ant-contrib的官方網站。

       2. 愛加密渠道監測

       使用地址:http://www.ijiami.cn/Channels

       可以一鍵打多渠道包,精準擷取國內外600個APP推廣渠道資訊,包括市集、下載站、論壇等。一站式監控所有APP相關渠道的資訊,包括:版本、渠道、下載源、下載量等。方便快捷的輔助開發人員管理APP在各大渠道的上線及推廣運營工作。

具體使用流程詳見http://www.ijiami.cn/ 愛加密官方網站。

Android應用自動化渠道打包過程分析

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.