public class LocalReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) { Toast.makeText(context, "我是本地广播接受者", 3).show(); Log.i("name", intent.getStringExtra("name"));// 通过发送广播来通知,光播如果做耗时操作一般会开启服务
NotificationManager manager = (NotificationManager) context .getSystemService(context.NOTIFICATION_SERVICE);Intent intent2 = new Intent(context, ShowActivity.class);
PendingIntent pi = PendingIntent.getActivity(context, 0, intent2, 0);RemoteViews rviews = new RemoteViews(context.getPackageName(),
R.layout.mynotification); rviews.setImageViewResource(R.id.iv, R.drawable.clothing_0108); rviews.setTextViewText(R.id.tv, "我自定义的啊"); // 声音 File mediaPathFile = new File(Environment.getExternalStorageDirectory() .getAbsolutePath() + "/tiankong.mp3"); Uri soundUri = Uri.fromFile(mediaPathFile); Notification notification = new Notification.Builder(context) .setContent(rviews) // 设置自定义通知界面 .setTicker("未读消息提示") .setContentText("我是消息内容") .setContentTitle("我是消息标题") .setSmallIcon(R.drawable.ic_launcher) .setLights(Color.RED, 1000, 1000) .setSound(soundUri) .setVibrate( new long[] { 0, 2000, 1000, 2000, 1000, 2000, 1000 }) .setWhen(new Date().getTime()).setContentIntent(pi).build();notification.flags |= Notification.FLAG_SHOW_LIGHTS;
// 点击后,自动取消 notification.flags |= Notification.FLAG_AUTO_CANCEL; // 管理器发送 manager.notify(1, notification); }}