预置Chrome浏览器默认主页和书签

2023-10-21 09:20

本文主要是介绍预置Chrome浏览器默认主页和书签,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

谷歌允许合作伙伴客制化Chrome的一些配置,如Chrome浏览器预置默认主页及书签,当预置成功后,将在状态栏看到主页的图标,可设置主页、主页的开启及关闭,可通过书签快捷打开对应网页。

       客制化主要通过添加对应ChromeCustomizations.apk(主页) 及PartnerBookmarksProvider.apk(书签)来实现,具体实现方法如下:

一、预置chrome默认主页(http://www.baidu.com)

1)下载homepage_provider_example工程,修改默认主页URL

       文件路径:src\com\android\partnerbrowsercustomizations\example\PartnerHomepageProviderExample.java

[java]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. // Copyright 2013 The Chromium Authors. All rights reserved.  
  2. // Use of this source code is governed by a BSD-style license that can be  
  3. // found in the LICENSE file.  
  4.   
  5. // Package path can be changed, but should match <manifest package="..."> in AndroidManifest.xml.  
  6. package com.android.partnerbrowsercustomizations.example;  
  7.   
  8. import android.content.ContentProvider;  
  9. import android.content.ContentValues;  
  10. import android.content.UriMatcher;  
  11. import android.database.Cursor;  
  12. import android.database.MatrixCursor;  
  13. import android.net.Uri;  
  14.   
  15. // Class name can be changed, but should match <provider android:name="..."> in AndroidManifest.xml.  
  16. public class PartnerHomepageProviderExample extends ContentProvider {  
  17.     // "http://www.android.com/" is just an example. Please replace this to actual homepage.  
  18.     // Other strings in this class must remain as it is.  
  19.     private static String HOMEPAGE_URI = "http://www.baidu.com";  
  20.     private static final int URI_MATCH_HOMEPAGE = 0;  
  21.     private static final UriMatcher URI_MATCHER = new UriMatcher(UriMatcher.NO_MATCH);  
  22.     static {  
  23.         URI_MATCHER.addURI("com.android.partnerbrowsercustomizations""homepage",  
  24.                 URI_MATCH_HOMEPAGE);  
  25.     }  
  26.   
  27.     @Override  
  28.     public boolean onCreate() {  
  29.         return true;  
  30.     }  
  31.   
  32.     @Override  
  33.     public String getType(Uri uri) {  
  34.         // In fact, Chrome does not call this.  
  35.         // Just a recommaned ContentProvider practice in general.  
  36.         switch (URI_MATCHER.match(uri)) {  
  37.             case URI_MATCH_HOMEPAGE:  
  38.                 return "vnd.android.cursor.item/partnerhomepage";  
  39.             default:  
  40.                 return null;  
  41.         }  
  42.     }  
  43.   
  44.     @Override  
  45.     public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs,  
  46.             String sortOrder) {  
  47.         switch (URI_MATCHER.match(uri)) {  
  48.             case URI_MATCH_HOMEPAGE:  
  49.                 MatrixCursor cursor = new MatrixCursor(new String[] { "homepage" }, 1);  
  50.                 cursor.addRow(new Object[] { HOMEPAGE_URI });  
  51.                 return cursor;  
  52.             default:  
  53.                 return null;  
  54.         }  
  55.     }  
  56.   
  57.     @Override  
  58.     public Uri insert(Uri uri, ContentValues values) {  
  59.         throw new UnsupportedOperationException();  
  60.     }  
  61.   
  62.     @Override  
  63.     public int delete(Uri uri, String selection, String[] selectionArgs) {  
  64.         throw new UnsupportedOperationException();  
  65.     }  
  66.   
  67.     @Override  
  68.     public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) {  
  69.         throw new UnsupportedOperationException();  
  70.     }  
  71.   
  72. }  
2)编译工程,并push生成的apk到system/vendor/app/ 目录

       由于工程编译出来的名称为:homepage_provider_example.apk,所以push时要修改apk的名称为:ChromeCustomizations.apk,可用以下命令:

       adb push homepage_provider_example.apk system/vendor/app/ChromeCustomizations.apk


二、预置默认书签

1)下载PartnerBookmarksProvider工程(该工程也可在源码下找到,目录路径为:packages\providers\PartnerBookmarksProvider)

2)添加书签图片资源,目录路径为res\raw



