无法呈现Google+ SignInButton

我正在尝试遵循Android Studio 0.8.6的“设置Google Play服务”教程。 最终,我想将Google+loginbutton添加到我的应用中 (例如,请参阅下面的内容)。 将button添加到我的XML中时,预览窗格(以及在debugging模式下部署应用程序本身时)会显示以下错误消息:

呈现问题以下类无法实例化: – com.google.android.gms.common.SignInButton(Open Class,Show Exception)提示:在自定义视图中使用View.isInEditMode()可以在显示时跳过代码或显示示例数据在IDE中

exception详细信息java.lang.ClassNotFoundException:java.lang.ClassLoader.loadClass上的com.google.android.gms.dynamic.f(ClassLoader.java:306)at java.lang.ClassLoader.loadClass(ClassLoader.java:247)at java.lang.ClassLoader.defineClass1(ClassLoader.java:-2)at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637)at java.lang.ClassLoader.defineClass(ClassLoader.java:621)at java.lang。 ClassLoader.defineClass(ClassLoader.java:471)at java.lang.ClassLoader.loadClass(ClassLoader.java:306)at java.lang.ClassLoader.loadClass(ClassLoader.java:247)at com.google.android.gms.common .SignInButton.z at com.google.android.gms.common.SignInButton.setStyle at com.google.android.gms.common.SignInButton。 在com.google.android.gms.common.SignInButton。 android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:802)在android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)在android.lang.reflect.Constructor.newInstance(Constructor.java:513)。 view.LayoutInflater.rInflate(LayoutInflater.java:778)在android.view.LayoutInflater.inflate(LayoutInflater.java:500)在android.view.LayoutInflater.inflate(LayoutInflater.java:381)将堆栈复制到剪贴板

我已经看到并试图遵循类似问题(大部分与Eclipse相关)中find的步骤。 我也试图:

  • 清理构build。
  • 重新同步Gradle
  • 使caching失效/重新启动
  • 重新获得图书馆。

还有一点需要注意的是,似乎所有其他的Google Play服务调用都会被编译。 例如,我打电话给GooglePlayServicesUtil.isGooglePlayServicesAvailable ,没有明显的问题。

任何人都可以把我引向正确的方向吗?

使用Google+loginbutton:

 <com.google.android.gms.common.SignInButton android:id="@+id/sign_in_button" android:layout_width="wrap_content" android:layout_height="wrap_content" /> 

Solutions Collecting From Web of "无法呈现Google+ SignInButton"

我相信这是最新的Google Play服务(5.0)代码和/或与Gradle和Android Studio的集成中的一个错误。

我遇到了同样的问题,我可以通过降级在我的项目中使用的Google Play服务版本来解决这个问题。 我在依赖关系部分的build.gradle添加了以下内容:

 dependencies{ compile 'com.google.android.gms:play-services:4.4.52' ... } 

之后,错误消失了,布局devise师可以在屏幕上呈现Google+loginbutton。

你应该添加这行到你的应用程序的build.gralde: compile 'com.google.android.gms:play-services:8.3.0'最新版本是9.0.2,4.4.52有些老了。

总之, 将Googlelogin集成到您的Android应用程序有一个错误。 您必须将以上行添加到您的build.gradle文件。

在添加依赖之后:

 dependencies { compile 'com.google.android.gms:play-services:4.4.52' ... } 

你需要重build项目。

在Android Studio中:

 Build -> Rebuild Project