• kgwb--发送接收信息流程,


    发送:

    1,选择上传的图片------》保存图片信息(上传之前,本地)-----》上传图片到 应用服务器------》上传成功后发送图片信息到openfire服务器,同时修改图片信息(图片的网络地址,缩略地址),

    2,进行录音----》录完后转码----》保存录音信息(本地)-----》上传录音,成功后,发送音频信息(保存音频信息),

    接收:

    1,接收图片信息----》解析数据,下载图片------》把图片信息保存到本地,

    2,接收录音信息----》下载录音,转码-----》保存录音信息,

    同步显示(录音,图片):

    1,在 客户端显示

    2,发送 图片或者录音 到 系统服务器

    3,发送 信息 到openfire 服务器

    a, 客户端显示,发送系统服务器失败, openfire发送信息失败,

    b,客户端显示,发送系统服务器成功,openfire发送信息成功,

    c,客户端显示,发送系统服务器成功,openfire发送信息失败,

    ps:(在生成信息时 第一次保存 一条数据到本地数据库,之后 修改这条数据比如 其状态,比如网络存储路径)

    now process:生成 图片或者录音,保存数据到本地数据库--》上传系统服务器---》成功后 显示客户端,同时修改本地数据库,同时发送一条信息到openfire----》openfire 成功或者失败 回调,然后 修改本地数据,

    保存到本地数据库:解读下,保存的是两个路径,一个是 存储到 缓存文件的路径,一个是网络路径,也就是说,真正的 音频,视频文件是 存储在本地的,而不是数据库当中,所以一旦清理了缓存文件,那么 就需要通过资源的

    网络路径进行 下载,无论是自己发的,还是好友发的信息,

    particularly:生成录音----》转码(wav到amr)----》本地的WAV保存到本地数据库,生成的amr路径上传到系统服务器用,----》上传成功后,本地的amr文件就可以 delete掉了,

                      生成图片---》控制尺寸,如果大于640的,等比例缩放,

    接收 语音或者图片信息:第一时间 保存到本地数据库,并且显示在客户端,点击时候 进行其它的操作,

    点击 语音信息:如果本地没有,下载语音 转码,然后 将 amr本地文件删除,

    点击 图片信息:如果本地没有,下载图片信息, 本地缓存信息 并没有 保存到本地数据库,

    对于图片:上传时候,有本地的地址,发送后生成一个网络的地址,接收的时候,只有网络的地址,没有本地的地址,下载后 会生成一个本地的缓存地址,

    本地地址----》网络地址,

    网络地址----》本地地址,

    显示图片,播放录音:如果有本地地址,那么默认本地有存储,用本地地址,如果没有 就通过网络地址,加载 图片,录音信息,同时保存一份 地址到本地 数据库中去(其中对于接收的 图片来说,用了第三方的,传递一个网络地址或者传递一个 图片,是没有 将地址保存到本地去的,因此对于后期的缓存管理,也用第三方的,而 至于 如果本地存储了的,那么第三方 自己自有方法来判断,是不会 去网络再加载的),

    页面切换 或者 突然断电,发送中的状态怎么处理,要么发送失败,要么发送成功,发送中 不应该持续,怎么处理?第一次进入页面,查看消息状态,如果是发送中的状态,那么查询出来后,设置为发送失败,

    --------------------------------------------------------------------------

    70%,

    1,服务器接口:一个是 进入聊天界面的接口,一个是 名人聊天记录的 接口,本地存,还是服务器存,

    2,回调失败的处理 覆盖

    3,与Android联调

    4,名人聊天列表

    5,底部Tabbar上几个跳转

  • 相关阅读:
    uva11021
    WC2019退役失败记
    北大集训2018垫底记
    NOI后训练记录
    NOI2018垫底记
    NOI前训练记录
    JSOI2018R2游(afo)记
    HNOI(AHOI)2018游记
    JSOI2018R1(九省联考)游(afo)记
    LR 8 Hello 戊戌
  • 原文地址:https://www.cnblogs.com/guligei/p/3533400.html
Copyright © 2020-2023  润新知