2009-09-07 4 views
0

Je veux faire une liste de tous les fichiers audio ou vidéo stockés dans l'iPhone avec l'aide de mon application. Je sais que le mp3 est stocké sur "var/mobile/media/iTune_control/music" ce chemin. Mais quand je lance mon application en utilisant ce chemin, il montre qu'il n'y a pas de fichier sur ce chemin. Je pense que le certain chemin est protégé en écriture. Est-il possible de trouver le chemin de la vidéo ou de l'audio et aussi créer sa liste. S'il vous plaît aidez-moi à résoudre ce problème.Accéder à un fichier audio ou vidéo en utilisant mon application dans l'iPhone

Répondre

1

Regardez la classe MPMediaPlayer.

Apple n'aime pas que vous jouiez avec les fichiers de chansons. La pensée est que si vous pouviez récupérer les fichiers de chansons, vous seriez en mesure de les partager avec vos amis plus facilement. Par conséquent, vous pouvez passer par la classe MPMediaPlayer et obtenir des listes et lire des chansons, mais vous ne pouvez pas accéder aux fichiers de chansons réels.

+0

alors comment des applications comme traktor dj ont la capacité d'éditer de la musique dans l'air? – alizx

+0

Les choses ont changé depuis 2009. Voir AVAssetReader: https://developer.apple.com/LIBRARY/IOS/documentation/AVFoundation/Reference/AVAssetReader_Class/index.html – mahboudz

3

Vous ne devez jamais faire d'hypothèses sur la disposition du système de fichiers et vous ne devez pas accéder au système de fichiers en dehors du bac à sable de votre application. Donc, si vous ne pouvez pas trouver le répertoire en utilisant NSSearchPathForDirectoriesInDomains(), vous ne devriez pas y accéder. Lorsque vous accédez à la bibliothèque musicale, n'utilisez pas le système de fichiers, mais utilisez plutôt le framework Media Player. La façon la plus simple d'énumérer toutes les chansons disponibles serait quelque chose comme ceci:

for (MPMediaItem* item in [MPMediaQuery songsQuery].items) { 
    NSString* title = [item valueForProperty:MPMediaItemPropertyTitle]; 
    NSString* artist = [item valueForProperty:MPMediaItemPropertyArtist]; 
    NSLog(@"%@ by %@", title, artist); 
} 

Utilisez MPMediaQuery et MPMediaPredicate pour créer votre propre coutume et des ensembles de résultats plus complexes de chansons et de vidéos.

Questions connexes