Как осуществить запуск компонента через intent?

Есть два активити.На 1- есть кнопка "Создать уведомление", после чего на отдельном активити запускаеться "создатель уведомлений", создается уведомление(извините за тавтологию) через которое идет переход по ссылке.Как создать намерение для вызова WebView на 1 активити,чтобы эта ссылка открывалась в нем, а не в браузере

public void onClick(View view) {

Context context = getApplicationContext();
Intent notificationIntent = new Intent(Intent.ACTION_VIEW,
Uri.parse("dtrek.dp.ua"));
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0,
notificationIntent, Intent.FLAG_ACTIVITY_NEW_TASK);

Notification.Builder builder = new Notification.Builder(context)
.setContentTitle("Посмотрите замены")
.setTicker("Внимание!").setWhen(System.currentTimeMillis()) // java.lang.System.currentTimeMillis()
.setContentIntent(pendingIntent)
.setDefaults(Notification.DEFAULT_SOUND).setAutoCancel(true)
.setSmallIcon(R.drawable.ic_launcher);

NotificationManager nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
nm.notify(NOTIFY_ID, builder.build());
}
  • Вопрос задан
  • 2450 просмотров
Решения вопроса 1
@belozerow
Как-то не очень понятно сформулировано вопрос, но как я понял вам нужно по клику на нотификацию открывать активити с webview. Сейчас вы создаете Intent, который могут обрабатывать все приложения по определенной схеме, вам же нужно конкретную вашу Activity.
Intent notificationIntent = new Intent(context, MyWebViewActivity.class);
notificationIntent.putExtra("url", "dtrek.dp.ua");
...

И в MyWebViewActivity в методе onCreate
WebView webview = new WebView(this);
setContentView(webview);
webview.loadUrl(getIntent().getStringExtra("url"));
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@FoxInSox
Что значит "для вызова WebView"? WebView не "вызывают", это UI компонент, как кнопка(Button), текстовое поле(TextView) или изображение (ImageView). Соответственно WebView должно присутствовать в активити:
WebView webview = new WebView(this);
setContentView(webview);
webview.loadUrl("http://slashdot.org/");

Документация.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы