gpt4 book ai didi

java - 找不到方法 com.google.android.gms.common.GooglePlayServicesUtil

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:38:23 27 4
gpt4 key购买 nike

我知道这个问题已经有很多答案和修复......但对我来说没有任何效果......

我正在尝试将推送通知添加到我的 Android 应用程序中。为此,我使用了“google-play-services_lib”和“google-play-services.jar”。我遵循了谷歌提供的教程 Setting Up Google Play Services用于 Eclipse。

我做了什么:

  • 在 Eclipse 中使用 SDK 管理器安装 Google play 服务
  • 将现有的 Android 代码导入工作区 (/android-sdks/extras/google/google_play_services/libproject/google-play-services_lib),选中“将项目复制到工作区”...基于谷歌建议

    Note: You should be referencing a copy of the library that you copied to your development workspace—you should not reference the library directly from the Android SDK directory.

  • 将库引用到我的项目中(右键单击 -> 属性 -> Android -> 库 -> 添加 -> google-play-services_lib)

  • 将 google-play-services.jar 的副本添加到我的 projetc libs 文件夹中。

  • 正在将 jar 文件添加到我的构建路径中...我必须取消选中“订购和导出”选项卡下的 jar 文件以避免出现以下错误:

    [2014-07-14 09:41:56 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/google/android/gms/internal/a;
    [2014-07-14 09:41:56 ] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/google/android/gms/internal/a;

  • 将以下内容添加到我的 list 文件中:

    <meta-data android:name="com.google.android.gms.version"
    android:value="@integer/google_play_services_version" />
  • 创建 pro guard 异常

    -keep class * extends java.util.ListResourceBundle {
    protected Object[][] getContents();
    }

    -keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable {
    public static final *** NULL;
    }

    -keepnames @com.google.android.gms.common.annotation.KeepName class *
    -keepclassmembernames class * {
    @com.google.android.gms.common.annotation.KeepName *;
    }

    -keepnames class * implements android.os.Parcelable {
    public static final ** CREATOR;
    }

当我尝试简单地检查设备是否具有以下内容的 Google Play 服务 APK 时

    GooglePlayServicesUtil.isGooglePlayServicesAvailable(this)

我总是看到这个错误:

Could not find method com.google.android.gms.common.GooglePlayServicesUtil.isGooglePlayServicesAvailable, referenced from method com.example.testpush.MainActivity.onCreate

和:

07-14 10:34:53.631: E/AndroidRuntime(421): FATAL EXCEPTION: main
07-14 10:34:53.631: E/AndroidRuntime(421): java.lang.NoClassDefFoundError: com.google.android.gms.common.GooglePlayServicesUtil
07-14 10:34:53.631: E/AndroidRuntime(421): at com.example.testpush.MainActivity.onCreate(MainActivity.java:16)
07-14 10:34:53.631: E/AndroidRuntime(421): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
07-14 10:34:53.631: E/AndroidRuntime(421): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
07-14 10:34:53.631: E/AndroidRuntime(421): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
07-14 10:34:53.631: E/AndroidRuntime(421): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
07-14 10:34:53.631: E/AndroidRuntime(421): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
07-14 10:34:53.631: E/AndroidRuntime(421): at android.os.Handler.dispatchMessage(Handler.java:99)
07-14 10:34:53.631: E/AndroidRuntime(421): at android.os.Looper.loop(Looper.java:123)
07-14 10:34:53.631: E/AndroidRuntime(421): at android.app.ActivityThread.main(ActivityThread.java:3683)
07-14 10:34:53.631: E/AndroidRuntime(421): at java.lang.reflect.Method.invokeNative(Native Method)
07-14 10:34:53.631: E/AndroidRuntime(421): at java.lang.reflect.Method.invoke(Method.java:507)
07-14 10:34:53.631: E/AndroidRuntime(421): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
07-14 10:34:53.631: E/AndroidRuntime(421): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
07-14 10:34:53.631: E/AndroidRuntime(421): at dalvik.system.NativeStart.main(Native Method)

我是不是漏掉了什么????感谢您的任何想法。

最佳答案

我遇到了这个完全相同的问题。开始清理 Eclipse 工作区(使用 ADT 23.0.3.1327240)。通过 SDK 管理器下载了最新的 Play 服务库 (v 5.0.89-000)。遵循所有正确的 instructions ,当应用程序启动时仍然遇到链接器问题。

我的解决方案是使用旧版本的 Play Serices 库(幸运的是,我的一个旧项目中仍然有该库的 v4.4.52-000。Download mine here。)在导入此旧版本后进行刷新和清理构建似乎暂时解决这个问题。

希望有人对 logged bug 发表评论并给我们一个真正的解决方案。

关于java - 找不到方法 com.google.android.gms.common.GooglePlayServicesUtil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24732568/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com