Как поделиться аудиофайлами в Android Studio (Kotlin)? - PullRequest
0 голосов
/ 10 февраля 2019

Как поделиться аудиофайлом в Android Studio?До сих пор я пробовал следующее, но это не работает.

button.setOnLongClickListener(OnLongClickListener {

            val sendIntent: Intent = Intent().apply {
            action = Intent.ACTION_SEND
            var path = "absolute/path"
            var uri = Uri.parse(path)
            putExtra(Intent.EXTRA_STREAM, uri)
            type = "audio/mp3"
        }
        startActivity(sendIntent)
        true   
    })

Ответы [ 2 ]

0 голосов
/ 14 февраля 2019

Предлагаю вам посмотреть, как использовать файл-провайдер .Вы обнаружите, что не сможете предоставить URI файла напрямую, поскольку вам разрешено только раскрывать URI его содержимого.Взгляните на Генерация URI контента для файла section

0 голосов
/ 10 февраля 2019

Ваш код выглядит нормально, но я бы посоветовал вам попробовать это:

   String sharePath = Environment.getExternalStorageDirectory().getPath()
           + "/Soundboard/Ringtones/custom_ringtone.ogg"; //This is the path of your audio file
   Uri uri = Uri.parse(sharePath); //Identifier of the audio file (Uniform Resource Identifier)
   Intent share = new Intent(Intent.ACTION_SEND); //Create a new action_send intent
   share.setType("audio/*"); //What kind of file the intent gets 
   share.putExtra(Intent.EXTRA_STREAM, uri); //Pass the audio file to the intent
   startActivity(Intent.createChooser(share, "Share Sound File")); //Start the intent

Если это тоже не сработает, убедитесь, что вы предоставили необходимые разрешения в файле Manifest.xml.(WRITE_EXTERNAL_STORAGE):

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

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