2016-10-14 13 views
0

私が持っているオーディオファイルのパスを取得しようとするとエラーが発生します。バンドルURLを取得しようとするとエラーが発生しました

Thread 1: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0) 

すべてのヘルプ:コンソールで

let path = Bundle.main.path(forResource: "SaveALife", ofType: "mp3")! 

は、私はこれを受けますか?ありがとう。

+0

あなたのバンドルで見つからないような音です。これが実際にそのターゲットの一部であることを二重に確認して確認しましたか?また、資本化の権利はありますか?デバイスは大文字と小文字を区別 – Rob

+0

'Bundle.main.urlを試してください(forResource:" SaveALife "、withExtension:" mp3 ")' –

+0

[プロジェクト固有のパスからリソースURLを取得]の可能性があります(http://stackoverflow.com/questions/33591305/get- resource-url-from-project-specific-path) –

答えて

0

私は@Robと一緒に行く予定です。リソース名のスペルが間違っているか、ファイルがバンドルに存在していない必要があります。 そして、 "!"あなたは文字列パスを取得する必要がありますが、ファイルは存在しません。または、スペルの不一致によりファイルがバンドルに見つからないため、リターンパスはnilになり、 "!"それはクラッシュを引き起こすゼロをアンラップしようとします。

解決策は、 "!"

let path = Bundle.main.path(forResource: "SaveALife", ofType: "mp3") 

さもないと、以下のようにあなたは間違いなく使用したい場合は、「!」、あなたは正しいリソースパスを与え、リソースバンドルに存在しなければならないことを確認している必要があります。

希望します。

ハッピーコーディング...

1

SaveALife.mp3がバンドルに含まれていることを確認してください。また、ファイルをドラッグアンドドロップするときは、コピーバンドルのリソースを確認してください。

関連する問題