華為應(yīng)用市場:如何為App瘦身?App Bundle應(yīng)用 + Dynamic Ability SDK

來源:HUAWEI
作者:暴風小可愛
時間:2020-09-02
3927
隨著應(yīng)用內(nèi)容的豐富、功能的不斷增多,您的App體積可能越來越大。而用戶在下載App的時候都希望占用存儲空間越小越好,對于體積較大的應(yīng)用,用戶有可能“望而生畏”,因此,作為一名開發(fā)者,縮小應(yīng)用的包體是頂頂重要之事,因為它對于提高下載安裝成功率有非常大的作用。

隨著應(yīng)用內(nèi)容的豐富、功能的不斷增多,您的App體積可能越來越大。而用戶在下載App的時候都希望占用存儲空間越小越好,對于體積較大的應(yīng)用,用戶有可能“望而生畏”,因此,作為一名開發(fā)者,縮小應(yīng)用的包體是頂頂重要之事,因為它對于提高下載安裝成功率有非常大的作用。

之前我們已經(jīng)介紹過了如何在AppGallery Connect發(fā)布App Bundle應(yīng)用,現(xiàn)在我們來介紹為應(yīng)用進一步瘦身的方法——給您的App Bundle應(yīng)用集成Dynamic Ability SDK.

Dynamic Ability SDK是什么?

基于App Bundle技術(shù),AppGallery Connect提供了Dynamic Ability功能。通過集成Dynamic Ability SDK,開發(fā)者可以將不常用功能做成動態(tài)特性。用戶首次下載應(yīng)用時,只下載基本功能模塊,僅在需要時才會動態(tài)下載動態(tài)特性。

例如:

1,如果在使用應(yīng)用的用戶中,只有少量的人使用客服功能,那么您可以將上傳照片和截圖、輸入文字反饋的功能配置為按需下載,使該功能僅在用戶希望在與客服交流時才下載。

2,如果應(yīng)用的某個功能依賴于硬件特性,比如指紋,為了減小應(yīng)用的初始下載大小,您可以創(chuàng)建單獨的動態(tài)功能模塊來處理,并將這些模塊配置為根據(jù)用戶的硬件特性視條件安裝在用戶設(shè)備上。

0010086000000000293.20200824155805.39895350951547719884378900784000.png

集成Dynamic Ability SDK流程

預(yù)計耗時:10-15小時

1,創(chuàng)建Android項目。

2,在AppGallery Connect創(chuàng)建Android應(yīng)用。

3,集成Dynamic Ability SDK

a.在項目級gradle文件(通常在項目根目錄)中的allprojects->repositories里面配置SDK的maven倉地址。

在項目級 gradle 文件(通常在項目根目錄)中的allprojects ->repositories里面配置SDK的maven倉地址。


allprojects{


    repositories{


        maven {url 'https://developer.huawei.com/repo/'}


        ...


    }


}


b.     在應(yīng)用級 gradle 文件中(通常在app/build.gradle)添加如下代碼集成Dynamic Ability SDK。


dependencies {


    implementation 'com.huawei.hms:dynamicability:1.0.14.300'


    ...


}

4,初始化SDK

a.     在您的Android項目中配置您的Application,并override其中的attachBaseContext()方法,調(diào)用FeatureCompat.install初始化Dynamic Ability SDK。


public class MyApplication extends Application {


    @Override


    protected void attachBaseContext(Context base) {


        super.attachBaseContext(base);


        // 啟動Dynamic Ability SDK


        FeatureCompat.install(base);


    }


}


b.     在動態(tài)特性模塊的Activity中,調(diào)用FeatureCompat.install初始化Dynamic Ability SDK。


@Override


protected void attachBaseContext(Context newBase) {


super.attachBaseContext(newBase);


    //在activity中初始化


    FeatureCompat.install(newBase);


}

5,調(diào)用Dynamic Ability SDK接口實現(xiàn)動態(tài)加載特性

a.請求安裝特性

b.監(jiān)聽動態(tài)加載狀態(tài)

c.延遲安裝與卸載

d.取消安裝

e.獲取指定加載任務(wù)的執(zhí)行狀態(tài)

f.查看已安裝的特性列表

原文鏈接:點擊前往 >
文章來源:HUAWEI
版權(quán)說明:本文內(nèi)容來自于HUAWEI,本站不擁有所有權(quán),不承擔相關(guān)法律責任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
個人VIP
小程序
快出海小程序
公眾號
快出海公眾號
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家