预置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 plaincopy

  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. // Package path can be changed, but should match <manifest package="..."> in AndroidManifest.xml.
  5. package com.android.partnerbrowsercustomizations.example;
  6. import android.content.ContentProvider;
  7. import android.content.ContentValues;
  8. import android.content.UriMatcher;
  9. import android.database.Cursor;
  10. import android.database.MatrixCursor;
  11. import android.net.Uri;
  12. // Class name can be changed, but should match <provider android:name="..."> in AndroidManifest.xml.
  13. public class PartnerHomepageProviderExample extends ContentProvider {
  14. // "http://www.android.com/" is just an example. Please replace this to actual homepage.
  15. // Other strings in this class must remain as it is.
  16. private static String HOMEPAGE_URI = "http://www.baidu.com";
  17. private static final int URI_MATCH_HOMEPAGE = 0;
  18. private static final UriMatcher URI_MATCHER = new UriMatcher(UriMatcher.NO_MATCH);
  19. static {
  20. URI_MATCHER.addURI("com.android.partnerbrowsercustomizations", "homepage",
  21. URI_MATCH_HOMEPAGE);
  22. }
  23. @Override
  24. public boolean onCreate() {
  25. return true;
  26. }
  27. @Override
  28. public String getType(Uri uri) {
  29. // In fact, Chrome does not call this.
  30. // Just a recommaned ContentProvider practice in general.
  31. switch (URI_MATCHER.match(uri)) {
  32. case URI_MATCH_HOMEPAGE:
  33. return "vnd.android.cursor.item/partnerhomepage";
  34. default:
  35. return null;
  36. }
  37. }
  38. @Override
  39. public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs,
  40. String sortOrder) {
  41. switch (URI_MATCHER.match(uri)) {
  42. case URI_MATCH_HOMEPAGE:
  43. MatrixCursor cursor = new MatrixCursor(new String[] { "homepage" }, 1);
  44. cursor.addRow(new Object[] { HOMEPAGE_URI });
  45. return cursor;
  46. default:
  47. return null;
  48. }
  49. }
  50. @Override
  51. public Uri insert(Uri uri, ContentValues values) {
  52. throw new UnsupportedOperationException();
  53. }
  54. @Override
  55. public int delete(Uri uri, String selection, String[] selectionArgs) {
  56. throw new UnsupportedOperationException();
  57. }
  58. @Override
  59. public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) {
  60. throw new UnsupportedOperationException();
  61. }
  62. }

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 plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!-- Copyright (C) 2012 The Android Open Source Project
  3. Licensed under the Apache License, Version 2.0 (the "License");
  4. you may not use this file except in compliance with the License.
  5. You may obtain a copy of the License at
  6. http://www.apache.org/licenses/LICENSE-2.0
  7. Unless required by applicable law or agreed to in writing, software
  8. distributed under the License is distributed on an "AS IS" BASIS,
  9. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. See the License for the specific language governing permissions and
  11. limitations under the License.
  12. -->
  13. <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
  14. <!-- Bookmarks -->
  15. <string name="bookmarks_folder_name">Default Bookmarks</string>
  16. <string-array name="bookmarks">
  17. <item>Google</item>
  18. <item>http://www.google.com/</item>
  19. <item>Yahoo</item>
  20. <item>http://www.yahoo.com/</item>
  21. <item>Picasa</item>
  22. <item>http://picasaweb.google.com/</item>
  23. <item>MSN</item>
  24. <item>http://www.msn.com/</item>
  25. <item>Twitter</item>
  26. <item>http://twitter.com/</item>
  27. <item>Facebook</item>
  28. <item>http://www.facebook.com/</item>
  29. <item>Wikipedia</item>
  30. <item>http://www.wikipedia.org/</item>
  31. <item>eBay</item>
  32. <item>http://www.ebay.com/</item>
  33. <item>CNN</item>
  34. <item>http://www.cnn.com/</item>
  35. <item>NY Times</item>
  36. <item>http://www.nytimes.com/</item>
  37. <item>ESPN</item>
  38. <item>http://espn.com/</item>
  39. <item>Amazon</item>
  40. <item>http://www.amazon.com/</item>
  41. <item>Weather Channel</item>
  42. <item>http://www.weather.com/</item>
  43. <item>BBC</item>
  44. <item>http://www.bbc.co.uk/</item>
  45. </string-array>
  46. </resources>

