Java Interface在Android项目开发中的一次应用

前言

之前就写过一篇关于怎么理解运用接口Interface的文章,但似乎是理解得不太好。近期有个项目开发中就卡壳了。

问题还原

我在用环信的SDK开发一个视频聊天模块,对于环信来说,只需要传入个String类型的用户ID用于拨号即可。但项目需求是要在聊天界面显示些数据,例如剩余可聊天时间。且这个时间时要持久化到本地的,每次拨通时,从本地读取时间,并在聊天界面倒计时。

所以,单纯像最开始写的Demo,只在Intent中传一个String的用户ID已经无法满足需求了。

于是我就把整个记载视频聊天信息的对象传过去。这个对象目前为A,里面有聊天会话的用户ID、剩余聊天时间等信息。

public class A{
    private String toUserId;
    private long videoTime;
    //其他业务数据字段
    ...
    //getter、setter
    ...
}

那么,我在视频聊天的Activity中,拿到了这个对象,直接操作该对象的方法获取需要的时间数据videoTime

这样,的确是能完成需求的。

但有一天,另外一个模块也要接入视频聊天,然而他的数据体不一样。

于是我创建了一个接口Interface:

public interface CallTimer extends Serializable {

    String getCallPhone();

    void setCallTime(long ms);

    long getCallTime();

}

既然对于视频聊天的Activity来说,需要的只是固定的几个数据,以及对着几个数据进行保存。那么我让各自模块中存放这些数据的类实现了CallTimer接口,然后再视频聊天的Activity中,用CallTimer来接收引用不同模块传入的数据对象即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

忘词木头人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值