将Android 7.0 Browser 的搜索引擎默认从 yahoo 修改为 google

本文介绍如何在Android 7.0的系统浏览器中,将默认搜索引擎从Yahoo更改为Google。通过深入理解系统框架,我们将探讨涉及的步骤和可能的实现方式。
摘要由CSDN通过智能技术生成
结论在最后一句,前面都是自己调试过程的流水记录:

7.0后,搜索引擎是动态设置
所以,要追踪设置的来源,以下为步骤

1,BrowserSettings.java

return entryValues[selectedItem];
for (int i = 0; i <entryValues.length ; i++) {
Log.d("ZXGLOG","entryValues = " +entryValues[i]+"/i = " + i);//selectedItem = 0,固定为0
log的结果
// D/ZXGLOG: entryValues = yahoo_es/i = 0
// D/ZXGLOG: entryValues = google/i = 1
// D/ZXGLOG: entryValues = ask_es/i = 2
// D/ZXGLOG: entryValues = bing_es_ES/i = 3
// D/ZXGLOG: entryValues = terra_es/i = 4
// D/ZXGLOG: entryValues = hispavista/i = 5

2,BrowserSettings.java

getSearchEngineName()
entryValues[i] = searchEngines.get(i).getName(); //浏览器引擎赋值的地方

3,searchEngines从这里来:(BrowserSettings.java)
List<com.mediatek.common.search.SearchEngine> searchEngines = searchEngineManager.getAvailables();//engine comes frome here

4,通过系统服务得到 searchEngineManager (BrowserSettings.java)
SearchEngineManager searchEngineManager =
(SearchEngineManager) mContext.getSystemService(Context.SEARCH_ENGINE_SERVICE);

5,通过 getAvailables() ,跳转到SearchEngineManager .java的方法 getAvailables()
public List<SearchEngine> getAvailables() {
try {
return mService.getAvailables();
} catch (RemoteException e) {
Slog.e(TAG, "getSearchEngineInfos() failed: " + e);
return null;
}
}

可以看出是从 mService.getAvailables();这里来的

6,m
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值