mainBundle からビデオ アセットにアクセスできないという問題がありました。XCode 7 と Swift 2.0 を使用しています。非常に単純なテストアプリを作成しました。
var objects = [String]()
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let fm = NSFileManager.defaultManager()
let path = NSBundle.mainBundle().resourcePath!
let items = try! fm.contentsOfDirectoryAtPath(path)
for item in items {
print ("item = \(item)")
objects.append(item)
}
}
}
私のアプリには 4 つのメディア アセットがあります。i) testVideo.m4v ii) benbeijing.mov iii) TestVideoCopy.m4v と iv) benbeijing2.mov です。
プログラムを実行すると、次の出力が得られます。
item = Base.lproj
item = benbeijing.mov
item = benbeijing2.mov
item = Frameworks
item = Info.plist
item = mainBundleTests
item = PkgInfo
つまり、ビデオ メディア アイテムのうち 2 つがリストされていません。
mainBundle フォルダー内のタイトル、サフィックス、場所をいじってみましたが、これらのアイテムが見つからない理由を一生理解できません。どんな助けでも大歓迎です。