java - 无法使用 Eclipse 编译简单的 Google api Android 应用程序

标签 java android google-api google-api-java-client

我正在尝试在 Eclipse 中为 Android 构建一个简单的 OAuth 客户端。

我按照 code.google.com/p/google-api-java-client/wiki/Setup 的说明进行操作

下载 zip 文件并将 google-api-client-1.6.0-beta.jar 添加到 Eclipse 中的构建路径。所有 13 个依赖项现在都显示在引用的库下,如下所示。 Eclipse Projec

代码很简单。我刚刚对默认 Activity 进行了以下更改。

public class Testing1Activity extends Activity {
/** Called when the activity is first created. */

final String                TAG             = getClass().getName();
public static final String  CLIENT_ID       = "";
public static final String  CLIENT_SECRET   = "";
public static final String  REDIRECT_URI    = "";
public static final String  SCOPE           = "https://www.googleapis.com/auth/latitude.all.best";

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Json s = new Json();

    String authorizationUrl = new GoogleAuthorizationRequestUrl(CLIENT_ID, REDIRECT_URI, SCOPE)
            .build();
}
}

我一直收到这个该死的错误。 :(

W/dalvikvm(  591): Unable to resolve superclass of Lcom/google/api/client/googleapis/auth/oauth2/draft10/GoogleAuthorizationRequestUrl; (18)
W/dalvikvm(  591): Link of class 'Lcom/google/api/client/googleapis/auth/oauth2/draft10/GoogleAuthorizationRequestUrl;' failed
E/dalvikvm(  591): Could not find class 'com.google.api.client.googleapis.auth.oauth2.draft10.GoogleAuthorizationRequestUrl', referenced from method com.rahul.Testing1Activity.onCreate
W/dalvikvm(  591): VFY: unable to resolve new-instance 37 (Lcom/google/api/client/googleapis/auth/oauth2/draft10/GoogleAuthorizationRequestUrl;) in Lcom/rahul/Testing1Activity;
D/dalvikvm(  591): VFY: replacing opcode 0x22 at 0x000d
D/dalvikvm(  591): VFY: dead code 0x000f-001c in Lcom/rahul/Testing1Activity;.onCreate (Landroid/os/Bundle;)V
D/AndroidRuntime(  591): Shutting down VM
W/dalvikvm(  591): threadid=1: thread exiting with uncaught exception (group=0x40015560)
E/AndroidRuntime(  591): FATAL EXCEPTION: main
E/AndroidRuntime(  591): java.lang.NoClassDefFoundError: com.google.api.client.googleapis.auth.oauth2.draft10.GoogleAuthorizationRequestUrl
E/AndroidRuntime(  591):    at com.rahul.Testing1Activity.onCreate(Testing1Activity.java:25)

最佳答案

所以我终于自己弄清楚了。

尽管 eclipse 显示了引用库下的所有依赖库,但它们并未添加到最终的 apk 中。必须将它们一一显式添加到构建路径中。

同时添加 zip 中的所有依赖库也会产生冲突,因为其中一些 api 已经是 Android 框架的一部分。不需要添加它们。

关于java - 无法使用 Eclipse 编译简单的 Google api Android 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8366690/

相关文章:

java - 应用迁移注意事项 : ColdFusion to Spring

android - 如何在 Android 上将多个参数传递给 IPN url 到 PayPal?

android - 这是什么意思?我如何解决它?致命异常:主要

r - 努力在 shinyapps.io 中使用我自己的 API key 和 googlesheets4

java - 打开 Activity 而不打扰用户

java - 查找树高时的stackoverflow

java - 如果我的表中有数据,为什么 Hibernate 条件返回空列表?

php - JSONParser 不更新 MySQL 数据库

php - 附近位置和匹配 key 位置

java - 如何让 Jackson 在序列化时不将字段输出到 XML