注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

等待机遇

这个世界上没有人知道自己到底想要什么,就等着别人来告诉他们。

 
 
 

日志

 
 

Android Wear开发之数据通信Wear Emmet  

2015-05-06 15:03:10|  分类: Android Wear |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
  
Emmet是Android Wear一个用于手机和手表间通信的框架,自定义数据实体,然后通过gson序列化和反序列化成json数据,来进行设备间通信。

在每个activity都创建一个emmet实例,并调用对应的生命周期方法,可以创建一个父类Activity,写在父类Activity中

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
public class MainActivity extends Activity {
 
    private Emmet emmet = new Emmet();
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        emmet.onCreate(this);
    }
 
    @Override
    protected void onDestroy() {
        super.onDestroy();
        emmet.onDestroy();
    }
}
继承EmmetWearableListenerService
01
02
03
04
05
06
07
08
09
10
public class WearService extends EmmetWearableListenerService implements WearProtocol {
 
    @Override
    public void onCreate() {
        super.onCreate();
 
        Emmet emmet = getEmmet();
    }
 
}



发送数据

创建一个sender
01
SmartphoneProtocol smartphoneProtocol = emmet.createSender(SmartphoneProtocol.class);
发送
01
smartphoneProtocol.sayHello();
带参数
01
smartphoneProtocol.sayGoodbye(3,"bye", new MyObject("DeLorean"));




接受数据

接收数据只需要创建一个监听器。
01
02
03
04
05
06
07
08
09
10
11
emmet.registerReceiver(SmartphoneProtocol.class,new SmartphoneProtocol() {
    @Override
    public void sayHello() {
        Log.d(TAG,"sayHello");
    }
 
    @Override
    public void sayGoodbye(int delay, String text, MyObject myObject) {
        Log.d(TAG,"sayGoodbye "+delay+" "+text+" "+myObject.getName());
    }
});
或者直接实现
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
public class **** implements SmartphoneProtocol {
 
    @Override
    public void onCreate() {
        super.onCreate();
        getEmmet().registerReceiver(SmartphoneProtocol.class,this);
    }
 
    @Override
    public void sayHello() {
        Log.d(TAG,"sayHello");
    }
 
    @Override
    public void sayGoodbye(int delay, String text, MyObject myObject) {
        Log.d(TAG,"sayGoodbye "+delay+" "+text+" "+myObject.getName());
    }
}

项目地址:https://github.com/florent37/Wear-Emmet
  评论这张
 
阅读(113)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017