我的问题有点奇怪,但我会尝试具体。 这是我的代码。
if(l.contains("search yahoo")||l.contains("yahoo search")&& !l.contains("search yahoo search"))
{
String query = l;
query = query.replace("search", "");
query = query.replace("yahoo", "");
String url = "http://search.yahoo.com/search?p=" + query;
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
}
if(l.contains("search bing")||l.contains("bing search")&& !l.contains("search bing search"))
{
String query = l;
query = query.replace("search", "");
query = query.replace("bing", "");
String url = "http://www.bing.com/search?q=" + query + "&go=Submit&qs=ds&form=QBLH";
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
}
else {
String v2txt = txt2SpeechWords.get(0);
v2txt = v2txt.replace("search", "");
txt2Speech.speak("searching " + v2txt, TextToSpeech.QUEUE_FLUSH, null);
Intent search = new Intent(Intent.ACTION_WEB_SEARCH);
search.putExtra(SearchManager.QUERY, v2txt);
startActivity(search);
}
在我的程序决定是否应搜索Yahoo!的部分或Bing for Bing它完美无缺。 但是对于雅虎!它会在网络浏览器中打开,但是当我点击设备上的后退按钮时,它会打开Google即时查询,除了雅虎&搜索,因为我已在代码中替换它们。
为什么会这样?我很确定在确定使用哪个搜索引擎之后就会出现问题,因为Google现在它删除了Yahoo这个词!
为什么Intent.ACTION_VIEW
被Google即时截获Yahoo!部分虽然在Bing部分中不会发生这种情况。由于我几乎抄袭了雅虎,这非常具有讽刺意味。代码进入记事本,取代雅虎成为Bing&在Android Studio中粘贴它。
答案 0 :(得分:0)
if
,而且它也是if
。 Bing的if
声明必须else if
。我的问题也有错误。在谷歌现在它不会取代雅虎!因此if
声明是错误的。我刚注意到对不起。
正确代码:
if(l.contains("search yahoo")||l.contains("yahoo search")&& !l.contains("search yahoo search"))
{
String query = l;
query = query.replace("search", "");
query = query.replace("yahoo", "");
String url = "http://search.yahoo.com/search?p=" + query;
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
}
else if(l.contains("search bing")||l.contains("bing search")&& !l.contains("search bing search"))
{
String query = l;
query = query.replace("search", "");
query = query.replace("bing", "");
String url = "http://www.bing.com/search?q=" + query + "&go=Submit&qs=ds&form=QBLH";
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
}
else {
String v2txt = txt2SpeechWords.get(0);
v2txt = v2txt.replace("search", "");
txt2Speech.speak("searching " + v2txt, TextToSpeech.QUEUE_FLUSH, null);
Intent search = new Intent(Intent.ACTION_WEB_SEARCH);
search.putExtra(SearchManager.QUERY, v2txt);
startActivity(search);
}