Начать поисковый запрос Google с активности - Android

Мне было интересно, есть ли более простой способ (или каким-либо образом) запустить браузер с поисковым запросом Google. Например, пользователь может выбрать определенное слово или фразу и нажать кнопку, и действие запустит браузер с поисковым запросом Google.

Спасибо.

Ответ 1

Вы можете сделать это довольно легко с нескольких строк кода (при условии, что вы хотите искать Google для "рыбы" ):

String escapedQuery = URLEncoder.encode(query, "UTF-8");
Uri uri = Uri.parse("http://www.google.com/#q=" + escapedQuery);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);

В противном случае, если вы предпочитаете запускать свой собственный Activity для обработки просмотра, вы должны иметь возможность сделать это с помощью WebView: http://developer.android.com/reference/android/webkit/WebView.html

Я думаю, что лучший ответ здесь - @zen_of_kermit's. Было бы неплохо, если бы Android разрешил пользователю предоставлять поисковую систему, но для ACTION_WEB_SEARCH, а не только для Google.

Ответ 2

Класс Intent определяет действие специально для веб-поиска:

http://developer.android.com/reference/android/content/Intent.html#ACTION_WEB_SEARCH

Вот пример того, как его использовать:

Intent intent = new Intent(Intent.ACTION_WEB_SEARCH);
intent.putExtra(SearchManager.QUERY, query); // query contains search string
startActivity(intent);

Ответ 3

# дал мне проблемы:

Uri uri = Uri.parse("https://www.google.com/search?q="+query);
Intent gSearchIntent = new Intent(Intent.ACTION_VIEW, uri);
activity.startActivity(gSearchIntent);

Ответ 4

Недавно я попробовал это. Кажется, это работает нормально. Если какие-либо изменения будут сделаны, дайте мне знать, поскольку я новичок в разработке Android.

mEdit   = (EditText)findViewById(R.id.editText);

в режиме просмотра кликов,

String q = mEdit.getText().toString();
                        Intent intent = new Intent(Intent.ACTION_WEB_SEARCH );
                        intent.putExtra(SearchManager.QUERY, q);
                        startActivity(intent);

Ответ 5

                String Search= null;
                try {
                    Search= URLEncoder.encode(s, "UTF-8");
                } catch (UnsupportedEncodingException e) {
                    e.printStackTrace();
                }
                Uri uri = Uri.parse("http://www.google.com/#q=" + Search);
                Intent intent = new Intent(Intent.ACTION_VIEW, uri);
                startActivity(intent);
            }
        });