0 0

在Service中使用Notification,编译通过,但程序貌似没有执行25

代码如下:
import tony.download.HttpDownloader;
import tony.model.Mp3Info;
import tony.mp3player.Mp3ListActivity;

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.os.IBinder;

public class DownloadService extends Service{
	private static final int ID_NOTIFICATION = 0;
	@Override
	public IBinder onBind(Intent intent) {
		// TODO Auto-generated method stub
		return null;
	}

	//每次用户点击ListActivity当中的一个条目时,就会调用该方法
	@Override
	public int onStartCommand(Intent intent, int flags, int startId) {
		//从Intent对象当中将Mp3Info对象取出
		Mp3Info mp3Info = (Mp3Info)intent.getSerializableExtra("mp3Info");
		//生成一个下载线程,并将Mp3Info对象作为参数传递到线程对象当中
		DownloadThread downloadThread = new DownloadThread(mp3Info);
		//生成一个新线程
		Thread thread = new Thread(downloadThread);
		//启动新线程
		thread.start();
		return super.onStartCommand(intent, flags, startId);
	}

	class DownloadThread implements Runnable{
		private Mp3Info mp3Info = null;
		public DownloadThread(Mp3Info mp3Info){
			this.mp3Info = mp3Info;
		}
		@Override
		public void run() {
			//把文件中含有的空格替换
			String Mp3Name = mp3Info.getMp3Name().replaceAll(" ", "%20");
			//根据MP3文件的名字,生成下载地址(下载地址http://192.168.1.100:8080/mp3/)
			String mp3Url = "http://192.168.1.100:8080/mp3/" + Mp3Name;
			//生成下载文件所用的对象
			HttpDownloader httpDownloader = new HttpDownloader();
			//将文件下载下来,并存储到SDCard当中
			int result = httpDownloader.downFile(mp3Url, "mp3/", mp3Info.getMp3Name());
			System.out.println(result);
			String resultMessage = null;
			if(result == -1){
				resultMessage = "下载失败";
			}
			else if(result == 0){
				resultMessage = "文件已经存在,不需要重复下载";
			}
			else if(result == 1){
				resultMessage = "文件下载成功";
			}
			//使用Notification提示客户下载结果
			System.out.println(resultMessage);
			Context context = getApplicationContext();
			System.out.println(context);
			System.out.println(this);
			notification(context, resultMessage);
		}
		
	}
	public void notification(Context context, CharSequence contentText){			
		CharSequence contentTitle = "下载信息";
		Intent notificationIntent = new Intent(context,Mp3ListActivity.class);
		PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);
		String ns = Context.NOTIFICATION_SERVICE;
		//创建NotificationManager对象
		NotificationManager mNotificationManager = (NotificationManager)getSystemService(ns);
		//创建Notification对象
		Notification downloadMessageNotification = new Notification();
		downloadMessageNotification.defaults = Notification.DEFAULT_VIBRATE;
		downloadMessageNotification.flags=Notification.FLAG_AUTO_CANCEL;
		//设置Notification对象的属性
		downloadMessageNotification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
		//发送Notification
		mNotificationManager.notify(ID_NOTIFICATION,downloadMessageNotification);
	}
}

本来想实现在Listview中点击,然后调用Service下载文件,最后用Notification通知用户下载信息的。但程序编译通过后,似乎没有执行Notification(通知栏没显示)。上传的附件是应用涉及的几个文件。(ps:本人Android菜鸟,望各位达人多多解答,不胜感激~)
2012年2月17日 14:18
目前还没有答案