4)添加书签对应的图标,目录路径为:res\values\bookmarks_icons.xml

[html] view plaincopy

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!-- Copyright (C) 2012 The Android Open Source Project
  3. Licensed under the Apache License, Version 2.0 (the "License");
  4. you may not use this file except in compliance with the License.
  5. You may obtain a copy of the License at
  6. http://www.apache.org/licenses/LICENSE-2.0
  7. Unless required by applicable law or agreed to in writing, software
  8. distributed under the License is distributed on an "AS IS" BASIS,
  9. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. See the License for the specific language governing permissions and
  11. limitations under the License.
  12. -->
  13. <resources>
  14. <array name="bookmark_preloads">
  15. <item>@raw/favicon_google</item>
  16. <item>@raw/touch_google</item>
  17. <item>@raw/favicon_yahoo</item>
  18. <item>@raw/thumb_yahoo</item>
  19. <item>@raw/favicon_picasa</item>
  20. <item>@raw/thumb_picasa</item>
  21. <item>@raw/favicon_msn</item>
  22. <item>@raw/thumb_msn</item>
  23. <item>@raw/favicon_twitter</item>
  24. <item>@raw/thumb_twitter</item>
  25. <item>@raw/favicon_facebook</item>
  26. <item>@raw/thumb_facebook</item>
  27. <item>@raw/favicon_wikipedia</item>
  28. <item>@raw/thumb_wikipedia</item>
  29. <item>@raw/favicon_ebay</item>
  30. <item>@raw/thumb_ebay</item>
  31. <item>@raw/favicon_cnn</item>
  32. <item>@raw/thumb_cnn</item>
  33. <item>@raw/favicon_nytimes</item>
  34. <item>@raw/thumb_nytimes</item>
  35. <item>@raw/favicon_espn</item>
  36. <item>@raw/thumb_espn</item>
  37. <item>@raw/favicon_amazon</item>
  38. <item>@raw/thumb_amazon</item>
  39. <item>@raw/favicon_weatherchannel</item>
  40. <item>@raw/thumb_weatherchannel</item>
  41. <item>@raw/favicon_bbc</item>
  42. <item>@raw/thumb_bbc</item>
  43. </array>
  44. </resources>

5)编译工程,并把工程push到system/app目录下,可用以下命令:

adb push PartnerBookmarksProvider.apk system/app

三、最终结果:


时间: 2024-10-06 02:16:42

预置Chrome浏览器默认主页和书签的相关文章

chrome浏览器默认启动时打开2345导航的解决方法

2345并没有修改chrome内部设置,它只是把所有的快捷方式修改了,包括开始菜单旁边的快捷启动图标. 只需要右键chrome快捷方式,在目标一栏中,把"----chrome.exe"引号后面的所有东西删除,然后确定,就不会再有问题了.开始菜单旁边的小chrome图标一样方法都可以解决... 而若在更改目标位置时出现需要一"您的权限不足,请点击继续来获得权限." 解决方法: 对计算机图标,击右键,选择管理. 开界面后,选择本地用户和组,单击用户,选择administ

(转)chrome浏览器收藏夹(书签)的导出与导入

导出chrome浏览器的书签到一个文件中.首先选择chrome浏览器的书签管理器菜单.然后点击“整理”,然后选择“将书签导出到html文件”. 步骤阅读 2 将导出的html文件保存,用于下次导入,这个html文件,不仅可以导入给chrome浏览器,其他的浏览器也可以使用这个html文件,导入收藏夹(书签). 3 从html文件中导入收藏夹(书签).可以将从其他机器或者浏览器导出的收藏夹(书签)以html文件格式的方式,导入到chrome浏览器中.首先还是进入书签管理器菜单,然后点击“整理”,选

Win7中修改Chrome浏览器缓存文件目录

