我试图触发/显示通知,但当我这样做时,应用程序失败:
02-06 21:25:03.408: E/AndroidRuntime(21469): Suppressed: java.lang.ClassNotFoundException: android.support.v4.app.NotificationCompat$Builder
02-06 21:25:03.408: E/AndroidRuntime(21469): at java.lang.Class.classForName(Native Method)
02-06 21:25:03.408: E/AndroidRuntime(21469): at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
02-06 21:25:03.408: E/AndroidRuntime(21469): at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
02-06 21:25:03.408: E/AndroidRuntime(21469): at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
02-06 21:25:03.408: E/AndroidRuntime(21469): ... 12 more
02-06 21:25:03.408: E/AndroidRuntime(21469): Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
清单使用sdk:
<uses-sdk
android:minSdkVersion="19"
android:targetSdkVersion="19" />
代码:
final Context ctxThis = this;
btnAsleep.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
TextView txt = (TextView) findViewById(R.id.textView1);
boolean isAsleep = SleepDeterminator.getSleepDeterminator().isAsleep();
txt.setText("Asleep: " + isAsleep);
NotificationCompat.Builder mBuilder =
new NotificationCompat.Builder(ctxThis)
.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle("My notification")
.setContentText("Hello World!");
}
});
在我的libs文件夹中有一个名为"android-support-v4.jar"的文件,其中包含该类。
我尝试了其他地方的解决方案,属性>java构建路径>订购和导出私有库等(现在都导出了)。
我在使用Lint工具时没有发现任何相关错误。
我已经安装了v19的SDK构建工具。(我也试过其他SDK版本(16,21)
我尝试过"修复项目属性"。
我尝试过"添加支持库"——它添加了android-support-v4.jar(出于某种原因,每次都要求我同意许可证)。
我在Eclipse Juno中开发,x64在Windows上,JDK 1.7。
解决方案是清理项目。我禁用并重新启用了自动构建。