Comment puis-je partager un fichier audio dans Android Studio? J'ai essayé ce qui suit jusqu'à présent, mais cela ne fonctionne pas.
4 Réponses :
Votre code semble bien, mais je vous suggère d'essayer celui-ci: Si cela ne fonctionne pas non plus, assurez-vous que vous accordiez les bonnes autorisations dans le manifeste. Fichier XML (Write_External_storage): P> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Merci pour la réponse rapide. En effet, j'ai oublié d'accorder les bonnes autorisations dans le manifeste.xml. Mais après l'avoir ajouté, cela ne fonctionnera toujours pas.
Peut-être que le problème est dans la mise en œuvre de la SETONLONGCLICKLISNER ()?
L'auditeur fonctionne, d'autres types de partage (comme texte) fonctionnent également bien. Je suis assez certain que c'est à cause du chemin. C'est en quelque sorte pas correct.
Peut-être que vous n'avez pas les bonnes autorisations au répertoire dans lesquelles l'audio est. Quel est le problème? Il se bloque? Ne fait rien?
Les options de partage apparaissent correctement, mais le fichier audio n'est tout simplement pas joint. J'ai défini les bonnes autorisations en ajoutant write_external_storage dans manifeste.xml, je suppose. Je ne sais donc vraiment pas quelle est la question actuelle. Donnera une mise à jour quand je l'ai compris.
Voulez-vous poster le fichier manifeste?
Essayez également de passer à l'intention de Putextra directement le chemin, sans l'analyser à URI. Supprimer URI uri = URI.PARSE (SharePath); code> et remplacer share.phatextra (intention.extra_stream, SharePath); code>.
Je vous suggère de regarder comment utiliser un Fournisseur de fichiers a>. Vous constaterez que vous ne serez pas en mesure de fournir l'URI du fichier directement car vous êtes autorisé à exposer son URI de contenu. Jetez un coup d'œil à la
Cela a aidé beaucoup! Maintenant, il y a une chose que je n'ai pas: je ne trouve pas les MP3 à l'aide d'un gestionnaire de fichiers. Donc, ils sont probablement cachés. Quel chemin dois-je utiliser maintenant pour les atteindre?
Comment ajoutez-vous ces fichiers MP3?
Ceci est travaillé pour moi
appelez cette méthode bouton onclick: p>
J'ai remplacé uri.parse strong> avec Remplacez Ajouter sur Android Manifest: P>
ApplicationID strong> Votre colis P> Créez file_paths.xml strong> fichier dans
Créez d'abord un dossier nommé xml code> em> dans le dossier code> res em> em> ou créez un nouveau fichier de ressources XML nommé fournisseur_paths.xml code> em> et mettez le code ci-dessous à l'intérieur: button.setOnLongClickListener {
try {
val file = File("pathOfFile")
if(file.exists()) {
val uri = FileProvider.getUriForFile(this, BuildConfig.APPLICATION_ID + ".provider", file)
val intent = Intent(Intent.ACTION_SEND)
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION)
intent.setType("*/*")
intent.putExtra(Intent.EXTRA_STREAM, uri)
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent)
}
} catch (e: java.lang.Exception) {
e.printStackTrace()
toast("Error")
}
}