Android应用程序在执行通知代码时崩溃

时间:2013-03-26 04:50:19

标签: android notifications

这适用于模拟器,但是当安装在设备上时,会导致应用程序崩溃。

 String frndName=getSharedData("myOnlineFriendName");
 Intent intent = new Intent(this, MainActivity.class);
 PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent, 0);
 Notification noti = new Notification.Builder(this)
  .setContentTitle("Trace Me! Notification")
  .setContentText(frndName+"'s New Location:")
  .setSmallIcon(R.drawable.ic_launcher)
  .setContentIntent(pIntent)
  .addAction(R.drawable.ic_launcher, "And more", pIntent).build();

NotificationManager notificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
playSound("n");
noti.flags |= Notification.FLAG_AUTO_CANCEL;
notificationManager.notify(0, noti);

我该如何解决这个问题?

logcat的: -

03-26 05:29:33.387: E/WVMExtractor(39): Failed to open libwvm.so
03-26 05:29:33.837: E/WVMExtractor(39): Failed to open libwvm.so
03-26 05:29:34.147: E/WVMExtractor(39): Failed to open libwvm.so
03-26 05:29:34.467: E/WVMExtractor(39): Failed to open libwvm.so
03-26 05:29:34.807: E/WVMExtractor(39): Failed to open libwvm.so
03-26 05:29:35.067: E/WVMExtractor(39): Failed to open libwvm.so
03-26 05:29:35.227: E/WVMExtractor(39): Failed to open libwvm.so
03-26 05:29:35.417: E/WVMExtractor(39): Failed to open libwvm.so
03-26 05:29:35.537: E/WVMExtractor(39): Failed to open libwvm.so
03-26 05:29:35.657: E/WVMExtractor(39): Failed to open libwvm.so
03-26 05:29:42.127: E/SurfaceFlinger(36): ro.sf.lcd_density must be defined as a build property
03-26 05:29:42.157: E/MapActivity(1016): Couldn't get connection factory client
03-26 05:29:42.697: E/WVMExtractor(39): Failed to open libwvm.so

1 个答案:

答案 0 :(得分:1)

您的以下代码可在API LEVEL 11 or ABOVE中找到。这就是为什么它在API 11级以下的原因。

确保您可以使用这种方式..您必须在android-support-v4.jar文件夹中添加res/lib,并执行此操作:your Project property ---> Build Path --> add jar.your Project property ---> Build Path --> order & export --> select all。在这之后干净&在代码下面运行。

String frndName = "myOnlineFriendName";
        Intent intent = new Intent(this, MainActivity.class);
        PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent, 0);
        Notification noti = new NotificationCompat.Builder(this)
                .setContentTitle("Trace Me! Notification")
                .setContentText(frndName + "'s New Location:")
                .setSmallIcon(R.drawable.ic_launcher).setContentIntent(pIntent)
                .addAction(R.drawable.ic_launcher, "And more", pIntent).build();

        NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
        // playSound("n");
        noti.flags |= Notification.FLAG_AUTO_CANCEL;
        notificationManager.notify(0, noti);

您可以检查我的代码是否在Android 2.1 Device

enter image description here

以上API 11:

enter image description here