Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 将google play服务库导入Intellij IDEA 12(和13)_Android_Intellij Idea_Actionbarsherlock_Google Play Services - Fatal编程技术网

Android 将google play服务库导入Intellij IDEA 12(和13)

Android 将google play服务库导入Intellij IDEA 12(和13),android,intellij-idea,actionbarsherlock,google-play-services,Android,Intellij Idea,Actionbarsherlock,Google Play Services,我想将Google Play服务库导入(并使用)到现有的Android项目中,但我正在努力解决依赖性问题 google编写的所有文档都基于Eclipse。我们使用IntelliJ IDEA 我知道的事情: 我知道如何在IntelliJ中导入模块、库、添加依赖项等 我还知道,根据,您必须将google play services库作为项目添加到(Eclipse)(通过将现有代码导入到工作区),并且您可以在IntelliJ中通过从现有代码添加新模块来实现这一点。这是相同的过程,不同的名称 我还了解

我想将Google Play服务库导入(并使用)到现有的Android项目中,但我正在努力解决依赖性问题

google编写的所有文档都基于Eclipse。我们使用IntelliJ IDEA

我知道的事情:

  • 我知道如何在IntelliJ中导入模块、库、添加依赖项等
  • 我还知道,根据,您必须将google play services库作为项目添加到(Eclipse)(通过将现有代码导入到工作区),并且您可以在IntelliJ中通过从现有代码添加新模块来实现这一点。这是相同的过程,不同的名称
  • 我还了解Order和Export选项卡在Eclipse中的作用(IntelliJ也这么做)
我做过的事情:

  • 为了安全起见,我将google-play-services_lib文件夹从Android SDK复制到我的项目根目录中。因此,我在同一级别上有/myprj和/google-play-services_lib(我在同一级别上也有/facebooksdk和/actionbarsherlock),并继续“导入模块”(从现有源代码)。然后单击下一步…(它工作了,被识别了)
项目结构如下所示(名称):

  • 这正确地添加了一个模块(如上面的屏幕截图所示)。现在我需要添加依赖项,以便我的主要项目了解这一点。我转到我的模块,在列表中选择我的主模块,然后选择依赖项选项卡。我可以看到一些库(Joda time、android query、gson等)和两个模块:FacebookSDKactionbarsherlock。到现在为止,一直都还不错。这就是事情变得奇怪的时候
我尝试添加的依赖项。 注意:在大多数情况下,我尝试选中和取消选中“导出”复选框,同时也尝试将其添加到sherlockbar模块中,只是为了测试。我知道这是很多组合,但是哦,好吧

1) 添加一个Jar或目录(知道这是错误的,我尝试了)。并指向GooglePlay模块/libs中的.jar,名为:google-play-services.jar

2) 添加库(然后将其添加到项目中)

3) 添加模块依赖项(选择我的主项目时)。这将显示如下弹出窗口:

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

问题 即使我可以引用a并获得正确的导入,但当我尝试在布局xml中添加a时,还是会出现错误

粘贴整个XML布局没有任何意义,因为它没有任何奇怪的内容,它只是一个带有一些文本视图的相对布局。我添加了g+按钮,如下所示:

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

正如谷歌所说

出现问题的第一个迹象是IntelliJ警告您元素“此处无效”,但我认为这是视觉设计师的局限性,而不是真正的问题

然而当我运行项目时,我得到以下信息:

07-30 17:50:44.854: ERROR/ActivityThread(22324): Failed to inflate
    android.view.InflateException: Binary XML file line #22: Error inflating class com.google.android.gms.common.SignInButton
    at android.view.LayoutInflater.createView(LayoutInflater.java:606)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:680)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:739)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:742)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
    at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:251)
    at com.actionbarsherlock.internal.ActionBarSherlockNative.setContentView(ActionBarSherlockNative.java:134)
    at com.actionbarsherlock.app.SherlockFragmentActivity.setContentView(SherlockFragmentActivity.java:262)
    at com.myapp.ui.activities.LoginSignupActivity.onCreate(LoginSignupActivity.java:64)
    at android.app.Activity.performCreate(Activity.java:4465)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2033)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2104)
    at android.app.ActivityThread.access$600(ActivityThread.java:132)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1157)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:137)
    at android.app.ActivityThread.main(ActivityThread.java:4575)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:511)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
    at dalvik.system.NativeStart.main(Native Method)
    Caused by: java.lang.reflect.InvocationTargetException
    at java.lang.reflect.Constructor.constructNative(Native Method)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
    at android.view.LayoutInflater.createView(LayoutInflater.java:586)
    ... 24 more
    Caused by: java.lang.NoClassDefFoundError: com.google.android.gms.R$drawable
    at com.google.android.gms.internal.aa.b(Unknown Source)
    at com.google.android.gms.internal.aa.a(Unknown Source)
    at com.google.android.gms.common.SignInButton.c(Unknown Source)
    at com.google.android.gms.common.SignInButton.d(Unknown Source)
    at com.google.android.gms.common.SignInButton.setStyle(Unknown Source)
    at com.google.android.gms.common.SignInButton.<init>(Unknown Source)
    at com.google.android.gms.common.SignInButton.<init>(Unknown Source)
    ... 27 more
07-30 17:50:44.854:错误/活动线程(22324):充气失败
android.view.InflateException:二进制XML文件行#22:膨胀类com.google.android.gms.common.SignInButton时出错
位于android.view.LayoutInflater.createView(LayoutInflater.java:606)
位于android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:680)
位于android.view.LayoutInflater.rInflate(LayoutInflater.java:739)
位于android.view.LayoutInflater.rInflate(LayoutInflater.java:742)
在android.view.LayoutInflater.充气(LayoutInflater.java:489)
在android.view.LayoutInflater.inflate(LayoutInflater.java:396)
在android.view.LayoutInflater.充气(LayoutInflater.java:352)
位于com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:251)
位于com.actionbarsherlock.internal.ActionBarSherlockNative.setContentView(ActionBarSherlockNative.java:134)
在com.actionbarsherlock.app.SherlockFragmentActivity.setContentView(SherlockFragmentActivity.java:262)上
位于com.myapp.ui.activities.LoginSignupActivity.onCreate(LoginSignupActivity.java:64)
位于android.app.Activity.performCreate(Activity.java:4465)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2033)上
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2104)
在android.app.ActivityThread.access$600(ActivityThread.java:132)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1157)
位于android.os.Handler.dispatchMessage(Handler.java:99)
位于android.os.Looper.loop(Looper.java:137)
位于android.app.ActivityThread.main(ActivityThread.java:4575)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:511)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run上(ZygoteInit.java:789)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
在dalvik.system.NativeStart.main(本机方法)
原因:java.lang.reflect.InvocationTargetException
位于java.lang.reflect.Constructor.constructNative(本机方法)
位于java.lang.reflect.Constructor.newInstance(Constructor.java:417)
位于android.view.LayoutInflater.createView(LayoutInflater.java:586)
... 还有24个
原因:java.lang.NoClassDefFoundError:com.google.android.gms.R$drawable
位于com.google.android.gms.internal.aa.b(未知来源)
位于com.google.android.gms.internal.aa.a(未知来源)
在com.google.android.gms.common.SignInButton.c(未知来源)
位于com.google.android.gms.common.SignInButton.d(未知来源)
在com.google.android.gms.common.SignInButton.setStyle(未知来源)上
登录com.google.android.gms.common.SignInButton。(来源不详)
在com.google.android.gms.common.SignInButton上