Gensee移动SDK之(二)协议

时间:2021-02-12 10:15:14

         首先,对于协议而言,有标准的,也有私有的,就看具体使用场景的修饰与更改情况了。部分朋友在接触SDK的时候会提出此疑问,只能说“各怀鬼胎”。第一,即便我们告知我们使用的协议,该用sdk的时候,还是用sdk,sdk接口层面上并不包含协议的影子,这也是sdk去繁化简的一个重要特点;第二,当回复其用A协议时,会被反问怎么不用B协议,这下这能“呵呵”了,无可奉告,兄弟,更深层次的我们回头再探讨Gensee移动SDK之(二)协议!  就老老实实的调接口吧。第三,本着学习和业务扩展的需要了解使用到的协议,这也要“回头探讨”。

        

        开发者在使用根本不用关心这个“协议”,为什么呢?

        因为sdk的原则就是把复杂的封装,变成简单的调用。举个聊天消息例子:系统内xml规则

       <msg type="chat">

           hello

           <richText>hello</richText>

       </msg>

       原始内部接口可能是这样的  sendXmlData(String xml)   ------------------------(1) xml 为上面这段xml数据

       

      对外初级接口sendChatData(String text,String richText)   -----------------------(2)text 为hello,richText为hello

      

       对外高级接口sendChatData(String content) ---------------------------------------(3)content 为hello

       对比之下封装越简单,对“协议”距离越远。用(3)  仅需要传入 “hello” 即可发送,用(1) 就需要了解xml的组成和xml的构造以及解析,把“hello” 变成  

       <msg type="chat">

           hello

           <richText>hello</richText>

       </msg>

       发送出去。


       随着各种开源项目和“手到擒来”的工具的多样和丰富,造就了能力上的两级分化,厉害的很厉害,平庸的依旧平庸,你属于哪一类Gensee移动SDK之(二)协议


       Gensee 移动sdk用到的内容协议具体再说,标准协议:

       RtSdk:RTP HTTP

       PlayerSdk :RTMP,HTTP,HLS

       VodSdk:HTTP,HLS