移动端网络库 chromium-net

GPL
C/C++
跨平台
2017-05-25
WolfCS

Chromium 移动端网络库,当前移动端 QUIC 支持的良好选择。

chromium-net-independent 是一个独立的网络库,它包含了Chromium中网络相关的代码,包括net库,url库,SSL库,以及Android平台的Java封装等等。同时它还是一个跨平台库,可以应用于Android等移动平台上。

chromium-net-independent 库的优势:

  • 全平台支持最新版TLS。不像OkHttp这样依赖系统提供SSL/TLS加解密功能的网络库,chromium-net-independent自身包含SSL库,因而可以全平台支持安全性更高的最新版TLS。

  • 全平台支持HTTP/2及QUIC等最新的网络协议。HTTP/2本身对TLS的版本有要求,同样由于内含SSL库,而可以全平台支持HTTP/2。

在Linux平台上构建

克隆本仓库

$ git clone https://github.com/hanpfei/chromium-net-independent.git
$ cd chromium-net-independent

如果你是第一次构建,则安装依赖:

$ ./build/install-build-deps.sh

配置编译环境

本repo包含两个branch,分别为master和cronet。master branch的代码可以分别编译出net等独立的共享库。cornet branch的代码则可以用于编译 chromium net android 平台的封装cronet。 要想编译cronet,则首先切换至cronet branch。然后编辑out/Default/args.gn文件,依据自己本地的环境,修改android_sdk_root指向自己本地Android SDK的安装目录;修改android_ndk_root指向自己本地的NDK目录(要求NDK版本为R10);可以根据需要配置target_cpu。

构建Cronet

$ gn gen out/Default/
$ ninja -C out/Default/ cronet
$ ninja -C out/Default/ cronet_java

导入二进制文件

像通常使用第三方Java库那样,将如下的jar文件导入Android工程:

out/Default/lib.java/base/base_java.jar
out/Default/lib.java/components/cronet/android/cronet_api.jar
out/Default/lib.java/components/cronet/android/cronet_java.jar
out/Default/lib.java/net/android/net_java.jar
out/Default/lib.java/url/url_java.jar

像通常使用第三方共享库文件那样,导入如下共享库文件:

out/Default/libcronet.so

在Android工程的Java代码中使用Chromium net库。

的码云指数为
超过 的项目
加载中
此软件有 1 条评论,请先登录后再查看。

暂无资讯

暂无问答

Chromium的绘制

Chromium的绘制也要从WM_PAINT的开始 HWNDMessageHandler是Chromium中UI和系统消息的媒介。它来全权处理了。 好了,一个WM_PAINT消息来了。 void HWNDMessageHandler::OnPaint(HDC dc) 中,关...

2013/05/17 17:02
349
1
chromium ④

chromium的源码非常大,选择合适的点入手能省不少力气。在 win7下编译chromium中我曾提到学习chromium源码的一个小工程test_shell,代码目录在src/webkit/tools/test_shell下, 打开src/web...

2018/07/02 10:44
58
0
编译chromium

"奋战"了一周, 终于编译出chromium浏览器. "胜利"来之不易. 记录之, 以供后来参考. 1. 准备环境: 参照官方文档, 先安装window 7 64位操作系统, 然后准备好以下软件: Visual Studio 2010 Uiti...

2013/09/14 21:31
2K
0
Error: Chromium revision is not downloaded. Failed to download Chromium

在使用prerender-spa-plugin做前端预渲染的时候,安装puppeteer的时候因为下载Chromium 失败报错,有如下解决方法: 1.使用Chromium 国内源 npm config set puppeteer_download_host=https:/...

2019/01/09 14:32
24
0
chromium之MessagePump.h

上代码,注释已经写得很详细了。 粗看一下,这是个纯虚类,用于跨平台的通用接口。 MessagePump,Pump的意思是泵,,MessagePump也就是消息泵,输送消息 namespace base { class Time; ...

2018/06/23 15:23
9
0
chromium 下载地址

http://www.chromium.org http://commondatastorage.googleapis.com/chromium-browser-continuous/index.html https://storage.googleapis.com/chromium-browser-snapshots/Linux_x64/%d/chr...

2017/12/25 20:37
292
0
调试chromium的快捷方式

chromium代码这么复杂,需要了解其调试方式

2015/04/10 23:32
1K
2

没有更多内容

加载失败,请刷新页面

返回顶部
顶部