chromium对网页获取favicon

每一个网页都有一个favicon,在历史记录的保存中须要用到。在content文件夹下,这个没有实现。

以下说一下我的实现过程:

web_contents_impl.cc文件里有方法:WebContentsImpl::OnUpdateFaviconURL

这种方法是内核解析到favicon之后,给chromium 的browser process反馈之后,browser process的响应方法。

该方法的实现例如以下:

FOR_EACH_OBSERVER(WebContentsObserver, observers_,
   
               
DidUpdateFaviconURL(page_id, candidates));

这里的observer,就是shell.cc

我在shell.cc加入?方法例如以下:

void Shell::DidUpdateFaviconURL(int32 page_id,
       
                     
     const std::vector<FaviconURL>& candidates) {

  UpdateFaviconURL(page_id, candidates);
}

然后,在shell_android.cc文件里加入?方法例如以下:

void Shell::UpdateFaviconURL(int32 page_id,
       
                     
     const std::vector<FaviconURL>& candidates) {

  JNIEnv* env = AttachCurrentThread();
  GURL favicon_url =
candidates.back().icon_url;
  ScopedJavaLocalRef<jstring>
j_favicon_url = base::android::ConvertUTF8ToJavaString(env,
favicon_url.spec());
  return Java_Shell_UpdateShellFaviconUrl(env,
java_object_.obj(),j_favicon_url.obj());
}

这样,Shell.java 就能够得到faviicon了

@CalledByNative
    private void
UpdateShellFaviconUrl(String faviconUrl) {
       
mShellFaviconUrl = faviconUrl;
    }

chromium对网页获取favicon,布布扣,bubuko.com

时间: 2024-08-05 11:16:53

chromium对网页获取favicon的相关文章

微信公众平台网页获取用户OpenID方法

下面我们一起来看看关于微信公众平台网页获取用户OpenID方法,有需要了解的朋友可以一起来看看吧.用户点击微信自定义菜单view类型按钮后,微信客户端将会打开开发者在按钮中填写的url值 (即网页链接),达到打开网页的目的,但是view不能获取用户的openid,需要使用微信“网页授权获取用户基本信息”高级接口结合使用,获得用户的登入个人信息.具体方法1.配置网页授权回调域名,如 www.111cn.net2.模拟公众号的第三方网页,http://www.111cn.net/getcodeurl

Chromium中网页加载进度条研究

1.     Shell.java中有成员变量:mProgressDrawable. 该成员变量在方法:onFinishInflate中被初始化. 在该类中有方法:onLoadProgressChanged,该方法中对进度条的值进行改变,并且对刷新完成事件进行反馈. 2.     上面的这个方法是在cc文件中被调用的. 上面方法对应的cc方法是shell_android.cc文件中的LoadProgressChanged方法. voidShell::LoadProgressChanged(Web

微信快速开发框架V2.3--增加语音识别及网页获取用户信息(八),代码已更新至Github

不知不觉,版本以每周更新一次的脚步进行着,接下来应该是重构我的代码及框架的结构,有朋友反应代码有点乱,确实如此,当时写的时候只是按照订阅号来写的,后来才慢慢增加到支持API接口.目前还在开发第三方微信平台,旨在使用户能够无需自己开发就能简易搭建微信平台. 更新内容 1.增加支持语音识别 2.增加"网页授权获取用户基本信息" 语音识别其实是对Voice信息的一个扩展,您必须启用语音识别功能,启用后会在VoiceMessage中增加一个Recongnition字段,我们可以判断这个字段的内

android4.4 webview chromium显示网页的chromium内核结构

android4.4 webview chromium是单进程的,图中所有组件都运行在Browser进程中. 按从上而下的顺序介绍这张图中与显示网页相关的chromium内核结构. 1.AwContents->WebContentsImpl AwContnents的创建过程如下图: AwContents是WebView接口的主要实现类. native层的AwContents包含chromium内核browser组件中的类WebContents. WebContents是chromium内核bro

web学习---html,js,php,mysql一个动态网页获取流程

使用bootstrap的cms模版系统搭建了一个信息管理系统.通过这个系统学习动态网页获取的工作流程. 抓包分析一个页面的数据请求流程如下图所示: 同样,对于需要向数据库插入数据,可以使用ajax接口向php后台发送参数,php脚本解析后通过与mysql的接口写入数据库. 需要注意的是php5.5的版本的mysql接口与php4.*的接口不同,不能向下兼容.php 5.* 对应的是mysqli_connect,php 4.*对应的是mysql_connect

小白学react之网页获取微信用户信息

通过上一篇<小白学react之EJS模版实战>我们学习了如何通过EJS模版生成我们高定制化的index.html文件. 本篇我们将会继续延续我们的alt-tutorial项目的实战计划,去获取微信扫码用户的信息,并将头像显示在我们页面的右上角上. 最终实战效果将如下所示. 首先根据我们的网站url生成二维码,比如我们可以通过浏览器的FeHelper来生成: 然后用户通过微信扫码: 最后用户确定授权后获取到用户的基本信息,并将头像显示在右上角: 1. 内网穿透准备 我们获取微信用户信息的过程中,

微信公众平台开发(106) 网页获取用户地理位置

关键字:微信公众平台 JSSDK 获取地理位置接口 网页获取用户地理位置 getLocation作者:方倍工作室 原文:http://www.cnblogs.com/txw1958/p/weixin-web-location.html 在这篇微信公众平台开发教程中,我们将介绍如何在网页中获取用户的地理位置信息. 本文分为以下二个部分: 生成JS-SDK权限验证签名 使用地理位置接口获取坐标 一.微信JS-SDK 1. 获得Access Token access token的获得方法在前面有介绍,

微信小程序--通过请求网页获取信息并显示

效果描述: 按动主页按钮跳转至列表页,在列表页显示请求网页所获取的信息,并通过所得信息的id的不同,链接到不同的网页进一步获取不同信息. 触碰按钮跳转至列表页触碰表题按钮跳转至详情页,其中不同的按钮对应的详情页内容不同而格式相同. 这样的好处是,可以通过网页信息的改变自动改变页面信息. 流程: 使用Api: wx.request() //请求网页信息wx.navigateTo()  //跳转页面 注意点: 1.在列表页,要将网页上获取的信息根据id的不同,选择对应信息显示在列表页,并将其显示在详

基于node(express)实现微信内第三方网页获取用户信息

近来,有个需求:用户在微信中打开第三方网页,然后输入姓名手机号登录.用户退出后,再次进入网页不需要登录.拿到需求后,就看了下微信的公众平台开发者文档,原来微信内打开第三方网页,可以拿到用户的openid(每个用户唯一),甚至经过授权后可以拿到用户的昵称.性别.所在地等信息. 废话少说,直接来吧! 第一步:获取code 在确保微信公众账号拥有授权作用域(scope参数)的权限的前提下(服务号获得高级接口后,默认拥有scope参数中的snsapi_base和snsapi_userinfo).获取co