เล่นไฟล์เสียงจากไดเร็กทอรีสินทรัพย์
ฉันมีรหัสต่อไปนี้: AssetFileDescriptor afd = getAssets().openFd("AudioFile.mp3"); player = new MediaPlayer(); player.setDataSource(afd.getFileDescriptor()); player.prepare(); player.start(); ปัญหาคือเมื่อฉันเรียกใช้โค้ดนี้มันจะเริ่มเล่นไฟล์เสียงทั้งหมดในไดเร็กทอรีสินทรัพย์ตามลำดับตัวอักษรแทนที่จะเล่นไฟล์เสียงที่ฉันร้องขอ ผมทำอะไรผิดหรือเปล่า? มีวิธีที่ดีกว่าในการเล่นไฟล์เสียงจากไดเรกทอรีเนื้อหาหรือไม่ คำถามติดตามผล: มีความแตกต่างระหว่างการเก็บไฟล์เสียงในไดเร็กทอรีสินทรัพย์และเก็บไว้ในไดเร็กทอรี res / raw หรือไม่ นอกจากข้อเท็จจริงที่ว่าพวกเขาไม่ได้รับรหัสหากอยู่ในไดเรกทอรีเนื้อหา หากฉันย้ายไฟล์เสียงไปยังโฟลเดอร์ res / raw แสดงว่าฉันมีปัญหากับการนำMediaPlayers กลับมาใช้ใหม่เนื่องจากไม่มีพารามิเตอร์ id สำหรับsetDataSource(). ฉันไม่พบแนวทางที่ดีในการจัดการปัญหาประเภทนี้