android market api,如何使用非官方Android Market API?

诸修伟
2023-12-01

我正在尝试示例代码here.但我的应用程序崩溃了.

我添加了日志记录,发现它崩溃了session.flush();所以我删除了该行,它不再崩溃了.

但它没有达到onResult回调.

package com.mytest.app;

import com.gc.android.market.api.MarketSession;

import com.gc.android.market.api.MarketSession.Callback;

import com.gc.android.market.api.model.Market.AppsRequest;

import com.gc.android.market.api.model.Market.AppsResponse;

import com.gc.android.market.api.model.Market.ResponseContext;

import android.app.Activity;

import android.os.Bundle;

import android.provider.Settings.Secure;

import android.util.Log;

public class MarketAPITestActivity extends Activity {

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

Log.d("Market API", "Started");

String email = "somebody@gmail.com";

String pass = "mypass";

String AndroidId = Secure.getString(this.getContentResolver(), Secure.ANDROID_ID);

MarketSession session = new MarketSession();

session.login(email,pass);

session.getContext().setAndroidId(AndroidId);

String query = "maps";

AppsRequest appsRequest = AppsRequest.newBuilder()

.setQuery(query)

.setStartIndex(0).setEntriesCount(10)

.setWithExtendedInfo(true)

.build();

session.append(appsRequest, new Callback() {

@Override

public void onResult(ResponseContext context, AppsResponse response) {

Log.d("Market API", "Got response");

}

});

session.flush();

}

}

 类似资料: