Q:

Смена адреса WebView

Здравствуйте! =)
Есть Android WebView.
Есть меню. Списки меню открывают Activity со списком кнопок. Каждая кнопка - определенная ссылка.
Нужно по тапе на кнопку:
Закрыть текущее активити и в 1м активити (оно же WebView) открыть ссылку. 
Суть вопроса: как передать новую ссылку, не давая приложению прав открытия всех сторонних ссылок? Средствами intent (?) с передачей параметра исключительно такому-то com.package.name?
Заранее спасибо!

A:

Запускаем второе Activity посредством метода startActivityForResult(), где можно указать request code.
При нажатии кнопки во втором Activity возвращаем адрес в первое Activity вызовом setResult().
В первом Activity переопределяем onActivityResult() и в нём ожидаем результата из второго Activity, при получении которого, извлекаем адрес для загрузки в WebView из Intent'а, передающегося одним из параметров в onActivityResult().
Загружаем полученный адрес в WebView.

Чуток наколеночного кода, дабы было понятнее:
Первое Activity:
public class FirstActivity extends Activity {
    private static final int SOME_REQUEST_ID = 1234;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        final Button button = new Button(this);
        button.setText("Open another activity.");
        setContentView(button);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                startActivityForResult(new Intent(FirstActivity.this, SecondActivity.class), SOME_REQUEST_ID);
            }
        });
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if ((requestCode == SOME_REQUEST_ID) && (resultCode == RESULT_OK)) {
            Toast.makeText(this, "Load " + data.getStringExtra("url") + " in WebView.", Toast.LENGTH_LONG).show();
        }
    }
}

Второе Activity:
public class SecondActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        final Button button = new Button(this);
        button.setText("Pick URL and return to previous activity.");
        setContentView(button);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                setResult(RESULT_OK, new Intent().putExtra("url", "http://google.com/"));
                finish();
            }
        });
    }
}