3)添加书签名称及对应的网址,目录路径为:res\values\strings.xml

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <!-- Copyright (C) 2012 The Android Open Source Project  
  3.   
  4.      Licensed under the Apache License, Version 2.0 (the "License");  
  5.      you may not use this file except in compliance with the License.  
  6.      You may obtain a copy of the License at  
  7.   
  8.           http://www.apache.org/licenses/LICENSE-2.0  
  9.   
  10.      Unless required by applicable law or agreed to in writing, software  
  11.      distributed under the License is distributed on an "AS IS" BASIS,  
  12.      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  
  13.      See the License for the specific language governing permissions and  
  14.      limitations under the License.  
  15. -->  
  16.   
  17. <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">  
  18.     <!-- Bookmarks -->  
  19.     <string name="bookmarks_folder_name">Default Bookmarks</string>  
  20.     <string-array name="bookmarks">  
  21.         <item>Google</item>  
  22.         <item>http://www.google.com/</item>  
  23.         <item>Yahoo</item>  
  24.         <item>http://www.yahoo.com/</item>  
  25.         <item>Picasa</item>  
  26.         <item>http://picasaweb.google.com/</item>  
  27.         <item>MSN</item>  
  28.         <item>http://www.msn.com/</item>  
  29.         <item>Twitter</item>  
  30.         <item>http://twitter.com/</item>  
  31.         <item>Facebook</item>  
  32.         <item>http://www.facebook.com/</item>  
  33.         <item>Wikipedia</item>  
  34.         <item>http://www.wikipedia.org/</item>  
  35.         <item>eBay</item>  
  36.         <item>http://www.ebay.com/</item>  
  37.         <item>CNN</item>  
  38.         <item>http://www.cnn.com/</item>  
  39.         <item>NY Times</item>  
  40.         <item>http://www.nytimes.com/</item>  
  41.         <item>ESPN</item>  
  42.         <item>http://espn.com/</item>  
  43.         <item>Amazon</item>  
  44.         <item>http://www.amazon.com/</item>  
  45.         <item>Weather Channel</item>  
  46.         <item>http://www.weather.com/</item>  
  47.         <item>BBC</item>  
  48.         <item>http://www.bbc.co.uk/</item>  
  49.     </string-array>  
  50. </resources>  
4)添加书签对应的图标,目录路径为:res\values\bookmarks_icons.xml
[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <!-- Copyright (C) 2012 The Android Open Source Project  
  3.   
  4.      Licensed under the Apache License, Version 2.0 (the "License");  
  5.      you may not use this file except in compliance with the License.  
  6.      You may obtain a copy of the License at  
  7.   
  8.           http://www.apache.org/licenses/LICENSE-2.0  
  9.   
  10.      Unless required by applicable law or agreed to in writing, software  
  11.      distributed under the License is distributed on an "AS IS" BASIS,  
  12.      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  
  13.      See the License for the specific language governing permissions and  
  14.      limitations under the License.  
  15. -->  
  16.   
  17. <resources>  
  18.     <array name="bookmark_preloads">  
  19.         <item>@raw/favicon_google</item>  
  20.         <item>@raw/touch_google</item>  
  21.         <item>@raw/favicon_yahoo</item>  
  22.         <item>@raw/thumb_yahoo</item>  
  23.         <item>@raw/favicon_picasa</item>  
  24.         <item>@raw/thumb_picasa</item>  
  25.         <item>@raw/favicon_msn</item>  
  26.         <item>@raw/thumb_msn</item>  
  27.         <item>@raw/favicon_twitter</item>  
  28.         <item>@raw/thumb_twitter</item>  
  29.         <item>@raw/favicon_facebook</item>  
  30.         <item>@raw/thumb_facebook</item>  
  31.         <item>@raw/favicon_wikipedia</item>  
  32.         <item>@raw/thumb_wikipedia</item>  
  33.         <item>@raw/favicon_ebay</item>  
  34.         <item>@raw/thumb_ebay</item>  
  35.         <item>@raw/favicon_cnn</item>  
  36.         <item>@raw/thumb_cnn</item>  
  37.         <item>@raw/favicon_nytimes</item>  
  38.         <item>@raw/thumb_nytimes</item>  
  39.         <item>@raw/favicon_espn</item>  
  40.         <item>@raw/thumb_espn</item>  
  41.         <item>@raw/favicon_amazon</item>  
  42.         <item>@raw/thumb_amazon</item>  
  43.         <item>@raw/favicon_weatherchannel</item>  
  44.         <item>@raw/thumb_weatherchannel</item>  
  45.         <item>@raw/favicon_bbc</item>  
  46.         <item>@raw/thumb_bbc</item>  
  47.     </array>  
  48. </resources>  
5)编译工程,并把工程push到system/app目录下,可用以下命令:

adb push PartnerBookmarksProvider.apk system/app

三、最终结果:



注:资源文件下载 http://download.csdn.net/detail/jiulousanti/7828169

这篇关于预置Chrome浏览器默认主页和书签的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/253433

相关文章

使用DrissionPage控制360浏览器的完美解决方案

《使用DrissionPage控制360浏览器的完美解决方案》在网页自动化领域,经常遇到需要保持登录状态、保留Cookie等场景,今天要分享的方案可以完美解决这个问题:使用DrissionPage直接... 目录完整代码引言为什么要使用已有用户数据?核心代码实现1. 导入必要模块2. 关键配置(重点!)3.

JavaWeb-WebSocket浏览器服务器双向通信方式

《JavaWeb-WebSocket浏览器服务器双向通信方式》文章介绍了WebSocket协议的工作原理和应用场景,包括与HTTP的对比,接着,详细介绍了如何在Java中使用WebSocket,包括配... 目录一、概述二、入门2.1 POM依赖2.2 编写配置类2.3 编写WebSocket服务2.4 浏

CSS自定义浏览器滚动条样式完整代码

《CSS自定义浏览器滚动条样式完整代码》:本文主要介绍了如何使用CSS自定义浏览器滚动条的样式,包括隐藏滚动条的角落、设置滚动条的基本样式、轨道样式和滑块样式,并提供了完整的CSS代码示例,通过这些技巧,你可以为你的网站添加个性化的滚动条样式,从而提升用户体验,详细内容请阅读本文,希望能对你有所帮助...

Python如何使用seleniumwire接管Chrome查看控制台中参数

《Python如何使用seleniumwire接管Chrome查看控制台中参数》文章介绍了如何使用Python的seleniumwire库来接管Chrome浏览器,并通过控制台查看接口参数,本文给大家... 1、cmd打开控制台,启动谷歌并制定端口号,找不到文件的加环境变量chrome.exe --rem

zeroclipboard 粘贴板的应用示例, 兼容 Chrome、IE等多浏览器

zeroclipboard单个复制按钮和多个复制按钮的实现方法 最近网站改版想让复制代码功能在多个浏览器上都可以实现,最近看网上不少说我们的代码复制功能不好用的,我们最近将会增加代码高亮等功能,希望大家多多支持我们 zeroclipboard是一个跨浏览器的库类 它利用 Flash 进行复制,所以只要浏览器装有 Flash 就可以运行,而且比 IE 的

微软正式推出 Spartan 斯巴达浏览器

作为用于替代 IE 浏览器的下一代继任者,微软的 Project Spartan 斯巴达浏览器可算是吊足了玩家们的胃口!如今,在最新的 Windows 10 Build 10049 版本起,它终于正式登场了。 斯巴达浏览器搭载了全新的渲染引擎、新的用户界面并集成了 Cortana 语音助手。功能上新增了稍后阅读列表、阅读视图、F12开发者工具、支持网页注释 (手写涂鸦),可以保存到 O

PC与android平板通过浏览器监控Verybot的视频

下面这个视频是PC与android平板通过浏览器监控Verybot的视频:           http://v.youku.com/v_show/id_XNjYzNzYyMTIw.html

搜狗浏览器打开CSDN博客排版错乱问题解决

之前发生过几次,不知道什么原因。 今天一直用着好好的,打开一个csdn连接,显示404,博文被删除了,于是就用百度快照打开试试,百度快照打开显示的排版很乱也没找到有用信息。 后面再浏览CSDN博客就排版错乱,显示一个大大二维码图片。 尝试删除IE缓存无效,使用谷歌浏览是好的。 基本锁定就是搜狗缓存导致的,于是找如何删除搜狗缓存   清除后恢复正常

240907-Gradio插入Mermaid流程图并自适应浏览器高度

A. 最终效果 B. 示例代码 import gradio as grmermaid_code = """<iframe srcdoc='<!DOCTYPE html><html><head><meta charset="utf-8" /><meta name="viewport" content="width=device-width" /><title>My static Spa

Jasperreports+jaspersoft studio 实现单个或多个jrxml(jasper)文件生成一个pdf文件,并利用Servlet发送该pdf文件到浏览器中展示

Jasperreports+jaspersoft studio 实现单个或多个jrxml(jasper)文件生成一个pdf文件,并利用Servlet发送该pdf文件到浏览器中展示; 代码如下: Demo07.jrxml <?xml version="1.0" encoding="UTF-8"?><!-- Created with Jaspersoft Studio version 6.6.