方法有两种: 第一种: 在Windows 7下可以用mklink命令把Chrome浏览器的缓存位置设置为自己需要的文件夹路径. Chrome浏览器默认的缓存文件位于: CC:\Users\登录用户名\AppData\Local\Google\Chrome\User Data\Default\Cache 假如你想指定的存放缓存文件位置在: D:\Chrome\Cache 那么,你可以先删除Chrome默认的缓存文件夹,然后在"开始→搜索框"键入"cmd",右击cmd程

chrome浏览器font-size&lt;12px无效解决办法

当样式设定font-size<12px时,chrome浏览器里字体显示仍为12px:如font-size:11px; 但是chrome还是12px的大小,很不听话. 今天我就遇到了这样的问题?网站产品分类块字体在IE9和FF下显示不正常,比预想的要小,在IE7\IE8\360\chrome里显示正常,我查了些资料就是没找到原因,问了网友才得到解决办法. -webkit-text-size-adjust 1.当样式表里font-size<12px时,中文版chrome浏览器里字体显示仍为12px

ASP.NET Core 谷歌chrome 浏览器出现ERR_UNSAFE_PORT网页可能已永久移到新的网址的解决办法

1.问题描述: 今天在使用谷歌浏览器访问IIS上搭建的一个项目,该项目设置的端口号为6000,结果不能访问,出现了如下图所示的提示信息: 2.问题所在: 出现此类问题的原因不是服务器端的问题,而是谷歌浏览器(FF浏览器也有)对一些特殊的端口进行了限制,具体有哪些端口进行了访问限制,请参见本文末. 3.问题解决: 最简单的办法就是直接修改搭建项目的端口号,避开这些谷歌限制的端口号. 谷歌|chrome浏览器默认限制端口有哪些? 谷歌|chrome浏览器:6000.6665 6666 6667 66

如何将firefox,Chrome导出的html格式书签导入IE浏览器

将Firefox书签导入IE很简单: 在Firefox的书签 - 管理书签 - 文件菜单 - 导出 -导出Firefox收藏夹文件,是个Html文件:(Chrome的到处与此类似) 用记事本打开导出的书签文件 - 另存为 - 编码选ANSI(其它不变).注意,仍要保存为HTML格式! 打开IE,文件 菜单 - 导入和导出 - 选择导入收藏夹 - 从文件导入 - 选择刚才你修改编码为ANSI的HTMl文件 - 导入成功.(或许你需要按Alt键使菜单栏显现出来) 另,修改IE收藏夹位置: 默认情况下

chrome 浏览器 手动同步书签 && 安装离线插件

现在查的很严,所以使用chrome浏览器 同步功能不是特别好,就算是FQ也会出现 同步延迟的情况,所以定时使用手动同步还是很靠谱的行为,就在网上找了下,借鉴下.亲测可用. 在Chrome浏览器没有一个提交和Google账户进行同步的按钮,不过使用中发现可以在Chrome的"设置"--"个人资料"--"登录"项里面的"高级"项,点击后出现的对话框中有个"使用默认设置",这个按钮其实就相当于手动提交同步的按钮,

webstrom打开通过顶部浏览器打开网页,被跳转到默认主页

重新开始工作啦,希望以后认真一点,并把遇到的问题都记录下来,虽然是小小白,但能无意间帮助到别人就更开心了呀 通过webstrom打开本地的文件时,发现跳转到了默认主页上,吐槽下,有些主页真的超级流氓了,怎么都改不掉 1.可以通过文件->设置->工具->web浏览器(file->Settings>Tools>Web Browsers) 2.把谷歌浏览器的path修改掉 在我的电脑中路径是:C:\Users\Administrator\AppData\Local\Googl

Chrome浏览器主页被劫持的解决

打开Chrome浏览器,出现了一个问题: 无论是否在"设置"的启动时->打开特定网页或一组网页中添加用户想要的网页,启动Chrome时的首页都是固定的页面.例如,我设置了cn.bing.com作为我想要的首页,但是每次打开Chrome浏览器,首页都是百度,这令人十分纳闷. 根据查阅资料与排查,在浏览器的地址栏输入chrome://version,看到"命令行"信息中,有一条命令是打开百度的指令,这就是每次打开Chrome首页都是百度的罪魁祸首. 这有可能是电脑