Страницы

Поиск по вопросам

суббота, 4 апреля 2020 г.

Android. Неявный Intent

#android #android_intent

                    
Вот тут написано: "При вызове метода startActivity() система анализирует все установленные
приложения, чтобы определить, какие из них могут откликнуться на объект Intent этого
вида.... ....Если объект Intent принимают несколько операций, система отображает диалоговое
окно, в котором пользователь может выбрать приложение для выполнения данного действия."

Возник вопрос - можно ли исключить из диалогового окна конкретное приложение, если
оно установлено у пользователя?
    


Ответы

Ответ 1



Как вариант кастомизировать выбор приложения. Получить список Intent videoIntent = new Intent(android.content.Intent.ACTION_VIEW); videoIntent.setDataAndType(Uri.parse("url"), "video/*"); List video = getPackageManager().queryIntentActivities(videoIntent, 0); ArrayList list = new ArrayList(); for (ResolveInfo info : video){ if(!info.activityInfo.packageName.equals("packageName")){ list.add(info.loadLabel(getPackageManager()).toString()); } } Предложить выбор AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Select"); builder.setItems(list.toArray(new String[list.size()]), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { //... } }); builder.show();

Комментариев нет:

Отправить комментарий