Добавлять всегда/только один раз в Intent.ACTION_VIEW

Я пытаюсь установить приложение по умолчанию через Intent, см. код ниже:

{
File file = new File(context.getExternalFilesDir("Documents/pdf"), filepath);

        Uri contentUri = FileProvider.getUriForFile(context, context.getApplicationContext().getPackageName() + ".fileprovider", file);

        Intent intent = new Intent(Intent.ACTION_VIEW);

        intent.setDataAndType(contentUri, "application/pdf");
        intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

        Intent createChooser = Intent.createChooser(intent,"Open In");

        PackageManager pm = context.getApplicationContext().getPackageManager();
        if(createChooser.resolveActivity(pm) != null )
        {
            context.startActivity(createChooser);
        }
}

Я хочу добиться следующего: Намерение всегда

Но я получаю следующее: намерение createChooser

Я также попытался запустить исходное намерение и получить тот же результат, код ниже:

контекст.startActivity(намерение); // удалено намерение createChooser


person umer raja    schedule 05.02.2019    source источник


Ответы (1)


Я считаю, что вы не можете установить значения по умолчанию для приложения в зависимости от ОС Android. Эта функция была удалена в более новых версиях Android.

Как я это обошел, проверьте, установлено ли у пользователя приложение, если не перенаправить их в магазин Google Play для загрузки.

person umer raja    schedule 23.01.2020