14

启动我的应用程序时出现以下日志错误:

> 05-20 01:48:35.312: E/AndroidRuntime(23032): FATAL EXCEPTION: main
05-20 01:48:35.312: E/AndroidRuntime(23032): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.tomsyweb.suna/com.tomsyweb.suna.MainActivity}: android.view.InflateException: Binary XML file line #9: Error inflating class com.origamilabs.library.views.StaggeredGridView
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.app.ActivityThread.access$1500(ActivityThread.java:117)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.os.Handler.dispatchMessage(Handler.java:99)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.os.Looper.loop(Looper.java:130)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.app.ActivityThread.main(ActivityThread.java:3687)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at java.lang.reflect.Method.invokeNative(Native Method)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at java.lang.reflect.Method.invoke(Method.java:507)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at dalvik.system.NativeStart.main(Native Method)
05-20 01:48:35.312: E/AndroidRuntime(23032): Caused by: android.view.InflateException: Binary XML file line #9: Error inflating class com.origamilabs.library.views.StaggeredGridView
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.view.LayoutInflater.createView(LayoutInflater.java:518)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:570)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.view.LayoutInflater.rInflate(LayoutInflater.java:623)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.view.LayoutInflater.inflate(LayoutInflater.java:408)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at com.actionbarsherlock.internal.ActionBarSherlockCompat.setContentView(ActionBarSherlockCompat.java:853)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at com.actionbarsherlock.app.SherlockActivity.setContentView(SherlockActivity.java:229)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at com.tomsyweb.suna.MainActivity.onCreate(MainActivity.java:72)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1615)
05-20 01:48:35.312: E/AndroidRuntime(23032):    ... 11 more
05-20 01:48:35.312: E/AndroidRuntime(23032): Caused by: java.lang.reflect.InvocationTargetException
05-20 01:48:35.312: E/AndroidRuntime(23032):    at java.lang.reflect.Constructor.constructNative(Native Method)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at java.lang.reflect.Constructor.newInstance(Constructor.java:415)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at android.view.LayoutInflater.createView(LayoutInflater.java:505)
05-20 01:48:35.312: E/AndroidRuntime(23032):    ... 21 more
05-20 01:48:35.312: E/AndroidRuntime(23032): Caused by: java.lang.NoClassDefFoundError: android.support.v4.util.SparseArrayCompat
05-20 01:48:35.312: E/AndroidRuntime(23032):    at com.origamilabs.library.views.StaggeredGridView.<init>(StaggeredGridView.java:297)
05-20 01:48:35.312: E/AndroidRuntime(23032):    at com.origamilabs.library.views.StaggeredGridView.<init>(StaggeredGridView.java:304)
05-20 01:48:35.312: E/AndroidRuntime(23032):    ... 24 more

在安装 Android SDK Tools Rev. 22、Android SDK Build-tools 并更新 Google Play Services 后,问题就出现了。

而在这个错误中

引起:java.lang.NoClassDefFoundError: android.support.v4.util.SparseArrayCompat

并注意到对于所有“android.support.v4”导入,Javadoc 不可访问

注意:该元素既没有附加源也没有附加 Javadoc,因此找不到 Javadoc。

问题可能是由于 Android 支持库。

希望所有这些信息将帮助您找到解决方案。

4

6 回答 6

40

右键单击您的项目 -> 构建路径 -> 配置构建路径 -> 订购和导出选项卡。

确保选中“Android Private Libraries”以进行导出。

如果您从 libs/ 文件夹中添加了任何库,请将它们删除,因为它们会自动添加到“Android Private Libraries”部分。

于 2013-05-20T02:41:06.450 回答
1

我总是得到这个,只需重新启动 eclipse 即可在 MAC 笔记本电脑上解决它。

于 2014-10-27T16:05:56.947 回答
1

虽然您的编译版本与您的最低要求 SDK 版本不同,但android会创建 appcompat,创建的 appcompat 可能会引用它自己support-v4的版本,并且support-v4版本可能与support-v7您使用的版本不同,即使您有兼容的support-v4。我解决了这个问题,只是为了使所需的最低 SDK 版本与编译版本相同。希望对大家有所帮助。

于 2016-01-26T08:23:04.293 回答
0

右键项目-属性-java构建路径-排序和导出-勾选Android私有库和你添加的所有库

于 2013-10-18T12:05:37.793 回答
0

解决方案:

  • 项目清单
  • 检查出口订单
  • 启用多 Dex
  • 检查布局中视图的 api 级别。我在 searchView 上遇到了同样的问题。我在添加 searchview 时检查了 api 级别,但将实现 SearchView.OnQueryTextListener 添加到类文件中。
  • 检查支持库 v4、v7 等
于 2016-10-15T09:30:29.143 回答
0

您可能想查看官方的 android 文档。

在将我的应用程序运行到我的最低 SDK (15) 时,我在下面发生了这个错误:

Fatal Exception: java.lang.NoSuchMethodError: android.util.LongSparseArray.removeAt

在这里阅读实际的 android 文档后: https ://developer.android.com/reference/android/util/LongSparseArray (遗憾的是仅在 API 级别 16 中添加)

如果您使用 3rd-party 库(在我的情况下,我使用的是Chuck),您可能想询问他们是否支持您的最低级别 SDK API。否则,增加你的最小 SDK 以匹配最小 API 库有或这样做(不推荐,会崩溃你的应用程序)

// AndroidManifest
<manifest 
  <uses-sdk tools:overrideLibrary="com.readystatesoftware.chuck, your.another.package.here" />

  <application>
  // ommited...
  </application>
</manifest
于 2020-02-18T15:57:51.923 回答