案例1 智慧矿山下的数据定时刷新
核心代码如下:
//主井皮带子系统电机页面报警
for(inti=0;i<data_shadow.getBelt_motor_detail_json_list().size();i++)
{
alarm=data_shadow.getBelt_motor_detail_json_list().get(i).getCratealarm()+
data_shadow.getBelt_motor_detail_json_list().get(i).getFaxlealarm()+
data_shadow.getBelt_motor_detail_json_list().get(i).getRatealarm()+
data_shadow.getBelt_motor_detail_json_list().get(i).getCurrentalarm()+
data_shadow.getBelt_motor_detail_json_list().get(i).getPoweralarm()+
data_shadow.getBelt_motor_detail_json_list().get(i).getTemAalarm()+
data_shadow.getBelt_motor_detail_json_list().get(i).getRaxlealarm()+
data_shadow.getBelt_motor_detail_json_list().get(i).getSpeedalarm()+
data_shadow.getBelt_motor_detail_json_list().get(i).getTemBalarm()+
data_shadow.getBelt_motor_detail_json_list().get(i).getTemCalarm();
if(alarm>0)//只要以上警报内容有一项为1,相加结果就大于0
{
alarmCount++;
}
}
if(alarmCount>0){
//TODO有警报
Intent intent=new Intent(context, MainBeltDetailActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
intent.setAction(String.valueOf(System.currentTimeMillis()));
notification.alarmNotification("警告", SystemConfig.ALARM_MAIN_BELT,intent, SystemConfig.CODE_MAIN_BELT);
isAlarm=true;
alarmCount=0;
}
//风机子系统电机页面报警
for(inti=0;i<data_shadow.getFan_room_motor_detail_json_list().size();i++)
{
alarm=data_shadow.getFan_room_motor_detail_json_list().get(i).getAcalarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getAxle1alarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getAxle2alarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getEdalarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getHm1alarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getHm2alarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getPoweralarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getTemAalarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getTemBalarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getU1alarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getU2alarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getU3alarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getVm1alarm()+
data_shadow.getFan_room_motor_detail_json_list().get(i).getVm2alarm();
if(alarm>0)//只要以上警报内容有一项为1,相加结果就大于0
{
//TODO有警报
alarmCount++;
}
}
if(alarmCount>0){
Intent intent=new Intent(context, FanRoomDetailActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
intent.setAction(String.valueOf(System.currentTimeMillis()));
notification.alarmNotification("警告", SystemConfig.ALARM_FAN_ROOM,intent, SystemConfig.CODE_FAN_ROOM);
isAlarm=true;
alarmCount=0;
}
public void onDestroy(){
super.onDestroy();
this.threadDisable = true;
notification.cleanAllNotification();
mp.release();
Log.v("CountService", "ondestroy");
}
public Dialog onCreateDialog() {
Dialog dialog = null;
MyDialog.BuildercustomBuilder = new
MyDialog.Builder(this);
customBuilder.setTitle("警告")
.setMessage("系统中有报警,请下拉状态栏查看通知,若需要关闭报警提示请点击“取消声震”")
.setNeutralButton("取消声震",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
mp.pause();
shake.cancel();
dialog.dismiss();
}
});
dialog = customBuilder.create();
return dialog;
}
案例2 智慧矿山报警流程
核心代码如下:
public classNotifications {
public Context context;
// public Context alarmcontext;
public NotificationManager manager;
public Notifications(Context context){
this.context=context;
manager = (NotificationManager) context
.getSystemService(Context.NOTIFICATION_SERVICE);// 创建一个Notification管理器
}
@SuppressWarnings("deprecation")
public void alarmNotification(String title,Stringmessage,Intentintent,intnoteCount){
// 创建一个Notification
Notification notification = new Notification(R.drawable.icon_alarm_note,
message, System.currentTimeMillis());
// 设置 通知可以被清除掉
notification.flags = Notification.FLAG_AUTO_CANCEL;
PendingIntentpendingIntent = PendingIntent.getActivity(context,0,intent, PendingIntent.FLAG_UPDATE_CURRENT);
notification.setLatestEventInfo(context, title,message, pendingIntent); manager.notify(noteCount, notification);
}
@SuppressWarnings("deprecation")
public void addNotification(String _text,int id){
Notification notification = new Notification(R.drawable.icon_alarm_note,
_text, System.currentTimeMillis());
notification.flags = Notification.FLAG_AUTO_CANCEL;
notification.defaults=Notification.DEFAULT_SOUND;
Intent intent =new Intent(context, SettingActivity.class);
PendingIntentpendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
notification.setLatestEventInfo(context, "警告!", _text, pendingIntent);
manager.notify(id, notification);
}
public void onGoingNotification(){
}
public void cleanAllNotification(){
manager.cancelAll();
}
}
引导训练与考核评价
表2-4
“引导训练”考核评价表
