一、在AndroidManifest.xml中定义action事件

<service
android:name=".service.NettyService">
<intent-filter>
<action android:name="com.hovans.netty.ACTION_CHECK_SESSION" />
<action android:name="com.hovans.netty.ACTION_HEARTBEAT" />
<action android:name="com.hovans.netty.ACTION_CONNECT_SESSION" />
<action android:name="com.hovans.netty.ACTION_DISCONNECT_SESSION" />
</intent-filter>
</service>

二、定义一个Intent类

public class NettyIntent {
public static final String ACTION_CHECK_SESSION = "com.hovans.netty.ACTION_CHECK_SESSION";
public static final String ACTION_HEARTBEAT = "com.hovans.netty.ACTION_HEARTBEAT";
public static final String ACTION_CONNECT_SESSION = "com.hovans.netty.ACTION_CONNECT_SESSION";
public static final String ACTION_DISCONNECT_SESSION = "com.hovans.netty.ACTION_DISCONNECT_SESSION";
}

三、action出发示例代码:

public void onStartClick(View view) {
System.out.println("duanliang,HomeActivity.onStartClick");
startService(new Intent(NettyIntent.ACTION_CONNECT_SESSION));
}

四、action响应示例代码:

public void onWorkerRequest(Intent intent, int i) {
if (NettyIntent.ACTION_CONNECT_SESSION.equals(intent.getAction())) {
if(mChannel != null) {
disconnectSessionIfItNeeds();
}
connectSessionIfItNeeds();
} else if(NettyIntent.ACTION_HEARTBEAT.equals(intent.getAction())) {
if(checkConnection() == false) {
connectSessionIfItNeeds();
}
} else if(NettyIntent.ACTION_CHECK_SESSION.equals(intent.getAction())) {
scheduleToReconnect();
} else if(NettyIntent.ACTION_DISCONNECT_SESSION.equals(intent.getAction())) {
disconnectSessionIfItNeeds();
}
}

其中onWorkerRequest(Intent intent, int i)的定义见博文(待补充)

Android中action的定义相关推荐

  1. android中小数怎么定义,android 如何保留数据两位小数

    释放双眼,带上耳机,听听看~! 今天,简单讲讲android如何保留运算结果为浮点数时,保留两位小数显示. 这个其实很简单,最近做一个功能时,获取到文件的大小为B的数据,在界面上需要显示为MB,这是需 ...

  2. Android中使用dimen定义尺寸

    最近,遇到了一种定义尺寸的方法,类似于C里面的宏定义一样,其实以前已经见过了这种使用方式,今天有时间就记录一下方便以后使用.下面来介绍一下: 尺寸资源XML文件的使用        下面还是通过一个实 ...

  3. android中使用dimen定义尺寸 .

    尺寸资源XML文件的使用        下面还是通过一个实例来演示尺寸资源的用法.该实例在布局文件中添加一个TextView和一个Button,分别使用尺寸资源文件来定义它们的宽和高.         ...

  4. android中shape资源定义,Android可绘制对象资源之shape和layer-list使用

    Code4Android.jpg 前言 文章中内容多来自谷歌官方文档详戳,一些示例代码详戳GitHub,不喜请轻喷. 可绘制对象资源 可绘制对象资源是一般概念,是指可在屏幕上绘制的图形,以及可以使用 ...

  5. Android中如何自己定义吐司(Toast)

    Android系统里面有个东西很好用,也很常用,那就是Toast,但是长期使用也会发现,Toast有他的不足之处:形式单一,只有文字,风格不变等等,那么要如何自定义一个Toast呢,我们可以先从分析A ...

  6. android中shape资源定义,Android中drawable使用Shape资源

    本文实例为大家分享了drawable使用Shape资源的具体内容,供大家参考,具体内容如下 1.画一条水平方向的虚线 android:shape="line" > andro ...

  7. android自定义常量,Android中最佳常量定义方法

    一.常量定义最佳方法 采用左移和与运算,具体参考谷歌常量定义方法. 例子: 现在有一个手机视屏app,有一下标记属性: 1.视屏是否免费 2.是否是视频播放期 3.视频是否为VIP视频 4.视频是否为 ...

  8. java android 数组_android中数组的定义与使用

    android中数组的定义 可以直接在JAVA代码中声明,也可以在res->values目录下新建一个xml文件,作为数组资源进行声明 字符数组可以有如下2种声明方式String[]或者是Lis ...

  9. Android中MediaButtonReceiver广播监听器的机制分析

    转载请注明出处:http://blog.csdn.net/qinjuning 在Android中并没有定义MediaButtonReceive这个广播类,MediaButtonReceive只是作为一 ...

最新文章

  1. linux expect日期加减,如何“输出”出命令“日期”? (linux/expect/sftp)
  2. 使用Python进行科学计算:NumPy入门
  3. windows mobile设置插移动卡没反应_ETC不用时,能不能把卡拔下来
  4. slf4j绑定器_用于ADFLogger的SLF4J绑定–缺少的部分
  5. 面试之 Redis汇总
  6. SSAS的MDX语句整理
  7. 2T架构师学习资料干货分享
  8. node-ffi 调用Golang动态库
  9. java宝马奔驰汽车正在生产代码_Java的三种工厂模式
  10. CheckBox多选按钮实现CompoundButton.OnCheckedChangeListener
  11. Unity3D好用Unity模型场景素材和Unity资源大合集
  12. 【分享】小米MIUI免root一键删除系统内置软件
  13. 【Proteus仿真】波形信号发生器(4种波形可选,频率可调)
  14. MSOCache office问题
  15. 常山浙西计算机学校,常山这所最早的学校你上过吗?历经三个世纪,他依然在最初的地方等你……...
  16. MindMaster思维导图及亿图图示会员 优惠活动
  17. EditText.setSelection方法的作用
  18. vue缓存服务器文件到本地,vue中,在本地缓存中读写数据的方法
  19. 现货黄金投资的鳄鱼法则
  20. three.js 07-06 之 Sprite 一幅图片多个精灵

热门文章

  1. 清北 计算机硕士 薪资,行业薪资分析|清北毕业生偏爱不同,这个行业薪资平均最高!...
  2. 字节跳动+京东+360+网易面试题整理,移动架构师成长路线
  3. vw css什么单位,CSS vw单位
  4. 魔兽世界服务器同时在线人数,厉害了!《魔兽世界》怀旧服同时在线玩家已超过百万...
  5. 主定理的证明及应用举例
  6. (附源码)springboot图书管理系统 毕业设计 160934
  7. 塑壳断路器用考虑启动电流么_塑壳断路器和微型断路器的区别
  8. vscode 运行C++
  9. Job Scheduling简介
  10. moodle php平台,“MOODLE平台安装与使用”