Как открыть документ Word в виде редактируемого файла с помощью Intent на Android? - PullRequest
1 голос
/ 13 марта 2019

Я пытаюсь открыть файл docx в Word на Android с помощью Intent, но он всегда открывается только для чтения (Word предлагает сказать, что он доступен только для чтения).

Файл доступен для чтения и записи вдругие приложения, которые могут редактировать документы (например, WPS Office).Только Microsoft Word является проблемой.

        String fileUrl = "/storage/emulated/0/Download/test.docx";
    File file = new File(fileUrl);
    String mime = "application/vnd.openxmlformats-officedocument.wordprocessingml.document";

    Uri theUri = FileProvider.getUriForFile(this,
                "com.example.testint.fileprovider",
                file);
    Intent intent = new Intent();

    intent.setAction(android.content.Intent.ACTION_VIEW);
    intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION | Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_PERSISTABLE_URI_PERMISSION);
    intent.setDataAndType(theUri, mime);

    startActivity(intent);

Я запустил Intent Intercept с несколькими другими приложениями.ASUS File Manager и ASTRO File Manager, а также File Manager 1.36 способны открывать документы Word с правами чтения / записи с использованием содержимого: // и не имеют проблемы только для чтения.Намерения выглядят так же, как мои намерения, поэтому я не вижу, как они могут работать, когда это не так.

Это из файлового менеджера ASUS:

    intent://com.asus.filemanager.OpenFileProvider/file/sdcard/Documents/Test.docx#Intent;scheme=content;type=application/vnd.openxmlformats-officedocument.wordprocessingml.document;launchFlags=0x3000000;end 
------------ 
ACTION: android.intent.action.VIEW 
DATA: content://com.asus.filemanager.OpenFileProvider/file/sdcard/Documents/Test.docx 
MIME: application/vnd.openxmlformats-officedocument.wordprocessingml.document 
URI: intent://com.asus.filemanager.OpenFileProvider/file/sdcard/Documents/Test.docx#Intent;scheme=content;type=application/vnd.openxmlformats-officedocument.wordprocessingml.document;launchFlags=0x3000000;end 
FLAGS: 
FLAG_ACTIVITY_FORWARD_RESULT 
FLAG_ACTIVITY_PREVIOUS_IS_TOP 

Кто-нибудь еще управлял здесь?открыть документы Word для чтения и записи в порядке?

1 Ответ

0 голосов
/ 25 июля 2019

Вы можете использовать старый формат файла, например, file:///storage/emulated/0/Android/data/.../hello.docx или поставщик контента, например content://org.cryptomator.fileprovider/external_files/Android/data/org.cryptomator/cache/decrypted/hallo.docx НО файл не может быть во внутреннем хранилище приложения. Тогда файлы доступны для записи!

Файлы с напр. расширение .doc недоступно для записи или файлы, находящиеся во внутреннем хранилище, также недоступны для записи. Здесь вы можете найти краткий обзор: https://github.com/cryptomator/cryptomator-android/issues/150#issuecomment-514401775

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...