Не может просматривать файл с другим действием через намерениеAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Не может просматривать файл с другим действием через намерение

Сообщение Anonymous »

Без использования FileChooser я пытаюсь открыть файл во внешнем общественном каталоге документов для приложения, такого как Acrobat для просмотра. У меня есть FileProvider, настроенный как для внутренних, так и для внешних источников, и это работало в другом моем коде. Скорее всего, я бы сохранил их в активах, а затем скопировал их во внутреннем/внешнем хранилище и поднимаю их через intent.action_view. Подобный тип сообщения при запуске на фактическом телефоне с установленным акробатом. < /P>
Это текущий код, который у меня есть: < /p>

Код: Выделить всё

    File f = new File(getExternalFilesDir("documents"), "jhug.pdf");
Uri fileUri = FileProvider.getUriForFile(Recorder.this, "com.noware.oakesn.jibonbondhu.provider", f);

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(fileUri);
intent.setType("application/pdf");
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

try
{
getContentResolver().openInputStream(fileUri);
}
catch (FileNotFoundException e)
{
throw new RuntimeException(e);
}

// Grant permission to all possible handling apps for this type
// Overkill
List resInfoList = getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
for (ResolveInfo resolveInfo : resInfoList) {
String packageName = resolveInfo.activityInfo.packageName;
grantUriPermission(packageName, fileUri, Intent.FLAG_GRANT_READ_URI_PERMISSION);
}

startActivity(intent);

< /code>
from androidmanifest.xml: < /p>
    
        android:name="androidx.core.content.FileProvider"
android:authorities="com.noware.oakesn.jibonbondhu.provider"
android:exported="false"
android:grantUriPermissions="true"
android:readPermission="android.permission.permRead">





< /code>
из file_paths.xml: < /p>
    





f имеет значение/storage/emult/0/android/data/com.noware.oakesn.jibonbondhu/files/documents/jhug.pdf
uri имеет значение Content: //com.noware.oakesn.jibonbondhu.provider/external_files/android/data/com.noware.oakesn.jibonbondhu/files/documents/jhug.pdf
file существует, и OpenInputStream (). GetExternalStoragePublicDirectory (Environment.Directory_Documents). Он не получает разрешения, даже если есть копия файла. Я поместил файлы там с помощью Explorer. < /P>
Ничего в logcat. Похоже, вам нужна примечание от Бога в эти дни, чтобы читать файлы по телефону!

Подробнее здесь: https://stackoverflow.com/questions/795 ... via-intent
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»