读书人

android 入门 NotificationManager组合

发布时间: 2012-07-01 13:15:00 作者: rapoo

android 入门 NotificationManager结合BroadcastReceiver 例子

package com.isoftstone.cry;import android.app.Activity;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.content.IntentFilter;import android.os.Bundle;import android.util.Log;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class NotificationManagerDemo extends Activity{private Button btn ;private static final String NM_MY_ACTION = "com.isoftstone.cry.action.NM_MY_ACTION";@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.notification_manger);btn = (Button)findViewById(R.id.nm_button1);btn.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubLog.i("my_tag","onclick.......");Intent intent = new Intent();intent.setAction(NM_MY_ACTION);sendBroadcast(intent);}});}}
package com.isoftstone.cry;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.util.Log;public class NotificationManager_Receiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {// TODO Auto-generated method stubLog.i("Receiver","NotificationManager_Receiver");Intent i = new Intent();//在新任务中启动activityi.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);//设置intent启动组件的名称i.setClass(context,DisplayActivity.class);//启动activity显示通知context.startActivity(i);}}
package com.isoftstone.cry;import android.app.Activity;import android.app.Notification;import android.app.NotificationManager;import android.app.PendingIntent;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class DisplayActivity extends Activity{private Button cannce_btn ;private Notification n ;private NotificationManager nm ;private static final int ID = 1;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.notification_manger2);cannce_btn = (Button)findViewById(R.id.nm_canncel_button1);//获取notification实例nm = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);n = new Notification();n.icon = R.drawable.fc;n.tickerText = "NotificationManager_ticker_text";n.when = System.currentTimeMillis();//实例化intentIntent intent = new Intent(this,NotificationManagerDemo.class);PendingIntent pi = PendingIntent.getActivity(this, 0, intent, 0);n.setLatestEventInfo(this, "myTitle", "myContent", pi);nm.notify(ID,n);cannce_btn.setOnClickListener(canncelBtnClick);}//canncelBtnClickprivate OnClickListener canncelBtnClick = new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubnm.cancel(ID);}};}
 <activity             android:name=".NotificationManagerDemo">             <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>                <receiver android:name="NotificationManager_Receiver">            <intent-filter>                <action android:name="com.isoftstone.cry.action.NM_MY_ACTION"/>            </intent-filter>        </receiver>                <activity android:name="DisplayActivity"></activity>

读书人网 >Android

热点推荐