Отправка видео по URI

Я разрабатываю приложение для Android, которое позволяет пользователю выбирать видео со своего устройства и после этого делиться видео с другими людьми. Я хочу сохранить путь к видео, чтобы в следующий раз, когда пользователь откроет приложение, ему нужно будет только нажать кнопку «Поделиться». Мне удалось выполнить первую часть и сохранить Uri в виде строки с помощью SharedPreferences, но когда я возвращаюсь в приложение после закрытия и пытаюсь поделиться, приложение вылетает. Я понимаю, что это произошло, потому что я не даю правильного разрешения. Но я перепробовал все, что нашел в Google, но не нашел решения.

мой код:

Main2Activity.this.grantUriPermission("com.whatsapp", selectedVideo, Intent.FLAG_GRANT_READ_URI_PERMISSION);

        Intent shareVideo = new Intent();
        shareVideo.setAction(Intent.ACTION_SEND);
        shareVideo.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
        shareVideo.setPackage("com.whatsapp");
        shareVideo.putExtra("jid", PhoneNumberUtils.stripSeparators("972"+phoneNumber) + "@s.whatsapp.net");
        shareVideo.putExtra(Intent.EXTRA_STREAM, selectedVideo);
        shareVideo.setType("video/*");
        shareVideo.putExtra(Intent.EXTRA_TEXT,
                getString(R.string.user_name) + " : " + userName + "\n" +
                        getString(R.string.user_email) + " : " + userEmail + "\n" +
                        getString(R.string.user_phone_number) + " : " + userPhoneNumber + "\n");
        startActivity(shareVideo);

Отметьте этот документ developer.android.com/training/data-storage/files#java и этот developer.android.com/training/secure-file-sharing/share-fil‌ e

Crammeur 24.07.2018 16:56

Я проверял эти документы несколько раз и не нашел правильного способа сделать это.

Orei30 24.07.2018 18:20
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
41
0

Другие вопросы по теме