吉利安卓應用市場API

BaseURL

com\ecarx\appstore\global\http\HttpUtil.smali

# static fields
.field private static final BASE_URL:Ljava/lang/String; = "http://api.xchanger.cn/api/v1/"

API

smali\com\ecarx\appstore\global\http\Api.smali

Line 135: .method public abstract getAppBanner()Lio/reactivex/Observable;
Line 151: .method public abstract getAppCategories()Lio/reactivex/Observable;
Line 167: .method public abstract getAppVersion()Lio/reactivex/Observable;
Line 276: .method public abstract getFlowInfo()Lio/reactivex/Observable;
Line 292: .method public abstract getHotInSearch()Lio/reactivex/Observable;
Line 308: .method public abstract getSpecials()Lretrofit2/Call;

 以getAPPBanner爲例

接口地址應該爲

http://api.xchanger.cn/api/v1/banner/index

但是返回的是個網頁,這裏需要添加請求頭(需要抓包分析)

   move-result-object v0 //move-result-object(返回對象)指令獲取返回結果

    const-string/jumbo v2, "X-APP-ID" //聲明的引用是獲取字符串常量池的數據

    .line 37
//(如果方法是私有的,則使用invoke-direct ,否則invoke-virtual )用於調用protected或public函數// >表示從屬關係 addHeader是okhttp3裏面Request的函數
    invoke-virtual {v0, v2, v1}, Lokhttp3/Request$Builder;->addHeader(Ljava/lang/String;Ljava/lang/String;)Lokhttp3/Request$Builder;


    Okhttp代碼
    public Builder addHeader(String name, String value) {
      headers.add(name, value);
      return this;
    }

 

 

 

獲取商品分類接口

http://api.xchanger.cn/api/v1/product/catalog

.method public abstract getAppCategories()Lio/reactivex/Observable;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Lio/reactivex/Observable",
            "<",
            "Lcom/ecarx/appstore/global/entity/ApkCategoriesEntity;",
            ">;"
        }
    .end annotation

    .annotation runtime Lretrofit2/http/GET;
        value = "product/catalog"//Retrofit的Interface定義
    .end annotation
.end method

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章