Android 下载具有挂起意图的已完成通知

Android 下载具有挂起意图的已完成通知,android,notifications,android-pendingintent,Android,Notifications,Android Pendingintent,目前,我正在通知用户下载已完成: @Override protected void onHandleIntent(Intent intent) { String url = intent.getStringExtra("url"); DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url)); request.setDescription("Downloading");

目前,我正在通知用户下载已完成:

@Override
protected void onHandleIntent(Intent intent) {

    String url = intent.getStringExtra("url");
    DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
    request.setDescription("Downloading");
    request.setTitle("Bob_Marley-Jammin.mp3");

    request.allowScanningByMediaScanner();

    request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);

    request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "Bob_Marley-Jammin.mp3");

    DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
    manager.enqueue(request);

}

}
但当用户单击通知时,应用程序强制关闭。有人知道这是为什么吗

我希望发生的是,当用户单击通知时,一个特定的活动被启动

以下是我的日志:

06-14 18:27:55.069: E/AndroidRuntime(632): java.lang.ExceptionInInitializerError
06-14 18:27:55.069: E/AndroidRuntime(632):  at com.android.providers.downloads.DownloadDrmHelper.getOriginalMimeType(DownloadDrmHelper.java:97)
06-14 18:27:55.069: E/AndroidRuntime(632):  at com.android.providers.downloads.DownloadReceiver.openDownload(DownloadReceiver.java:153)
06-14 18:27:55.069: E/AndroidRuntime(632):  at com.android.providers.downloads.DownloadReceiver.handleNotificationBroadcast(DownloadReceiver.java:104)
06-14 18:27:55.069: E/AndroidRuntime(632):  at com.android.providers.downloads.DownloadReceiver.onReceive(DownloadReceiver.java:74)
06-14 18:27:55.069: E/AndroidRuntime(632):  at android.app.ActivityThread.handleReceiver(ActivityThread.java:2119)
06-14 18:27:55.069: E/AndroidRuntime(632):  at android.app.ActivityThread.access$1500(ActivityThread.java:123)
06-14 18:27:55.069: E/AndroidRuntime(632):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1197)
06-14 18:27:55.069: E/AndroidRuntime(632):  at android.os.Handler.dispatchMessage(Handler.java:99)
06-14 18:27:55.069: E/AndroidRuntime(632):  at android.os.Looper.loop(Looper.java:137)
06-14 18:27:55.069: E/AndroidRuntime(632):  at android.app.ActivityThread.main(ActivityThread.java:4424)
06-14 18:27:55.069: E/AndroidRuntime(632):  at java.lang.reflect.Method.invokeNative(Native Method)
06-14 18:27:55.069: E/AndroidRuntime(632):  at java.lang.reflect.Method.invoke(Method.java:511)
06-14 18:27:55.069: E/AndroidRuntime(632):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
06-14 18:27:55.069: E/AndroidRuntime(632):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
06-14 18:27:55.069: E/AndroidRuntime(632):  at dalvik.system.NativeStart.main(Native Method)
06-14 18:27:55.069: E/AndroidRuntime(632): Caused by: java.lang.UnsatisfiedLinkError: Library drmframework_jni not found; tried [/vendor/lib/libdrmframework_jni.so, /system/lib/libdrmframework_jni.so]
06-14 18:27:55.069: E/AndroidRuntime(632):  at java.lang.Runtime.loadLibrary(Runtime.java:393)
06-14 18:27:55.069: E/AndroidRuntime(632):  at java.lang.System.loadLibrary(System.java:535)
06-14 18:27:55.069: E/AndroidRuntime(632):  at android.drm.DrmManagerClient.<clinit>(DrmManagerClient.java:56)
06-14 18:27:55.069:E/AndroidRuntime(632):java.lang.ExceptionInInitializeError
06-14 18:27:55.069:E/AndroidRuntime(632):在com.android.providers.DownloadDrmHelper.getOriginalMimeType(DownloadDrmHelper.java:97)
06-14 18:27:55.069:E/AndroidRuntime(632):在com.android.providers.DownloadReceiver.openDownload(DownloadReceiver.java:153)
06-14 18:27:55.069:E/AndroidRuntime(632):在com.android.providers.DownloadReceiver.handleNotificationBroadcast(DownloadReceiver.java:104)
06-14 18:27:55.069:E/AndroidRuntime(632):在com.android.providers.DownloadReceiver.onReceive(DownloadReceiver.java:74)
06-14 18:27:55.069:E/AndroidRuntime(632):在android.app.ActivityThread.handleReceiver(ActivityThread.java:2119)
06-14 18:27:55.069:E/AndroidRuntime(632):在android.app.ActivityThread.access$1500(ActivityThread.java:123)
06-14 18:27:55.069:E/AndroidRuntime(632):在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1197)
06-14 18:27:55.069:E/AndroidRuntime(632):在android.os.Handler.dispatchMessage(Handler.java:99)上
06-14 18:27:55.069:E/AndroidRuntime(632):在android.os.Looper.loop(Looper.java:137)
06-14 18:27:55.069:E/AndroidRuntime(632):位于android.app.ActivityThread.main(ActivityThread.java:4424)
06-14 18:27:55.069:E/AndroidRuntime(632):位于java.lang.reflect.Method.Invokenactive(本机方法)
06-14 18:27:55.069:E/AndroidRuntime(632):在java.lang.reflect.Method.invoke(Method.java:511)
06-14 18:27:55.069:E/AndroidRuntime(632):在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
06-14 18:27:55.069:E/AndroidRuntime(632):位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
6-14 18:27:55.069:E/AndroidRuntime(632):在dalvik.system.NativeStart.main(本机方法)
06-14 18:27:55.069:E/AndroidRuntime(632):原因:java.lang.UnsatifiedLink错误:找不到库drmframework_jni;尝试[/vendor/lib/libdrmframework_jni.so,/system/lib/libdrmframework_jni.so]
06-14 18:27:55.069:E/AndroidRuntime(632):在java.lang.Runtime.loadLibrary(Runtime.java:393)上
06-14 18:27:55.069:E/AndroidRuntime(632):位于java.lang.System.loadLibrary(System.java:535)
06-14 18:27:55.069:E/AndroidRuntime(632):在android.drm.DrmManagerClient。(DrmManagerClient.java:56)

你能发布异常的堆栈跟踪吗?堆栈跟踪是logcat文件吗?是的,请发布应用程序崩溃时打印到logcat视图中的异常。我发布了它,很抱歉,它很糟糕,只是使用{}代码格式化工具来美化这些东西。我提交了一个编辑,并在这个问题上为您做了编辑。