相关推荐

    service receiver notification播放器

    在Android系统中,Service接收器(Service Receiver)和Notification播放器是两个重要的概念,它们在构建应用程序时起着至关重要的作用。Service接收器允许应用程序在后台执行任务,即使用户没有直接与应用交互。而...

    Service+Notification实现断点下载

    在Service中,我们需要定期更新通知的进度,例如通过调用`Builder.setProgress()`方法。当下载完成后,我们可以使用Notification的`setAutoCancel(true)`来使通知在用户点击后自动消失,并提供一个完成消息。 文件...

    Android notification+Service实时更新

    在Android开发中,`Notification`、`Service`和`BroadcastReceiver`是三个核心组件,它们在许多场景下都有着重要的作用,特别是在实现应用后台运行、实时更新等任务时。本项目"Android notification+Service实时更新...

    android实现Service后台下载Notification进度条

    本教程将详细讲解如何在Android中使用Service进行后台下载,并实时更新Notification的进度条。 首先,我们需要创建一个Service,通常继承自`IntentService`。`IntentService`是一个单线程的Service,自动管理工作...

    android服务自启动Service以及BroadcastReceiver和Notification.zip

    在Android开发中,服务(Service)、广播接收器(BroadcastReceiver)和通知(Notification)是三个核心组件,它们各自承担着不同的职责,同时在特定场景下相互配合,为应用程序提供后台运行、事件监听和用户交互的...

    Python库 | notification_service-0.1.0-py3-none-any.whl

    6. **使用和集成**:要使用`notification_service`库,开发者首先需要通过pip安装,然后在代码中通过`import notification_service`来导入并调用其提供的功能。具体的使用方法通常会在库的文档中详细说明。 总的来...

    Android版本更新(Service下载 Notification进度条)

    // 在Service中发送广播 Intent progressIntent = new Intent("DOWNLOAD_PROGRESS"); progressIntent.putExtra("progress", progress); LocalBroadcastManager.getInstance(this).sendBroadcast(progressIntent); /...

    使用android push notification service 实现即时通知

    在Android平台上,实现即时通知通常会借助Google的云消息推送服务(Google Cloud Messaging,简称GCM),但在iOS系统中,对应的则是Apple Push Notification service(APNs)。然而,这里提到的"android apns"可能是...

    android notification Service 文件下载

    在Android系统中,通知服务(Notification Service)是Android框架中的一个重要组成部分,主要用于向用户展示应用程序的通知信息。这些通知可以是消息、提醒、事件等,它们会出现在状态栏中,允许用户即使在不直接与...

    Windows 无法连接到 System Event Notification Service 服务.docx

    问题描述:在使用Windows 7操作系统的电脑上,出现“Windows 无法连接到 System Event Notification Service 服务”的提示,导致无法连接网络,无法使用输入法,无法运行网络相关程序等问题。 解决方法: 1. 打开...

    android Notification使用例子

    在Android系统中,Notification是一种非常重要的机制,它允许应用程序在状态栏显示提醒,即使用户不在应用界面也能感知到应用的状态或新消息。本项目是一个基于Android 2.3(Gingerbread)版本的小实例,旨在帮助...

    android服务自启动Service以及BroadcastReceiver和Notification

    android service Notification BroadcastReceiver Intent 安装的服务开机自启动,service定时的打印消息,消息同时显示在通知栏,窗体界面的跳转,自定义控件的开发。系统广播,定时广播,轮询广播等。...

    CORBA NotificationService

    ### CORBA Notification Service知识点解析 #### 一、概述 CORBA (Common Object Request Broker Architecture) 是一种面向对象的标准,用于创建可互操作的应用程序。它允许不同编程语言编写的对象在不同的平台上...

    集群特殊服务--Notification Service使用说明

    这篇博客文章将深入探讨Notification Service的使用方法,帮助读者理解和掌握如何在自己的项目中应用这一服务。 首先,Notification Service的核心作用是实现在集群节点间的通信,它能够有效地广播事件,使得各个...

    Apple Push Notification Service简介

    ### Apple Push Notification Service (APNS) 简介 #### 一、APNS 概述 Apple Push Notification Service(简称 APNS)是苹果公司提供的一种推送通知服务,它允许开发者向用户设备上的应用发送实时更新的信息。...

    Notification

    在"疯狂Android中有关Notification的简单例子"这个主题中,我们将深入探讨`Notification`的基本概念、创建过程以及相关的使用技巧。 首先,我们要明白`Notification`的作用。在繁忙的手机屏幕上,`Notification`能...

    Notification的用法和PendingIntent使用

    Notification 和 PendingIntent 的使用 Notification 是 Android 系统中的一种...在上面的代码中,我们学习了如何使用 Notification 和 PendingIntent 来实现一个简单的通知机制,并了解了它们的使用步骤和注意事项。

    android Notification使用大全

    在Android系统中,Notification是应用与用户交互的重要方式,它可以在状态栏中显示信息,即使用户不在使用应用时也能提醒用户有新的事件发生。本文将深入探讨如何在Android中使用Notification,包括基本用法、自定义...

    notification各种使用

    在Android开发中,Notification是一种非常重要的组件,它用于在用户界面上显示系统级的消息,即使应用在后台运行或用户没有直接与应用交互时也能提供反馈。"notification各种使用"这个主题涵盖了很多关于如何灵活地...

    Android_Activity、Service、Broadcast、Notification

    Android Activity、Service、Broadcast、Notification四合一例子,Activity中点击按钮启动服务,服务里每4秒发送一次广播,广播接受者每接受到一个发送一条通知。

Global site tag (gtag.js) - Google Analytics