このコードはとてもクールです!それを試してみてください。ユーザーに.007というフォルダーを作成し、yahoo.mp3というmp3を保存します。
権限が正しく設定されている場合は、Androidデバイスでも実行されます。
フォルダを作成してmp3を保存すると、フォルダをループしてファイルパスとファイル名を取得します。
私の質問は次のとおりです。Androidでどのようにアクセスしてサウンドを再生しますか?あなたがそれをテストするかどうか見ることができるようにそれはデスクトップで動作しますが、ドロイドでは動作しません。なぜ何かアイデアはありますか?
import flash.filesystem.*;
var urlString:String = "http://YourWebsite.com/YourSound.mp3";
var urlReq:URLRequest = new URLRequest(urlString);
var urlStream:URLStream = new URLStream();
var fileData:ByteArray = new ByteArray();
urlStream.addEventListener(Event.COMPLETE, loaded);
urlStream.load(urlReq);
function loaded(event:Event):void
{
urlStream.readBytes(fileData, 0, urlStream.bytesAvailable);
writeAirFile();
}
function writeAirFile():void
{
var file:File = File.userDirectory.resolvePath(".007/Yahoo.mp3");
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.WRITE);
fileStream.writeBytes(fileData, 0, fileData.length);
fileStream.close();
trace("The file is written.");
var desktop:File = File.userDirectory.resolvePath(".0");
var files:Array = desktop.getDirectoryListing();
for (var i:uint = 0; i < files.length; i++)
{
trace(files[i].nativePath);// gets the path of the files
trace(files[i].name);// gets the name
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
var lastPosition:Number = 0;
mySound.load(new URLRequest(files[0].nativePath));
myChannel = mySound.play();
}
}