码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Unity Android 之 在Unity 中引入 OkHttp的操作注意(OKHttp4.xx- kotlin 的包)简单记录


    Unity Android 之 在Unity 中引入 OkHttp的操作注意(OKHttp4.xx- kotlin 的包)简单记录

    目录

    Unity Android 之 在Unity 中引入 OkHttp的操作注意(OKHttp4.xx- kotlin 的包)简单记录

    一、简单介绍

    二、OKHttp 4.xx 的 SDK 封装 aar 给 Unity 的使用注意

    三、附录 OKHttp 的一些基础知识

    1、这个程序下载一个URL,并将其内容作为字符串打印出来

    2、Post 请求服务

    3、OkHttp 的使用要求


    一、简单介绍

    整理一些在Unity上可以方便调用 Android 方法的一些接口脚本,便于后期开发使用。

    本次介绍在Android 中使用 OkHttp 进行的功能封装,然后打包成 aar 给Unity使用,OkHttp 4.0之前没有带 kotlin 代码的,以正常的方式封装给Unity 调用即可,但是OkHttp 4.0之后SDK有 kotlin 代码 就需要其他的处理,再给 Unity 使用的时候。

    OkHttp 官网:Overview - OkHttp

    OkHttp GitHub 地址:GitHub - square/okhttp: Square’s meticulous HTTP client for the JVM, Android, and GraalVM.

    HTTP是现代应用程序的网络方式。这是我们交换数据和媒体的方式。高效地使用HTTP可以让你的东西加载得更快,节省带宽。

    OkHttp是一个默认高效的HTTP客户端:

    • HTTP/2支持允许同一个主机上的所有请求共享一个套接字。
    • 连接池可以减少请求延迟(如果HTTP/2不可用)。
    • 透明的GZIP压缩下载大小。
    • 响应缓存完全避免了重复请求的网络。

    当网络出现问题时,OkHttp会持续运行:它会静默地从常见的连接问题中恢复。如果你的服务有多个IP地址,OkHttp会在第一次连接失败时尝试其他地址。对于IPv4+IPv6和托管在冗余数据中心的服务来说,这是必要的。OkHttp支持现代TLS特性(TLS 1.3、ALPN、证书钉扎)。它可以配置为支持广泛连接。

    使用OkHttp很简单。它的请求/响应API使用流畅的构建器和不可变性设计。它既支持同步阻塞调用,也支持带回调的异步调用。

    二、OKHttp 4.xx 的 SDK 封装 aar 给 Unity 的使用注意

    1、处理需要对应的 okhttp 包之外,还需要 okio-jvm 对应包

    2、然后封装到成 aar 即可,如果是 compileOnly,注意对应的 okhttp 和 okio-jvm 也需要引入Unity 的 Plugin-Android 文件夹中

    3、在配置中勾选 一下 Custom Main Gradle Tempale

    4、在 mainTemplate.gradle 中 添加  implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.4.10'

    5、以上,少了一些配置可能打包运行会报错

    三、附录 OKHttp 的一些基础知识

    1、这个程序下载一个URL,并将其内容作为字符串打印出来

    1. OkHttpClient client = new OkHttpClient();
    2. String run(String url) throws IOException {
    3. Request request = new Request.Builder()
    4. .url(url)
    5. .build();
    6. try (Response response = client.newCall(request).execute()) {
    7. return response.body().string();
    8. }
    9. }

    2、Post 请求服务

    1. public static final MediaType JSON = MediaType.get("application/json");
    2. OkHttpClient client = new OkHttpClient();
    3. String post(String url, String json) throws IOException {
    4. RequestBody body = RequestBody.create(json, JSON);
    5. Request request = new Request.Builder()
    6. .url(url)
    7. .post(body)
    8. .build();
    9. try (Response response = client.newCall(request).execute()) {
    10. return response.body().string();
    11. }
    12. }

    3、OkHttp 的使用要求

    OkHttp支持Android 5.0+ (API level 21+)和Java 8+。

    OkHttp依赖Okio来实现高性能I/O和Kotlin标准库。它们都是具有强大向后兼容性的小型库。

    我们强烈建议你保持OkHttp的最新状态。与自动更新web浏览器一样,与HTTPS客户端保持同步是防范潜在安全问题的重要手段。我们跟踪动态TLS生态系统并调整OkHttp以提高连通性和安全性。

    OkHttp使用你平台内置的TLS实现。在Java平台上OkHttp还支持Conscrypt于一体的BoringSSL与Java。如果Conscrypt是第一个安全提供者,OkHttp会使用它:

    Security.insertProviderAt(Conscrypt.newProvider(), 1);

    OkHttp 3.12。x分支支持Android 2.3+ (API级别9+)和Java 7+。这些平台不支持TLS 1.2,不应该被使用。

  • 相关阅读:
    Python 代码智能感知 —— 类型标注与特殊的注释(献给所有的Python人)
    江西服装学院图书馆藏《乡村振兴战略下传统村落文化旅游设计》许少辉八一新著
    【计算机网络】HTTP请求方法之 get请求和post请求的区别
    shell动态生成.sql文件的方法进阶
    分享从零开始学习网络设备配置(华为ensp版本)------任务1.1 安装eNSP模拟器
    基于VUE + Echarts 实现可视化数据大屏景区管理平台
    【计算机视觉40例】案例22:目标检测(YOLO方法、SSD方法)
    网络安全笔记7——防火墙技术
    【k8s】8、service详解
    [12 种安卓数据恢复方案] 最佳免费 Android 照片恢复工具榜单
  • 原文地址:https://blog.csdn.net/u014361280/article/details/132617165
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号