Мой проект - это в основном веб-приложение. Теперь у меня есть приложение для Android с виджетами на домашнем экране и вы хотите открыть веб-страницу во встроенном браузере при некоторых действиях пользователя. Это просто. В MyAppWidgetProvider.onUpdate я создаю новое намерение:
Intent intent = new Intent("android.intent.action.VIEW",
Uri.parse("http://my.example.com/"));
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
views.setOnClickPendingIntent(R.id.text, pendingIntent);
К сожалению, новое окно/вкладка браузера открывается каждый раз, когда пользователь нажимает на виджет. Моя страница содержит некоторые причудливые AJAX/javascript, работающие в фоновом режиме и регулярно отправляющие HTTP-запросы. Таким образом, я получаю 8 вкладок, содержащих одну страницу, и непрерывно отправляю 8-кратное количество запросов HTTP.
Есть ли какой-либо способ, например. различные действия или дополнительные параметры, чтобы не открывать новые вкладки?
В качестве обходного пути я сейчас думаю о создании нового действия, содержащего WebView, но хотел бы избежать этой сложности.