찾다

 >  Q&A  >  본문

java - Android 弱网络环境下与服务器交互怎么实现???

现在项目上有这么个需求,客户拿着APP去一个深山老林里(或者去一个偏僻的村庄)去和核查情况,网络情况不是很好,有可能是2G网络 也有可能时刻断网,但是他要通过APP与服务器交互了,首先是登录就要与服务器交互,然后紧接着获取一些核查规则来查看,这些都是返回的json字符串,手机端进行解析,但是这种弱网络情况请求应该会很慢很慢吧,有没有一种方式能够变快呢? 我查阅了一些资料,网上说:服务端通过将数据压缩后然后传递给客户端,客户端在进行解压,在解析json并展示···· 哪位大神遇到过这种需求。求给个思路。谢谢!

巴扎黑巴扎黑2770일 전1083

모든 응답(11)나는 대답할 것이다

  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:32:03

    으아악

    회신하다
    0
  • 黄舟

    黄舟2017-04-18 10:32:03

    데이터 압축은 데이터 전송량을 줄이기 위해 사용됩니다. 약한 네트워크에서는 속도를 높일 수 있지만 네트워크가 없으면 쓸모가 없습니다. 앱에서 제공하는 관련 매개변수를 기반으로 예측 모델을 만들고 다음 기간에 요청 콘텐츠가 사전 전송될지 예측할 수 있나요?

    회신하다
    0
  • 怪我咯

    怪我咯2017-04-18 10:32:03

    마지막 요청을 캐시합니다. 서버는 네트워크 상태가 약한 경우에만 변경된 콘텐츠를 전달하고 변경된 콘텐츠를 마지막 캐시에 삽입하여 표시합니다. 이 네트워크가 가장 경제적입니다.

    회신하다
    0
  • 黄舟

    黄舟2017-04-18 10:32:03

    데이터 캐싱, 요청된 데이터는 데이터 표시를 위해 로컬로 캐시될 수 있으며, 업로드해야 하는 데이터는 먼저 로컬로 캐시되어 네트워크 신호가 좋을 때 전송할 수 있습니다. 재접속 실패를 기다려주세요.

    회신하다
    0
  • 高洛峰

    高洛峰2017-04-18 10:32:03

    네트워크 전송의 효율성을 높이고 요청 상호 작용 시간을 최대한 단축하려면 압축이 필요합니다.
    중복 제출 방지에도 주의하세요. (일부 인터페이스의 멱등성 보장)

    회신하다
    0
  • 迷茫

    迷茫2017-04-18 10:32:03

    약한 네트워크는 서버가 응답하기 전에 네트워크가 지속적으로 연결되어 있는지 확인하는 한 요청 본문과 반환 본문의 크기가 충분히 작아야 한다는 것을 의미합니다. 친구는 없습니다. 최대한 압축하세요... 응답을 받으면 클라이언트에서 구문 분석하세요.

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-18 10:32:03

    새 데이터를 얻기 전에 이전 데이터가 페이지에 표시되도록 하려면 데이터 캐싱이 필요합니다. 위에서 언급한 데이터 압축을 피하기 위해 읽은 데이터가 캐시됩니다.

    회신하다
    0
  • 阿神

    阿神2017-04-18 10:32:03

    xml을 사용하여 데이터를 전송하고 로컬에 저장하며 네트워크 연결이 없을 때 로컬 데이터를 표시합니다.

    회신하다
    0
  • 黄舟

    黄舟2017-04-18 10:32:03

    SQLite는 일부 데이터를 매개변수 길이로 축약하여 저장합니다. http에 반환 값이 있는지 확인한 후 다시 보냅니다.

    회신하다
    0
  • 高洛峰

    高洛峰2017-04-18 10:32:03

    MQTT라는 것이 있습니다

    회신하다
    0
  • 취소회신하다